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

標(biāo)題: 51單片機(jī)4路搶答器的原理及C語言源程序 [打印本頁]

作者: xueren    時間: 2013-7-19 02:22
標(biāo)題: 51單片機(jī)4路搶答器的原理及C語言源程序
 單片機(jī),當(dāng)然不只是51,51單片機(jī)是一種稍通用型的單片機(jī),通過I/O口的定義,可以實現(xiàn)多種控制功能。
搶答器,原理:如果為四路,當(dāng)其中任一路控下后,其他幾路即失效,結(jié)果為第一次按下的,可以用數(shù)碼管或是LED燈來顯示,當(dāng)然這里只是講原理與編程,具體可以根據(jù)搶答器路數(shù)及顯示方式更改程序即可。
源程序如下:
  1. <div class="blockcode"><blockquote>/*用的是AT89S52開發(fā)板,獨(dú)立按鍵接口如下,就用這四路。先按下的用LED燈來顯示,對應(yīng)第一個到第四個LED燈,其他再按無效,如果想再次實現(xiàn),可手動復(fù)位單片機(jī)*/
  2. #include <reg52.h>
  3. sbit key1=P3^0;     //定義按鍵,根據(jù)需要連接線路,如獨(dú)立按鍵(4路)
  4. sbit key2=P3^1;
  5. sbit key3=P3^2;
  6. sbit key4=P3^3;
  7. /*void delay(unsigned int cnt)       //如果有抖動或是干擾,可以用個小延時去抖
  8. {
  9. while(--cnt);
  10. }*/
  11. void main()
  12. {
  13. bit Flag;
  14. while(!Flag)
  15. {
  16. if(!key1)
  17. {
  18. P1=0xFE;
  19. Flag=1;
  20. }               
  21. /*LED燈來顯示按下的鍵,第一個燈,我這里是8位LED燈,即:0111 1111,反過來讀數(shù)為:1111 1110      即:0xFE *,P1口對應(yīng)LED燈,給P1賦值*/
  22.    else if(!key2)
  23. {
  24. P1=0xFD;
  25. Flag=1;
  26. }         
  27. //第二個燈亮   
  28. else if(!key3)
  29. {P1=0xFB;Flag=1;}        
  30. //第三個燈亮   
  31. else if(!key4)
  32. {
  33. P1=0xF7;
  34. Flag=1;
  35. }      
  36. //第四個燈亮,意味著第四路首先按下
  37. }
  38. while(Flag);         //可以再加個I/O,控制Flag,這樣初始化,繼續(xù)搶答,還可以設(shè)計按下時的聲音
  39. }
復(fù)制代碼

作者: linnyshow    時間: 2019-11-19 13:59
程序不齊。




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 久草网免费 | 亚洲精品自拍视频 | 一区二区在线 | 亚洲一区不卡在线 | 免费看黄视频网站 | 日韩综合在线 | 精品久久久久一区二区国产 | 古装三级在线播放 | 97超碰免费 | 奇米av| 天天天操天天天干 | 欧美性jizz18性欧美 | 国产精品国产a级 | 一区二区在线免费观看 | 在线免费看黄 | 国产精品二区三区 | 中文字幕一区二区三区日韩精品 | 亚洲视频免费观看 | 欧美在线一级 | 久久久亚洲综合 | 国产精品久久久久aaaa九色 | 欧美日韩在线国产 | 91精品在线观看入口 | 午夜a√| 高清成人av | av黄色在线观看 | 亚洲a视频 | 亚洲一区二区三区在线播放 | 成人深夜福利在线观看 | 欧美日韩亚洲国产综合 | 一本岛道一二三不卡区 | jizjizjiz中国护士18| 蜜月va乱码一区二区三区 | 日韩精品一区在线观看 | 伊人免费在线观看高清 | 国产视频精品免费 | 欧美一区二区三区在线 | 欧美一级二级三级视频 | 日本人做爰大片免费观看一老师 | 欧美精品在线一区 | caoporn国产精品免费公开 |