2個i/o 口檢測6個按鍵
今天看到了用2個i/o口來檢測6個按鍵的方法,確實很霸道,特傳上來和大家一起分享。
原理圖如下:
分析:首先:io1
,io2
輸出高電平
s1按下,
io2為低電平
s2按下,
io1為低電平
s3按下,
io1,
io2為
0.7v
(1n4148
導通電壓),還是低電平。
現在開始判別其他幾個按鍵了:
1、io1輸出低電平,讀
io2電平
① 如果io2
為低電平,此時應該是
s4或者
s6按下(
s6按下時,
io2為
0.7v
,依舊是低電平)。
② 此時io1
輸出高電平,
io2輸出低電平,讀
io1電平
當s4按下時,
io1為低電平。剩餘的就只能是
s6了。
2、io1
輸出高電平,
io2輸出低電平
讀io1,s5
按下時,
io1為低電平。若
io1依舊為高電平,則是
s6按下了。
按鍵掃瞄程式:
unsigned char scan_key(void)
else
key_io1 = 1;//釋放匯流排
//已經釋放
~~~key_io2 = 1;//釋放匯流排}
return keyval;//返回鍵值
0-無鍵
,1~6-s1~s6鍵}
程式流程圖:
由於演示是動態的,此處無法進行演示。
2個I O 口檢測6個按鍵 Devin 新浪部落格
今天看到了用2個i o口來檢測6個按鍵的方法,確實很霸道,特傳上來和大家一起分享。原理圖如下 分析 首先 io1 io2 輸出高電平 s1按下,io2為低電平 s2按下,io1為低電平 s3按下,io1,io2為 0.7v 1n4148 導通電壓 還是低電平。現在開始判別其他幾個按鍵了 1 io1輸...
乙個I O口控制兩個LED燈
方案1 優點 平時基本沒有功耗 缺點 電路複雜。經本人在pic18f4550測試板上測試,完全沒有問題。方案二 本人沒有測試。優點 電路簡單 缺點 平時還有功耗,二極體vd1一直導通態。微控制器中有的i o口可設定為三種狀態 高電平 低電平和高阻態,利用這一點,就可以用乙個i o口實現對2個led的...
蝙蝠俠6票房過 2億之後的乙個效應
看了今天的北美票房 蝙蝠俠在美國時間 周二 票房過了兩億美元 用五天時間破兩億 又一項世界紀錄誕生了 不過有個有趣的現象.周二當日 蝙蝠俠票房比 周一 了 14.8 這個是很正常的 幾乎所有電影都會如此.但是 這次 其他影片卻一反常態 都出現了 周二高於周一的現象 可見 之前的幾天 大家都去看 蝙蝠...