滕飛 胡湘娟 陽泳
摘 要:隨著電子技術(shù)的飛速發(fā)展,各類電子芯片在性能不斷提高的同時價格卻在不斷降低,文章將采用STM32F103來制作一款空中鼠標,在方便實用的同時整體成本又比較低廉。目前市面廣泛應(yīng)用的光電鼠標是通過一個發(fā)光二極管發(fā)出光線經(jīng)過桌面、鼠標墊等平面反射后傳到光感應(yīng)器件來分析運動軌跡并傳輸給電腦。它的原理決定它必須要一塊相對平整的反射面才能正常工作,在一些特殊場合使用時將會受到限制。文章介紹的空中鼠標在空中即可實現(xiàn)普通光電鼠標的功能,使用十分方便。
關(guān)鍵詞:STM32;MPU6050;姿態(tài)解算;空中鼠標
1 方案設(shè)計
普通的光電鼠標通過底部的LED燈以一定角度照射在桌面上,在鼠標移動時反射光線通過一塊透鏡傳入傳感器來得到連續(xù)的圖案,然后通過對比前后的圖案變化來分析鼠標的位移來得到鼠標在二維坐標的具體移動數(shù)值,最終將數(shù)據(jù)傳送給電腦。正是由于工作原理的限制,所以在實際使用中光電鼠標在一些特殊的場合使用將受到限制。不同于光電鼠標的位移檢測原理,本設(shè)計的位移檢測是通過MPU6050芯片來檢測空間的對應(yīng)坐標方向的角速度,由于MPU6050是六軸運動處理器件,而電腦鼠標指針的移動是二維平面,所以只用讀取X軸和Z軸的角速度即可。STM32F103芯片讀取對應(yīng)值后通過NRF24l01無線傳輸模塊將數(shù)據(jù)發(fā)送至數(shù)據(jù)接收端,接收端通過USB接口將數(shù)據(jù)發(fā)送至電腦從而實現(xiàn)鼠標的功能。
2 硬件電路設(shè)計
據(jù)本系統(tǒng)的工作原理,硬件部分主要有MPU6050模塊,NRF24l01無線傳輸模塊,STM32F103芯片,鋰電池一塊,按鍵電路,USB串口電路等。
2.1 MPU6050模塊
MPU6050是InvenSense公司的整合性6軸運動處理組件,內(nèi)部自帶3軸陀螺儀和3軸加速度傳感器,自帶有數(shù)字運動處理器硬件加速引擎,大大減少了MCU由于對運動處理計算而帶來的復(fù)雜計算,同時開發(fā)難度也大大降低了,利用InvenSense公司提供的運動處理資料庫,可以十分方便的實現(xiàn)姿態(tài)解算。MPU6050的時鐘設(shè)置、采樣率設(shè)置、傳感器使能都是通過配置相關(guān)寄存器來實現(xiàn),使用方便。時鐘源一般選擇X軸陀螺PLL作為時鐘源,可以得到高精度的時鐘。MPU6050的量程范圍也是可以選擇的,共有四個可選檔位,分別為±250°/S;±500°/S;±1000°/S;±2000°/S;陀螺儀的ADC為16位分辨率,鼠標使用起來較為流暢。MPU6050的超低功耗和4*440.9mm的超小封裝也使發(fā)射端的制作和使用簡便了很多。發(fā)射部分可使用一塊小鋰電池供電,因此可反復(fù)充電使用,同時鋰電池的充電器生活中非常常用,減少了用戶的后續(xù)開支,由于本設(shè)計只用到了X軸和Z軸的角速度值,MPU6050芯片的性能對本設(shè)計來說已經(jīng)綽綽有余。
2.2 NRF24l01無線傳輸模塊
NRF24L01是一款低功耗無線收發(fā)專用芯片,工作頻率高,傳輸速度快,功耗很低,等待模式電流僅為22uA,通過PCB天線即可以實現(xiàn)10m的有效傳輸距離,可以方便的實現(xiàn)發(fā)射和接收。外部電路也較為簡單,而模塊的價格也只有幾塊錢,所以本設(shè)計直接采用了現(xiàn)成的NRF24l01無線傳輸模塊。兩個芯片工作在相同的模式下即可實現(xiàn)相互通信。
3 程序設(shè)計
由于本設(shè)計分為發(fā)射端和接收端兩個部分,所以編程也要分開進行。發(fā)射部分主要包括MPU6050數(shù)據(jù)讀取,按鍵數(shù)據(jù)讀取,數(shù)據(jù)發(fā)送。接收端編程主要為數(shù)據(jù)接收,與PC的USB通訊。因為STM32F103系列芯片都自帶了USB,符合USB2.0規(guī)范,所以通訊十分方便。在調(diào)試時可以使用四軸飛行器的上位機軟件調(diào)試發(fā)射部分的程序,分模塊進行調(diào)試。
4 結(jié)束語
本次基于STM32F103的空中鼠標設(shè)計硬件部分較為簡單,體積較小,節(jié)能穩(wěn)定,發(fā)射部分采用鋰電池供電,可以反復(fù)充電,減少了不必要的開支,接收部分直接通過電腦的USB端口供電,數(shù)據(jù)傳輸和供電共用的是一個USB接口,減少了電腦端口的占用。整體來說,本空中鼠標設(shè)計可以方便的在空中實現(xiàn)鼠標指針的位移控制和左右鍵功能,實現(xiàn)了基本的鼠標功能,可以滿足普通的使用,在一些特殊場合比如戶外,工業(yè)前線等等,具有光電鼠標不具備的優(yōu)勢,對實際應(yīng)用具有一定的意義。同時對于MPU6050和來STM32來說,本實驗僅僅用到了部分功能,仍有很大的改進空間來升級功能和使用體驗。
參考文獻
[1]正點原子.MPU6050六軸傳感器實驗[EB/OL].開源電子網(wǎng),2014(12).
作者簡介:滕飛(1994-),男,湖南常德人,漢族,學(xué)生,在讀本科,所學(xué)專業(yè)為電子信息工程。