GOGOGO高清完整国语,GOGOGO在线观看免费观看完整版高清,GOGOGO免费高清完整,GOGOGO高清在线观看免费视频,GOGOGO日本高清国语完整,GOGOGO免费高清完整版

技術熱線: 4007-888-234

利用單個IO口實現多個按鍵輸入

更新時間: 2019-03-26
閱讀量:5570

單片機應用中,經常要用到按鍵輸入,在有較多按鍵輸入的情況下,通常會使用矩陣式掃描方法來完成,例如對于16 個按鍵輸入的場合,會使用4 × 4 矩陣鍵盤,這需要占用較多的I/O口(如8 個),而對于單片機來說,其I/O 口資源非常有限,當I/O 口資源緊缺時,只好選用成本更高的具有更多I/O 口的單片機來使用,本文介紹一種只用一個I/O 口實現多按鍵輸入的方法。對于使用一個I/O 口來實現多按鍵輸入,有個前提條件,就是這個I/O 口具有A/D 轉換功能,只要使不同的鍵按下時,A/D 轉換輸人端的電壓不同,就可識別出所按的鍵,其電路如下圖所示:在無鍵按下時,I/O 口端電壓為電源電壓Vcc,當S1 鍵按下時,I/O 口端電壓最低,是電阻R1 和R2 的分壓,當S2 鍵按下時,I/O 口端電壓變高,是電阻R1 和(R2+R3)的分壓,同理,當S3、S4 按下時,電壓會更高,通過對該I/O 口的A/D 轉換值的大小進行判斷,就可以得知所 按下的哪一個鍵。

           圖中只列出了4 個按鍵的例子,在實際使用中,適當調整電阻值,可使按鍵數增加很多,在8 A/D 轉換中,理論按鍵數可以達到255,單片機最小可識別電壓為(單片機電源為VCC)VCC/255,但考慮到干擾問題,一般建議各按鍵之間保證有0.1V以上的電壓差,按此要求一個I/O口能最大擴展到50個按鍵。



欢迎光临: 江津市| 永善县| 正阳县| 永春县| 抚州市| 杭锦后旗| 清水河县| 蒲江县| 广西| 临清市| 濉溪县| 海原县| 抚远县| 剑河县| 黄陵县| 扬州市| 苏尼特左旗| 慈溪市| 龙岩市| 福泉市| 施甸县| 邵阳县| 贞丰县| 浦江县| 高安市| 舟山市| 望谟县| 隆昌县| 鄄城县| 江源县| 临泽县| 北流市| 高碑店市| 大竹县| 普安县| 阿克| 通化县| 皋兰县| 交城县| 铅山县| 边坝县|