㈠ 單片機行列式鍵盤掃描原理
單片機行列式鍵盤掃描原理如下:
1、行線P10~P13為輸出線,列線P14~P17為輸入線。一開始單片機將行線(P10~P13)全部輸出低電平,此時讀入列線數據,若列線全為高電平則沒有鍵按下,當列線有出現低電平時調用延時程序以此來去除按鍵抖動。
2、延時完成後再判斷是否有低電平,如果此時讀入列線數據還是有低電平,則說明確實有鍵按下。最後一步確定鍵值。當判斷確實有鍵按下之後,行線輪流輸出低電平,根據讀入列線的數據可以確定鍵值。
3、單片機將P10輸出為低電平,其它P11~P13輸出高電平,此時讀取列線的數據全為高電平,說明沒有在第一行有鍵按下;其次,單片機將P11輸出低電平,其它P10、P12、P13仍為高電平。
4、此時再來讀取列線數據,發現列線讀到的數據有低電平,數值為1011(0x0B),如果我們的鍵盤布局已經確定,那麼0x0B就代表S5的值了。轉到S5鍵功能處理子程序就可以達到目的。
(1)單片機按鍵的原理擴展閱讀
單片機學習方法
1、基礎理論知識學習
基礎理論知識包括模擬電路、數字電路和C語言知識。。在學習單片機之前,覺得模擬電路和數字電路基礎不好的話,不要急著學習單片機,應該先回顧所學過的模擬電路和數字電路知識,為學習單片機加強基礎。
2、單片機實踐
准備一台電腦、一塊單片機開發板、一套視頻教程、一本單片機教材和一本C語言教材。電腦是用來編寫和編譯程序,並將程序代碼下載到單片機上;開發板來運行單片機程序,驗證實際效果。
㈡ 為51單片機設計一個上拉輸入和下拉輸入的按鍵電路並分析其工作原理
按鍵一般是上拉,單片機的IO通過電阻上拉高電平,按鍵正常高電平當按鍵按下短路,把IO變成低電平,單片機檢測到低電平表示有按鍵按下,按鍵下拉一般是把單片機IO通電阻接到GND,按鍵正常是低電平,當按鍵按下把IO拉高,單片機檢測到高電平表示有按鍵按下。