久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: 51單片機電子抽獎系統源程序+Proteus仿真電路 [打印本頁]

作者: 云封何處    時間: 2020-7-12 10:43
標題: 51單片機電子抽獎系統源程序+Proteus仿真電路
(二)設計要求
1.隨機產生抽獎號碼。
2.可以隨時啟動和停止抽獎
3.實時顯示抽獎結果

(三)設計方法
   本設計由三部分組成:CPU處理模塊,按鍵抽獎控制模塊,抽獎信息顯示模塊。其中CPU處理模塊控制所有的電路,當抽獎啟動鍵按下后,CPU識別到按鍵按下,開始持續產生隨機數(抽獎號碼),當抽獎停止鍵按下后,CPU識別到按鍵按下,立刻停止隨機數的產生,并在顯示模塊顯示出當前隨機數(抽獎號碼)。

二 硬件設計
(一)硬件設計方案
   本設計使用AT89C51芯片作為主芯片,使用兩個獨立按鍵作為抽獎的啟動鍵和停止鍵,以及四位共陰數碼管作為抽獎號碼的顯示模塊。硬件設計結構簡單可靠,不需要額外的電路部分節省了制造生產成本。

仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


(三)按鍵電路設計
   本設計按鍵部分使用兩個獨立按鍵,一個作為抽獎的啟動鍵,一端與接芯片P1.0口相接,一端與地線相接。一個作為抽獎的停止鍵,一端與接芯片的P1.4口相接,一端與地線相接。按鍵按下即可送出低電平信號。如圖三所示。
圖三(按鍵電路)

(四)數碼管顯示部分
   本設計的顯示部分采用7SEG-MPX4-CC,即四位共陰極數碼管,該數碼管剛好可以滿足稍復雜的4位抽獎號,既確保了有足夠的抽獎號數量同時又方便記錄和查看。數碼管的A,B,C,D,E,F,G,DP分別與芯片的P2.0至P2.7相連,以控制數碼管所顯示的內容,而數碼管的1,2,3,4分別與芯片的P3.0至P3.3相連,用于控制數碼管所顯示數字的位置。如圖四所示。


   程序開始后,進入while循環等待按鍵K1的按下,待K1按下后定時器開始計時,將TL0,TH0的值分別賦給sum1和sum2,sum1和sum2進行除以10取余10和直接取余10后得到不同的個位數,再以此為數組下標分別從數組led[ ]中取數碼管的數值顯示,在條件循環while(counter==1)里循環等待按鍵K2的按下,若K2按下,則跳出while(counter==1)循環,停止隨機數的產生,將當前隨機數一直顯示在數碼管上,完成一次抽獎。


(二)各部分代碼分析
1.主函數
void main()
{
        TMOD=0x01;
        TH0=0x00;
        TL0=0x00;
        EA=1;
        ET0=1;
        TR0=1;
        key();                        
}
主函數,設定了定時器的工作方式,定時器初值,調用了key函數。
2.按鍵邏輯函數
void key()
{
                 while(1)
        {
                        if(k1==0)
                        {
                        counter=1;
                        while(counter==1)
                        {         
                        sum1=TL0;
                        sum2=TH0;
                        display();
                        delay(35);
                        TR0=1;
                        if(k2==0)
                        {break;}
                        }        
                        }
                if(k2==0)
                {

                        P2=0x00;
                        P3=0x00;
                        sum1=TL0;
                        sum2=TH0;
                        TR0=0;
                        if(k1==0)
                        {break;}
                }
                display();                 
        }                        
}
按鍵函數中設定了按鍵控制隨機數的產生和顯示邏輯,只有K1按下后才會產生隨機數,K2按下后會停止并顯示當前隨機數。
3.顯示函數
void display()
{
        P2=led[sum1%10];
        P3=0xfe;
        delay(2);
        P3=0xff;

        P2=led[sum1/10%10];
        P3=0xfd;
        delay(2);
        P3=0xff;

        P2=led[sum2%10];
        P3=0xfb;
        delay(2);
        P3=0xff;

        P2=led[sum2/10%10];
        P3=0xf7;
        delay(2);
        P3=0xff;
        }
顯示函數通過對sum1和sum2的運算得到個位數,并以此為下標在數組內找到對應數字從P3口送出。

全部資料51hei下載地址(Proteus仿真+源程序):
基于51單片機的電子抽獎.zip (64.41 KB, 下載次數: 52)

作者: 云封何處    時間: 2020-7-12 14:31
第一次發,謝謝審核小哥




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 亚洲精品一二三 | 欧美一区二区三区在线观看视频 | 精品国产乱码久久久久久丨区2区 | 成人三级在线播放 | 国产视频一区二区在线观看 | 成人欧美一区二区三区在线播放 | 国产线视频精品免费观看视频 | 免费国产视频 | 国产精品视频一 | 国产精品九九 | 日日夜夜精品免费视频 | 亚洲免费在线 | 九九免费视频 | 国产91久久精品一区二区 | 免费av毛片 | 日韩一区二区在线观看视频 | 国产一区二区不卡 | 亚洲精品1区 | 男女那个视频 | 久久久久免费精品国产 | 污视频在线免费观看 | 欧美天堂 | 中文字幕国产 | 97精品超碰一区二区三区 | 久久99国产精品久久99果冻传媒 | 国产区久久 | 日韩在线不卡 | 古装三级在线播放 | 久久久国产一区二区三区 | 国产成人精品a视频 | 在线观看av网站永久 | 高清国产午夜精品久久久久久 | 中文字幕在线第一页 | 欧美看片 | 国产免费一区二区 | 中文字幕亚洲精品 | 亚洲成av | 久久精品手机视频 | 久久不卡 | 成人av一区 | 草逼网站 |