基于Cortex-M0的USB密碼鍵盤設計
4 軟件設計
4.1 USB接口程序
Nuvoton公司為NUC120系列CPU提供了所有外設的驅動庫函數(shù),并在USB應用方面提供了大量的例程。
本方案的兩套軟件分別參照Smpl_HID和Smpl_VCOM設計,大大縮短了開發(fā)時間。庫函數(shù)提供的例程如圖3所示。
4.2 鍵盤掃描程序
鍵盤掃描采用定時器0,設置定時器0為每1 ms中斷一次來判斷是否有按鍵。鍵盤掃描程序流程如圖4所示。長按不連續(xù)輸出,同一個按鍵,必須按下、抬起才有效。讀者可以根據(jù)自己系統(tǒng)的實際要求進行修改。鍵盤防抖處理可以根據(jù)自己的鍵盤類型來設置具體的時間(本方案是10ms)。
結語
本方案采用基于ARM cortex-M0內核的NUC120系列微控制器,并且有很大的擴展性,可以方便地連接液晶、語音芯片;由于內核主頻最高可達50 MHz,能夠實現(xiàn)3DES加/解密等對于8位機來說較復雜的運算功能,具有很高的性價比。
DIY機械鍵盤相關社區(qū):機械鍵盤DIY
評論