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

標題: 我的單片機獨立式鍵盤包含程序代碼原理圖 [打印本頁]

作者: 吹夢到西洲    時間: 2022-7-5 15:05
標題: 我的單片機獨立式鍵盤包含程序代碼原理圖
使用AT89S52單片機,設計一個具有8個按鍵的獨立式鍵盤,每個按鍵對應一個發光二極管。功能要求:無鍵按下時,鍵盤輸出全為“1”,發光二極管全部熄滅;有鍵按下時,其所對應發光二極管點亮。
獨立式鍵盤電路組成由單片機最小系統;
8個按鍵電路;8個LED電路。
單片機I/O口引腳分配8個按鍵接P0口;按鍵一端接地;另一端接P0口引腳,并通過上拉電阻接+5V。
8個LED接P1口,LED采用共陽極接法。
獨立式鍵盤電路設計時,每個按鍵的一端與P0口的一個引腳相連,另一端接地。
無鍵按下時,P0的8個I/O口均通過電阻接高電平,信息為“1” ,鍵盤輸出全為“1”發光二極管全部熄滅。
有鍵按下,將使對應的I/O口通過該鍵接地,信息為“0” ,對應發光二極管點亮。
CPU可以通過檢測P0的8個I/O口線哪個是“0”就可以識別是否有鍵按下,并能識別出是哪一個鍵按下。
代碼如下:

獨立式鍵盤功能實現分析
判斷是否有按鍵按下
while(x==0xff)                    //循環判斷是否有鍵按下
{
     x=P0;      //讀鍵盤狀態
}
delay10ms();    //延時10ms去抖動
x=P0;        //再次讀鍵盤狀態
if(x==0xff) continue;//如果無鍵按下則認為是按
   //鍵抖動,重新掃描根據鍵值點亮對應的發光二極管
switch(~x)                  
{
  case 0x01:P1=0xfe; break;//點亮第一個發光二極管
  case 0x02:P1=0xfd; break;//點亮第二個發光二極管
  case 0x04:P1=0xfb;break;//點亮第三個發光二極管
  case 0x08:P1=0xf7; break;//點亮第四個發光二極管
  case 0x10:P1=0xef; break;//點亮第五個發光二極管
  case 0x20:P1=0xdf; break;//點亮第六個發光二極管
  case 0x40:P1=0xbf; break;//點亮第七個發光二極管
  case 0x80:P1=0x7f; break;//點亮第八個發光二極管
   default:break;
}
}
}
程序要判斷是否有2個或2個以上的鍵盤同時按下,以免鍵盤分析錯誤。
給每個不同的功能模塊用不同的ID號標識,這樣,每按下一次按鍵,ID 的值是不相同的,所以單片機就很容易識別不同功能的身份了。 D1到D4發光二極管在每個時刻的閃爍的時間是受按鍵來控制,我們給D1到D4閃爍的時段,定義出不同的ID號,只要每次按下按鍵時,分別給出不同的ID號我們就能夠完成上面的任務了。

2.png (250.58 KB, 下載次數: 133)

2.png





歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 久久精品一区二 | 欧美一区中文字幕 | 国产精品一区二区在线 | 精品日韩一区 | 欧美极品视频在线观看 | 精品一区二区久久久久久久网精 | 成人在线网 | 一区二区三区欧美在线观看 | 午夜精品久久久久久久久久久久久 | 精品久久久久久久久久久久久 | 亚洲性人人天天夜夜摸 | 爱爱视频在线观看 | 欧美 日韩 国产 成人 在线 | 能免费看的av | 欧美成人一区二区三区 | 91精品国产乱码久久久久久久久 | 国产一区二区三区四区hd | 9999久久| 91在线视频免费观看 | 九九精品在线 | 日韩精品一区二区三区中文在线 | 久久久资源 | 免费一看一级毛片 | 一级毛片观看 | 国内精品视频在线观看 | 黑人久久 | 亚洲一区二区三区高清 | 欧美一区二不卡视频 | 九色网址 | 成人精品国产一区二区4080 | a在线视频 | www..com18午夜观看 | 91 视频网站 | 蜜桃五月天| 久久久这里只有17精品 | 中文字字幕一区二区三区四区五区 | 国产精品乱码一二三区的特点 | 国产不卡一区在线观看 | 午夜精品久久久久久不卡欧美一级 | 成人h电影在线观看 | 国产精品视频导航 |