在最近的十年中,單片機(MCU)發(fā)展非??欤绕潆S著物聯(lián)網(wǎng)(IoT)的應用,單片機技術(shù)越來越受到重視。隨著芯片工藝升級,它已經(jīng)從4位發(fā)展到8位,再到16位發(fā)展到了32位。
隨著歲月的流逝,現(xiàn)在MCU的價格已下降了50%以上,使其成為電子設備的基礎,而不再是傳統(tǒng)的模擬類型電路。如今,基于MCU的整體解決方案比其模擬解決方案便宜得多的情況并不少見。
下面以單片機開發(fā)一個PA2鍵盤解碼方案為例:
在電子方案的設計中,通常使用鍵盤矩陣作為用戶連接產(chǎn)品的一種方式。為了最大程度地減少單片機中使用的引腳數(shù)量,按鍵應盡可能排列成正方形矩陣。
一個示例是在16鍵鍵盤中使用4 X 4矩陣排列。這種布置僅需要8個引腳。如果以2 X 8矩陣排列,則需要10個引腳而不是8個引腳。單片機編程小鍵盤解碼方法具有4個輸入引腳,分別指定為第1行至第4行,以及4個輸出引腳,指定為第1列至第4列。4個輸入端口需要有一個下拉電阻,以確保它們始終處于確定性狀態(tài),無論是登錄“0”還是登錄“1”。
這可以通過在MCU本身中具有內(nèi)部下拉電阻或通過將4個外部電阻分別連接到輸入引腳和接地來實現(xiàn)。
掃描開始時,第1列將打開(邏輯“1”),第2、3和4列將關閉(邏輯“0”)。發(fā)生這種情況時,將掃描輸入端口第1到第4行的狀態(tài)。如果按下鍵7,則第3行的引腳PA2將返回邏輯“1”,其余各行將返回邏輯“0”。
通過使用防彈跳程序作為確認已按下特定鍵的方式,MCU將知道按下了哪個鍵,因此能夠繼續(xù)確定要采取的下一個動作。另外,在關鍵接口的設計中,選擇能夠在一定時間后進入省電模式的MCU也很重要。這樣可以確保用于給MCU供電的電池使用壽命更長。僅在按下鍵時才會喚醒。與處于活動模式時相比,省電模式通常只需消耗一小部分電流。
以上就是英銳恩單片機開發(fā)工程師分享的有關單片機開發(fā)PA2鍵盤解碼的小技巧。英銳恩專注單片機應用方案設計與開發(fā),提供8位單片機、16位單片機、32位單片機、運算放大器和模擬開關。