1)Linux/ARM/單片機入門級按鍵掃描程序設計,分享給將要學習或者正在學習Linux/ARM/單片機開發的同學。
2)內容屬于原創,若轉載,請說明出處。
3)提供相關問題有償答疑和支持。
學習Linux/ARM/單片機的同學都會學習到一個知識點,就是按鍵掃描,本課題基于SigmaStar的平臺SSC375芯片SOC詳細說明如何寫一個按鍵掃描程序,同時也適用于其他廠家SOC,或者是單片機MCU。本課題主要通過3個部分來介紹一個完整軟硬件的設計流程。主要在Linux環境下實現。
代碼架構:3層(用戶層,業務層API,硬件接口層),其中硬件接口層與具體的硬件相關,用戶適當的修改即可用到其他硬件平臺,方便移植。
如下是SSC375的SOC按鍵接口原理圖:用到了PAD_FUART_CTS,PAD_FUART_TX兩個IO口,本程序支持擴展更多IO口的按鍵,本例僅使用到2個IO口控制兩個按鍵
業務層API使用到了典型的狀態機來實現按鍵掃描,支持長按/短按操作:嵌入式軟件工程師必須掌握狀態機
實際運行如下:
完整的源碼:
已經整理好,可以在主頁鏈接下載得到完整的源碼。
?