當(dāng)前位置:首頁(yè)->方案設(shè)計(jì) |
|
單片機(jī)的按鍵觸發(fā)設(shè)計(jì)原理圖解析 |
|
|
文章來(lái)源:永阜康科技 更新時(shí)間:2020/8/28 10:47:00 |
在線咨詢: |
|
學(xué)習(xí)單片機(jī)的時(shí)候想必大家都接觸過(guò)按鍵,按鍵是一個(gè)人機(jī)交互的接口設(shè)備,在剛開始接觸的時(shí)候 簡(jiǎn)單也是 直接的辦法就是將按鍵直接接到一個(gè) I/O 口上,然后檢測(cè) I/O 上的電平變化,假設(shè)按鍵另一端接在 GND 上,則一旦檢測(cè)到低電平就認(rèn)為是按鍵觸發(fā)了(此處假設(shè)已經(jīng)進(jìn)行了去抖,軟件去抖也好,硬件去抖也好),乍一看,no problem!而且還是 very good!其實(shí)這對(duì)于初學(xué)者而言確實(shí)是入門的不二選擇,但對(duì)大佬而言就是錯(cuò)誤的設(shè)計(jì)思想。
問(wèn)題出在去檢測(cè) I/O 口這個(gè)過(guò)程,CPU 必須每隔一段時(shí)間檢測(cè),一般用定時(shí)器去實(shí)現(xiàn),間隔時(shí)間太長(zhǎng)了達(dá)不到實(shí)時(shí)的性能,時(shí)間太短了有浪費(fèi) CPU 資源,因?yàn)樵诤芏鄨?chǎng)合按鍵處于觸發(fā)的時(shí)間段時(shí)相當(dāng)少的,比如學(xué)校的自動(dòng)圈存機(jī),一般情況下時(shí)沒人用的,那就意味著 CPU 每間隔時(shí)間去查看 I/O 是非常不合理的,只有當(dāng)按鍵按下采取查看,這才是 合理的方式。
這樣就必須引入外部中斷的設(shè)計(jì)方案,一個(gè)按鍵的設(shè)計(jì)原理圖如下:
![](/uploadfile/20200828/20200828104608331.png)
如果有兩個(gè)甚至多個(gè)按鍵,那如何弄了,很簡(jiǎn)單,使用或門來(lái)解決這個(gè)問(wèn)題。電路圖如下:
![](/uploadfile/20200828/20200828104620845.png)
|
|
|
|
|
|
|
|
![](images/btn_detail_lt.jpg) |
您可能對(duì)以下產(chǎn)品感興趣 |
![](images/btn_detail_rt.jpg) |
|
![](images/pro_detail_bg.gif) |
產(chǎn)品型號(hào) |
功能介紹 |
兼容型號(hào) |
封裝形式 |
工作電壓 |
備注 |
CS83702 |
PO at 10% THD+N, VIN = 3.7V
RL = 4 Ω 10.1W(D MODE NCN OFF)
或PO at 10% THD+N, VIN = 3.7V
RL = 2Ω+22µH Ω 18W(D MODE NCN OFF)
|
CS83705 |
EQA-16 |
2.7V-5.5V |
擴(kuò)頻模式,靜音功能,三種防破音模式,AB/D切換,內(nèi)置升壓,18W單聲道音頻功放 |
|
|
|
|
|
|