資料介紹
??一條IO實現(xiàn)兩個按鍵,聽上去確實挺新奇,既然別人能夠實現(xiàn),我想我也應該可以做到,看來得找找實現(xiàn)的方法。我有一個習慣,遇到某些問題的時候,會在睡覺前想解決方法,想著想著就會睡著了,問題的答案有沒有找到則不一定。
??我知道有用一條IO實現(xiàn)多個按鍵的方法,這樣的方法大多是選用的IO支持ADC功能,用電阻分壓后通過讀電壓判斷鍵值。如果IO不支持ADC功能,也不是不行,可以用電容充放電的方法實現(xiàn)ADC,從而用普通IO間接進行測量。(參見我之前關于鍵盤掃描的文章)
??這樣用一條IO實現(xiàn)兩個按鍵給我的第一感覺是可能需要利用到電容充放電原理,于是在半夢半醒之中找到了實現(xiàn)的方法。
??
??先看上圖左邊部分,如果_IO1為雙向IO口,假設單片機程序按以下流程處理,看看會得到什么樣的結果?
??1.MCU_IO1設定為輸出,輸出高電平一段時間,此時電容C1會充電,最后C1上的電壓接近電源電壓。
??2.MCU_IO1設定為輸入,如果J1、J2均不按下,此時MCU_IO1可以理解成一個阻值很大的電阻接地,電容C1上的電荷會通過這個電阻逐漸釋放掉,這樣C1上的電壓會逐漸降低到零。因為C1上的電壓下降需要一個過程,當MCU_IO1設為輸入后馬上讀一下MCU_IO1的狀態(tài),此時會讀到什么結果?顯然是高電平狀態(tài)1。
??3.再將MCU_IO1設定為輸出,輸出低電平一段時間,顯然不管電容C1處于什么狀態(tài),只要MCU_IO1輸出低電平時間足夠長,最后C1上的電壓應該接近零。
??4.再將MCU_IO1設定為輸入,如果J1、J2同樣不按下,MCU_IO1讀到的是低電平狀態(tài)0。
??如果J1按下,再來看看這四步,此時電容C1已經被強制接到電源上,MCU_IO1對其的充放電已經不起作用,在步驟2中MCU_IO1讀到的狀態(tài)依然是1,但在步驟4中MCU_IO1讀到的狀態(tài)就不再是0,而是變?yōu)?。
??如果J2按下,同樣看這四步,此時電容C1被強制接到地,MCU_IO1對其充放電也失去作用,在步驟2中MCU_IO1讀到的狀態(tài)變?yōu)?,但在步驟4中MCU_IO1讀到的狀態(tài)保持為1。
??到這里我想大家應該已經明白了實現(xiàn)方法,根據(jù)此四步中讀到的MCU_IO1狀態(tài),就可以判斷出J1、J2是否按下。
??既然已經找到方法,是不是就萬事大吉了呢?不然,我們還得回過頭去看看此方法是不是足夠可靠。如果J1按下,電容C1直接接到電源上,當MCU_IO1輸出低時,MCU_IO1輸出的低電平直接與電源短路,弄不好就會燒壞MCU_IO1,同理當J2按下時MCU_IO1輸出高也存在同樣的問題。
??還有比這更嚴重的問題,如果用戶同時按下J1和J2,哈!居然是電源和地直接短路,這樣的后果很可能就是整個產品的電源部分一股青煙了事,就別想產品還能不能工作了。
??不用擔心,看一看前面電路圖中的右半部分,在開關J3和J4上分別串聯(lián)了一個220歐的電阻,這個電路不管J3和J4如何按,都不會出現(xiàn)短路的情況,按前面的四個步驟即可判斷出J3和J4有沒有按下,不過如果J3和J4同時按下并不能進行識別判斷。
(mbbeetchina)
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 怎么用一個上位機給兩個單片機下載程序和通信
- 如何實現(xiàn)單片機用一個I/O采集多個按鍵信號?
- 關于單片機晶振旁邊兩個負載電容問題總結資料下載
- STM32串口實現(xiàn)的兩個方案資料下載
- 單片機實例:一個用單色屏做的菜單框架資料下載
- 使用單片機實現(xiàn)LED隔一個亮一個的程序和仿真資料免費下載 8次下載
- Keil 51單片機IO端口實驗的詳細資料說明 18次下載
- 實現(xiàn)兩個單片機雙向通信的實驗資料合集 33次下載
- 使用單片機實現(xiàn)按鍵選播電子音樂的程序和仿真資料免費下載 27次下載
- 61單片機的USB下載線原理與制作資料說明
- 如何使用單片機擴展IO口的詳細資料說明
- 使用51單片機按鍵控制LED亮滅和單個IO翻轉的程序免費下載
- 兩個51單片機實現(xiàn)串口通訊的詳細資料合集免費下載 18次下載
- 用兩個IO口檢測5個按鍵的程序詳細資料免費下載 27次下載
- 51單片機教程之51單片機基礎學習30章課程的資料合集免費下載 41次下載
- 單片機矩陣按鍵的工作原理和組成部分 3341次閱讀
- 兩個單片機之間串口通信的例程 8091次閱讀
- 如何實現(xiàn)基于單片機的鍵盤檢測 2009次閱讀
- 單片機人機交互之矩陣按鍵 2394次閱讀
- 單片機實現(xiàn)按鍵的電路和程序設計資料說明 9819次閱讀
- PIC單片機和AVR單片機IO的操作方法解析 2728次閱讀
- PIC單片機以及51單片機和AVR單片機的IO口操作方法介紹 2052次閱讀
- 51單片機按鍵檢測的實現(xiàn)方法及功能解析 1.6w次閱讀
- 51單片機的ISP下載電路設計 3.2w次閱讀
- 如何利用ADC的特點實現(xiàn)單片機用一個I/O采集多個按鍵信號? 1.8w次閱讀
- 單片機應用系統(tǒng)中如何通過IO實現(xiàn)斷電自關機?通過電路圖給你講解 7179次閱讀
- 單片機程序的作用是什么?如何編寫?如何寫入單片機? 4.9w次閱讀
- 利用到電容充放電原理實現(xiàn)一條IO實現(xiàn)兩個按鍵 8953次閱讀
- 兩個基于單片機的液位控制系統(tǒng)設計介紹 8889次閱讀
- 基于狀態(tài)機的單片機按鍵短按長按功能的實現(xiàn) 1.9w次閱讀
下載排行
本周
- 1人工智能+消費:技術賦能與芯片驅動未來
- 15.25 MB | 4次下載 | 免費
- 2?業(yè)電源&模塊電源產品?冊
- 15.40 MB | 1次下載 | 免費
- 379M15 TO-252三端穩(wěn)壓IC規(guī)格書
- 0.86 MB | 次下載 | 免費
- 4MBRD20150CT TO-252肖特基二極管規(guī)格書
- 0.54 MB | 次下載 | 免費
- 5自動鎖螺絲運動控制系統(tǒng)用戶手冊
- 6.65 MB | 次下載 | 5 積分
- 6奧特光耦產品手冊
- 4.83 MB | 次下載 | 免費
- 7SMA系列10MHz~40GHz同軸檢波器
- 559.60 KB | 次下載 | 免費
- 8CD7388CZ:7W×4 四通道音頻功率放大電路技術手冊
- 0.39 MB | 次下載 | 10 積分
本月
- 1元宇宙深度解析—未來的未來-風口還是泡沫
- 6.40 MB | 241次下載 | 免費
- 2元宇宙底層硬件系列報告
- 13.42 MB | 184次下載 | 免費
- 32022 年展望報告 – 半導體產業(yè)
- 1.43 MB | 136次下載 | 免費
- 4晶振與濾波器應用電路《電子工程師必備:元器件應用寶典》
- 1.57 MB | 90次下載 | 免費
- 5汽車電子行業(yè)深度解析:智能化與電動化方興未艾
- 6.47 MB | 71次下載 | 免費
- 6中國DPU行業(yè)白皮書
- 23.80 MB | 37次下載 | 免費
- 7晶科鑫代理線-微盟電子2021年度產品目錄選型手冊
- 14.75 MB | 27次下載 | 免費
- 8SJK晶振產品目錄-簡化版-2022
- 13.77 MB | 20次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935134次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191425次下載 | 10 積分
- 5十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183352次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81602次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73822次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App






創(chuàng)作
發(fā)文章
發(fā)帖
提問
發(fā)資料
發(fā)視頻
上傳資料賺積分
評論