2.4 GHz無線鼠標鍵盤接收器的設計
2.2 USB設備枚舉過程
USB的枚舉過程是USB規(guī)范中一個非常重要的“動作”或“過程”。這個動作將會讓PC知道何種USB設備剮接上以及其所含的各種信息。若要完成一個設備 枚舉的過程,需要執(zhí)行諸多的數(shù)據(jù)交換以及設備請求。圖4描述了一個HID設備的枚舉過程,由于本設計是針對鼠標鍵盤復合設備的接收器,所以在取完第一次報 告描述符后還需要再取另一個設備的報告描述符。本文引用地址:http://m.butianyuan.cn/article/187697.htm
3 固件設計
固件設計使用HT-ICE仿真器,它提供了多種實時仿真功能,包括多功能跟蹤、單步執(zhí)行以及設定斷點功能。圖5描述了USB無線鼠標鍵盤 接收器的程序執(zhí)行流程。在程序中,鍵盤使用端點1,配置為輸入;鼠標使用端點2,配置為輸入。都采用USB通信協(xié)議中的中斷傳輸。采用“輪詢”的工作機 制,輪詢間隔為8 ms。
接收器上電后,完成系統(tǒng)的初始化,包括MCU的初始化和收發(fā)器的接收模式配置過程。然后系統(tǒng)進入接收數(shù)據(jù)包的狀態(tài)中,一旦收到數(shù)據(jù)包就通過中斷的形式通知 MCU有數(shù)據(jù)包到來,MCU就會通過I/O口模擬SPI總線通信過程從nRF24L01中將接收到的數(shù)據(jù)讀出,然后將數(shù)據(jù)寫到相
應的USB端點FIFO中。主機通過查詢的方式讀取各端點的數(shù)據(jù)信息,然后按照USB規(guī)范定義的鼠標和鍵盤的協(xié)議產生相應的動作(如鼠標的移動和按鍵的值)。
無線收發(fā)器的初始化過程:1)配置本機地址和要接收的數(shù)據(jù)包大??;2)配置CONFIG寄存器,使之進入接收模式,把CE置高;3)130μs 后,nRF24L01進入監(jiān)視狀態(tài),等待數(shù)據(jù)包的到來;4)當接收到正確的數(shù)據(jù)包(正確的地址和CRC校驗碼),nRF24L01自動把字頭、地址和 CRC校驗位移去;5)nRF24L01通過把STATUS寄存器的RX_DR置位(STATUS一般引起微控制器中斷)通知微控制器;6)微控制器把數(shù) 據(jù)從nRF24L01讀出;7)所有數(shù)據(jù)讀取完畢后,可以清除STATUS寄存器。nRF24L01可以進入4種主要模式之一。
4 結束語
本系統(tǒng)基于8位單片機Hr82K95E和nRF24L01型射頻收發(fā)器設計了一個用于無線鼠標鍵盤復合設備的USB無線接收器。該接收器 能夠實現(xiàn)鼠標鍵盤復合設備的全部功能,具有成本低、體積小、通信方向不受制約和通信距離較遠等優(yōu)點,使其替代藍牙及紅外遙控設備成為可能,實踐表明,該接 收器具有廣泛的應用前景。
評論