基于ARM的電子畫(huà)筆設(shè)計(jì)
作為電子筆背后的關(guān)鍵技術(shù),筆跡識(shí)別一直是人們研究的重點(diǎn)??傮w上,電子筆按照定位方式的不同可以劃分為四類(lèi):射頻定位型、圖像識(shí)別型、壓感定位型和加速度定位型。射頻定位型電子筆需要在書(shū)寫(xiě)的平面附近或書(shū)寫(xiě)板上放置聲波發(fā)生器,借助發(fā)生器發(fā)出的超聲波完成筆觸的三維定位,精度高但結(jié)構(gòu)和算法復(fù)雜。圖像識(shí)別型電子筆應(yīng)用圖像識(shí)別算法識(shí)別安放在筆頭部分的微型攝像機(jī)掃描的筆跡畫(huà)面,筆跡最接近原跡。壓感型電子筆需要壓感板感受筆尖壓力彎成筆記的復(fù)原。加速度型電子筆應(yīng)用運(yùn)動(dòng)學(xué)算法,通過(guò)對(duì)加速度的運(yùn)算獲得筆尖的運(yùn)動(dòng)軌跡,結(jié)合筆跡分析算法即可將筆跡復(fù)現(xiàn)出來(lái),因而結(jié)構(gòu)簡(jiǎn)單,易于實(shí)現(xiàn)。但因受傳感器解析度的制約,市面上一直沒(méi)有此類(lèi)的成熟產(chǎn)品。
本方案采用飛思卡爾半導(dǎo)體的MMA7260Q三軸低量級(jí)加速度傳感器實(shí)現(xiàn)了筆觸的空間定位。無(wú)線USB器件為電子筆提供了即插即用的連接。本電子筆使用Cypress的2.4GHz射頻SoC CYRF6934作為無(wú)線USB網(wǎng)絡(luò)收發(fā)器件,只要在PC端將Cypress 的Encore2 無(wú)線USB網(wǎng)橋連接到PC機(jī)的USB口,電子筆即可向PC機(jī)進(jìn)行單向的數(shù)據(jù)傳輸。
1 硬件規(guī)劃
在本設(shè)計(jì)中,使用MMA7260Q測(cè)量電子筆X、Y、Z三個(gè)軸方向上的加速度,使得軟件以此實(shí)時(shí)計(jì)算筆尖的位置,進(jìn)而生成筆跡。
微控制器ADuC7022采集到加速度傳感器輸出的信號(hào)后,使用片上ADC完成電壓信號(hào)到加速度數(shù)據(jù)的轉(zhuǎn)換并進(jìn)行信號(hào)的與處理,最后通過(guò)SPI接口發(fā)送到無(wú)線USB接口芯片CYRF6934,將數(shù)據(jù)傳送到PC機(jī)進(jìn)行后處理。
系統(tǒng)使用高能鋰電池供電。為了獲得盡可能長(zhǎng)的電池壽命,所有芯片工作在3.3V電壓,以減少開(kāi)關(guān)損耗;在微控制器檢測(cè)到電子筆處于靜止?fàn)顟B(tài)后,微控制器軟件將使無(wú)線USB接口芯片進(jìn)入睡眠狀態(tài),進(jìn)一步減少功耗。
2 微控制器電路
ADuC7022是ADI公司的新一代基于ARM7TDMI 32bit RISC內(nèi)核的精密模擬微控制器,片上集成了10通道12位的ADC(1MSPS)、電壓比較器、62Kbytes FlashROM和8KbytesSRAM,最高處理能力達(dá)40MIPS。其模擬外設(shè)包括多達(dá)10通道的采樣率為1MSPS、分辨率為12bit的精密模數(shù)轉(zhuǎn)換器(ADC)、一個(gè)溫漂優(yōu)于10ppm/℃的精密帶隙基準(zhǔn)電壓源。其他外設(shè)包括片內(nèi)可編程邏輯陣列 (PLA),同步、異步串行接口等。其片上的PLL電路允許使用頻率較低的外部晶振,以減少系統(tǒng)的EMI。串行接口包括UART,SPI和2個(gè)I2C,用于下載/調(diào)試的JTAG端口,4 個(gè)定時(shí)器, 14個(gè)通用 I/O引腳。CPU時(shí)鐘高達(dá)45MHz,片內(nèi)晶體振蕩器和片內(nèi)PLL。
ADuC7022工作在2.7V~3.6V,在最高工作頻率41.78MHz時(shí)僅消耗40mA電流。此外,ADuC702240腳6mm×6mm LFCSP封裝可以顯著減小電路板尺寸,使其比大多數(shù)單片機(jī)更適合于對(duì)體積和功耗要求較為苛刻的系統(tǒng)。
在本設(shè)計(jì)中,ADuC7022 ADC工作在單端模式,ADC模塊的ADC0~ADC2連接到MMA7260Q三軸加速度輸出引腳,ADC2連接到電池正極,監(jiān)測(cè)輸入電池電壓,在電池電壓降低到接近LDO最低輸入電壓后點(diǎn)亮LED提醒用戶(hù)更換電池。微控制器的P0.0和P0.1腳連接到MMA7260Q的SEL1和SEL2引腳,作為加速度靈敏度的控制信號(hào)。
ADuC7022的串行接口提供了SPI、UART、I2C接口。ADuC7022的I/O口為復(fù)用接口,用戶(hù)通過(guò)設(shè)置SPM模塊的控制寄存器可在GPIO、UART、UART/SPI/I2C和可編程邏輯陣列中做出選擇。本文硬件使用了一個(gè)工作于Master模式的SPI模塊,連接到無(wú)線 USB模塊。微控制器的原理圖如圖1所示。
3 加速度傳感器
MMA7260Q是飛思卡爾半導(dǎo)體推出的單芯片型三軸低量級(jí)加速度傳感器,可以精確地測(cè)量X、Y、Z三個(gè)方向下低量級(jí)的下降、傾斜、位移、定位、撞擊和震動(dòng)誤差。通過(guò)選擇MMA7260Q的靈敏度,可以按1.5g、2g、4g和6g不同量級(jí)(g)的重力加速度靈敏度進(jìn)行設(shè)計(jì)。MA7260Q使用MEMS工藝制造,在6mm×6mm×1.45mm的體積內(nèi)集成了加速度傳感器和低通濾波、溫度補(bǔ)償?shù)刃盘?hào)調(diào)理電路,而且預(yù)置了全量程0g偏置。它的封裝尺寸很小,只需較小的板卡空間即可。此外,MMA7260Q可以運(yùn)行在2.2V~3.6V的低電壓,工作時(shí)僅消耗500?滋A電流,并配置了3μA睡眠模式及1.0ms快速電源響應(yīng),另外還提供快速啟動(dòng)和休眠模式。這些特性極大地延長(zhǎng)了電子筆電池的續(xù)航能力并能為外觀設(shè)計(jì)預(yù)留足夠的空間。
SEL1和SEL2為靈敏度選擇輸入引腳,對(duì)應(yīng)靈敏度的真值表如表1所示。加速度傳感器輸出電壓VOUT為:
其中,VOFFSET為0加速度偏置,ΔV/ΔG為加速度靈敏度,1G為地球重力, θ為傾斜角度。
Xout、Yout和Zout分別為X、Y、Z三個(gè)方向加速度信號(hào)的輸出引腳,輸出電壓與加速度的關(guān)系如(1)式所示。MMA7260Q的0g偏置電壓為1.65V,對(duì)于1.5g的靈敏度,每軸輸出電壓在0.85V~2.45V之間。
加速度傳感器電路如圖2所示。在MMA7260Q的輸出上設(shè)置了RC濾波器,用于濾除內(nèi)部開(kāi)關(guān)濾波電容時(shí)鐘的干擾,提高測(cè)量的精度。
4 無(wú)線USB接口
CYRF6934是Cypress半導(dǎo)體的2.4GHz射頻SoC無(wú)線USB網(wǎng)絡(luò)收發(fā)器件。該無(wú)線收發(fā)器工作在2.4~2.483GHz的 ISM公共頻段內(nèi),突破了27MHz、400MHz以及900MHz眾多系統(tǒng)共有的各種限制,使用戶(hù)能夠在世界范圍內(nèi)推廣使用其解決方案,而無(wú)需受地區(qū)性頻率要求的約束,從而具備了全球通用性、合理的功率規(guī)格以及更高的通信頻寬。借助DSSS技術(shù),CYRF6934可以避免來(lái)自如2.4GHz頻段中 802.11b、藍(lán)牙(Bluetooth)等其他系統(tǒng)的信號(hào)干涉,以及來(lái)自無(wú)繩電話和微波爐的無(wú)線輻射;CYRF6934的工作電壓范圍為 1.8~3.6V,作用有效范圍10米;配置了62.5kbps的數(shù)據(jù)吞吐量和高達(dá)2MHz傳輸頻率的SPI微機(jī)接口與微控制器進(jìn)行通訊,可實(shí)現(xiàn) 62.5kbps速率的雙向或單向RF傳輸,平均延時(shí)小于10ms。在沒(méi)有數(shù)據(jù)傳輸時(shí),CYRF6934可在微控制器的控制下進(jìn)入低功耗模式,降低系統(tǒng)能耗。
無(wú)線USB接口電路如圖3所示。微控制器采集的加速度數(shù)據(jù)在經(jīng)過(guò)預(yù)處理后通過(guò)SPI接口發(fā)送到CYRF6934。CYRF6934對(duì)數(shù)據(jù)進(jìn)行調(diào)制后通過(guò)PCB上的印制天線發(fā)送給PC端的無(wú)線USB網(wǎng)橋。芯片所有VCC上使用0.1uF電容去耦并使用一個(gè)10uF電容作為充放電電容。
5 軟件設(shè)計(jì)
作為底層的硬件驅(qū)動(dòng)程序,軟件需要完成系統(tǒng)初始化、數(shù)據(jù)采集處理和傳送等工作。系統(tǒng)初始化主要包括微處理器的堆棧、隊(duì)列和內(nèi)部控制寄存器的初始化、MMA7260Q加速度靈敏度的選擇和CYRF6934控制寄存器的初始化。匯編語(yǔ)言完成微處理器堆棧、隊(duì)列的初始化并引導(dǎo)系統(tǒng)執(zhí)行C語(yǔ)言中的 main()函數(shù)。C語(yǔ)言程序完成剩余的初始化任務(wù)后開(kāi)始采集數(shù)據(jù)、處理數(shù)據(jù)和發(fā)送數(shù)據(jù)的循環(huán)。
軟件設(shè)計(jì)中除了使用MMA7269Q傳感器的加速器解決方案外,還可
評(píng)論