基于SEP4O2O微處理器的動(dòng)作控制MP3的設(shè)計(jì)
圖l是手持部分的原理圖,包括單片機(jī)和傳感器PTA0、PTAl、PTA2:輸入:分別接三向加速度傳感器的x、y、z端口輸出,讀取加速度傳
感器的x、y、z軸的模擬數(shù)據(jù)。本文引用地址:http://www.ex-cimer.com/article/166741.htm
PTA3:輸出;接三向加速度傳感器的Sleep引腳用于使傳感器處于休眠狀態(tài)從而降低功耗和鎖定,避免運(yùn)動(dòng)時(shí)的干擾。
PTTB0:輸入;作為串口接收腳用于接收從核心板傳來(lái)的命令。
PTFBl:輸出;作為串口發(fā)送腳用于向核心板發(fā)送由加速度傳感器所測(cè)的經(jīng)過(guò)單片機(jī)處理后所得到的動(dòng)作信息。
PTB6、PTB7:輸出;接加速度傳感器的gselect引腳從而控制加速度傳感器的靈敏度。
2.2 動(dòng)作判斷
利用Freescale公司的FreeMASTER軟件,可以很方便地進(jìn)行程序在線調(diào)試,查看程序所有全局變量,具體軟件和使用方法請(qǐng)查詢Frees-cfle管方網(wǎng)站。以下得到的數(shù)據(jù)為使用FreeMASTER欺件,以時(shí)間和AD轉(zhuǎn)換值為坐標(biāo)繪圖得到。
每次每個(gè)方向采樣20個(gè)數(shù)據(jù),由于第一個(gè)數(shù)據(jù)的可靠性比較大,所以采用每組數(shù)據(jù)的第一個(gè)數(shù)據(jù)作為比較依據(jù)。經(jīng)過(guò)多次測(cè)試,當(dāng)x方向的數(shù)值小于80時(shí)為右轉(zhuǎn)動(dòng)作,x的方向的數(shù)值大于170時(shí)為左轉(zhuǎn)動(dòng)作,y方向的數(shù)值小于70時(shí)為向上抬的動(dòng)作,y方向的數(shù)值大于160時(shí)為向下壓的動(dòng)作。雖然以上數(shù)據(jù)能表示動(dòng)作,但人的動(dòng)作時(shí)間相對(duì)單片機(jī)處理分析速度差別還是太大。為了解決這個(gè)問(wèn)題,使單片機(jī)和動(dòng)作同步,可以把前兩次的動(dòng)作記錄下來(lái),根據(jù)前兩次的動(dòng)作對(duì)當(dāng)前動(dòng)作進(jìn)行過(guò)濾:如果連續(xù)幾個(gè)相同的動(dòng)作,就判斷為一次動(dòng)作,不相同則切換。動(dòng)作的切換必然帶有前后動(dòng)作的變化,記憶之前的動(dòng)作就可以判斷出有無(wú)動(dòng)作切換。這樣的動(dòng)作識(shí)別方法比較簡(jiǎn)單且容易實(shí)現(xiàn),如果要實(shí)現(xiàn)更為精確的識(shí)別,則需要對(duì)算法進(jìn)一步優(yōu)化。圖2為右搖時(shí)AD轉(zhuǎn)換器所得到的結(jié)果。圖3為前后左右擺動(dòng)數(shù)據(jù)。
在判別動(dòng)作后,通過(guò)串口通信協(xié)議,發(fā)送雙辦約定的動(dòng)作ID,具體見(jiàn)表l
通過(guò)串口協(xié)議,核心板也可以對(duì)傳感器和單片機(jī)進(jìn)行一定的控制,包括傳感器靈敏度調(diào)節(jié),鎖定休眠功能,使得后期的測(cè)試開(kāi)發(fā)更加的方便。
評(píng)論