一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于SEP4020微處理器的動(dòng)作控制MP3的設(shè)計(jì)

jf_pJlTbmA9 ? 來(lái)源:網(wǎng)絡(luò) ? 作者:網(wǎng)絡(luò) ? 2023-11-03 18:05 ? 次閱讀

引言

動(dòng)作識(shí)別是一個(gè)很熱門的話題。蘋果公司繼推出具有轟動(dòng)效應(yīng)的多點(diǎn)觸控技術(shù)后又籌備申請(qǐng)自己的動(dòng)作識(shí)別專利。動(dòng)作的識(shí)別簡(jiǎn)單的說(shuō)就是利用加速度傳感器,檢測(cè)在空間上的速度變化,通過(guò)算法,提取動(dòng)作。動(dòng)作識(shí)別在很多方面都有應(yīng)用,比如Wii、手機(jī)感應(yīng)游戲、四槳飛行器等,但是目前很少甚至沒(méi)有將其用在MP3控制上的。當(dāng)今的電子產(chǎn)品的一大潮流就是用動(dòng)作控制。試想一下一個(gè)沒(méi)有任何觸摸、機(jī)械按鍵的MP3,只要你前后左右的晃動(dòng)就能進(jìn)行所有最基本的控制操作,既靈動(dòng)又時(shí)尚,這應(yīng)當(dāng)是一種全新的操作體驗(yàn)。本文將探討如何設(shè)計(jì)這種通過(guò)動(dòng)作來(lái)進(jìn)行正??刂频腗P3。

1硬件平臺(tái)

1.1SEP4020嵌入式處理器

本文所述驅(qū)動(dòng)程序基于SEP4020嵌入式微處理器。SEP4020是由東南大學(xué)國(guó)家專用集成電路系統(tǒng)工程技術(shù)研究中心設(shè)計(jì)的一款處理器,采用0.18μm標(biāo)準(zhǔn)CMOS的工藝設(shè)計(jì),內(nèi)嵌ASIXCORE(32位RISC內(nèi)核,兼容ARM720T,帶8kB指令數(shù)據(jù)Cache和全功能MMU)。SEP4020芯片中集成各種功能,包括:

8/16位SRAM/NORFALSH接口,16位SDRAM接口
硬件NANDFLASH控制器,支持NANDFLASH自啟動(dòng),支持軟件/硬件ECC校驗(yàn)
10M/100M自適應(yīng)以太網(wǎng)MAC,支持RMII接口
64kByte高速片上SRAM
USBl.1Device,全速12Mb/s
支持I2S音頻接口
支持MMC/SD卡
LCD控制器,支持640×480×16位TFT彩屏和STN黑白、灰度屏
RTC,支持日歷功能/WatchDog,支持后備電源
10通道TIMER,支持捕獲、外部時(shí)鐘驅(qū)動(dòng)和MATCHOUT
4通道PWM,支持高速GPIO
4通道UART,均支持紅外
2通道SSI,支持SPI和Microwire協(xié)議
2通道SmartCard接口,兼容IS07816協(xié)議
支持最多97個(gè)GPIO,14個(gè)外部中斷
支持鏈表DMA傳輸和外部DMA傳輸
片上DPLL,支持多種功耗模式:IDLE、SLOW、NORMALSLEEP

1.2MC9S08QG8

本文中的動(dòng)作捕捉判斷部分由MC9S08QG8來(lái)控制完成。MC9S08QG8是Freescale公司的一款單片機(jī),它的性能如下:

8通道、10位模數(shù)轉(zhuǎn)換器
3個(gè)通訊接口:SCI、SPI、IIC
4k或8k可重編程FLASH存儲(chǔ)器
內(nèi)置在線仿真器(ICE)

1.3MMA7620

動(dòng)作控制MP3中動(dòng)作的感應(yīng)是由MMA7620完成的。MMA7620是Freescale公司的一款三向加速度傳感器,它的性能如下:

3軸加速度感應(yīng)和輸出,可同時(shí)測(cè)量三個(gè)坐標(biāo)軸(x、y、z)的值并由三個(gè)通道輸出
4種靈敏度可供選擇
有休眠模式

2動(dòng)作控制MP3的設(shè)計(jì)

2.1動(dòng)作捕捉

一個(gè)動(dòng)作從開(kāi)始到結(jié)束一定會(huì)有加速度的產(chǎn)生,所以可以通過(guò)檢測(cè)伴隨著動(dòng)作產(chǎn)生的加速度的大小和方向來(lái)判斷動(dòng)作。要測(cè)量加速度的大小就需要一個(gè)加速度傳感器,將所得到的加速度以模擬量的形式表示,然后將傳感器所得到的模擬量通過(guò)一個(gè)AD轉(zhuǎn)換模塊轉(zhuǎn)換成數(shù)字信號(hào)以方便后續(xù)計(jì)算。但是查找資料發(fā)現(xiàn),如果單方面的使用一個(gè)AD變換器將從加速度傳感器中得到的電壓信號(hào)轉(zhuǎn)換成為數(shù)字信號(hào)并要求達(dá)到期望的精度將導(dǎo)致成本的大幅度提高,然而現(xiàn)有很多的單片機(jī)中已經(jīng)集成了AD轉(zhuǎn)換模塊,并且整個(gè)單片機(jī)的價(jià)格要低于單買單個(gè)三通道AD轉(zhuǎn)換芯片。更為可觀的是還可以利用單片機(jī)本身的處理功能對(duì)AD轉(zhuǎn)換所得到的數(shù)字信號(hào)進(jìn)行處理,預(yù)判動(dòng)作。而且單片機(jī)中集成了很多的通信協(xié)議,簡(jiǎn)單而健壯。綜合以上考慮,如果選用單片機(jī)代替AD轉(zhuǎn)換模塊就可以減輕核心板的負(fù)擔(dān)和整個(gè)項(xiàng)目的開(kāi)發(fā)難度。

加速度傳感器可以選擇使用Freescale公司的MMA7620三軸加速度傳感器。單片機(jī)可以選擇使用Freescale公司的MC9S08QG8單片機(jī),它集成的八通道9bitAD轉(zhuǎn)換模塊正好和MMA7620的三通道輸出相匹配,體積也很小,適用于便攜設(shè)備。



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ā)更加的方便。

2.3MP3控制

Linux操作系統(tǒng)作為平臺(tái),其良好的系統(tǒng)可定制、可移植性使得其在嵌入式領(lǐng)域占有重要的地位。Linux有很多好的進(jìn)程通信機(jī)制,如內(nèi)存共享、管道、多線程、信號(hào)等,這里選擇信號(hào)作為控制通信的橋梁。利用Linux內(nèi)部完整的串口驅(qū)動(dòng)程序可以很輕松地通過(guò)在串口的軟中斷接收程序中發(fā)射信號(hào)給指定的程序,也就是播放器程序,然后播放器程序接收并判斷信號(hào)類型,給相應(yīng)控制全局變量賦與相應(yīng)的控制值,使得介入控制變得可能??刂剖褂玫氖遣シ牌髯詭У臋C(jī)制,使得更加地穩(wěn)定可靠。使用Madplay作為MP3播放軟件,其默認(rèn)的控制是通過(guò)終端鍵盤來(lái)實(shí)現(xiàn)的。在設(shè)計(jì)時(shí)為了達(dá)到用動(dòng)作產(chǎn)生的信號(hào)量來(lái)控制播放,同時(shí)不去大量修改Madplay的程序源碼,可以通過(guò)截?cái)嗖シ牌髋c鍵盤的聯(lián)系,與串口連接上,這樣就可以基本不用修改上層的機(jī)制就能夠控制整個(gè)播放器的動(dòng)作。

具體系統(tǒng)移植和需要的源代碼軟件包詳見(jiàn)www.armfans.net

2.4MP3播放

MC9S08QG8與SEP4020之間通過(guò)串口來(lái)進(jìn)行通信。

基本的串口操作原則是先保存串口原始的參數(shù),然后再設(shè)置程序所需要的參數(shù),程序結(jié)束后恢復(fù)現(xiàn)場(chǎng)。串口一般操作如下:

串口操作需要的頭文件

串口軟中斷設(shè)置,填充SIGIO結(jié)構(gòu)體,分配相應(yīng)中斷函數(shù):

在操作系統(tǒng)中加入自動(dòng)播放腳本,使得系統(tǒng)在開(kāi)機(jī)時(shí)完成搜索MP3文件,建立播放列表,啟動(dòng)Madplay播放器等操作。腳本代碼如下:

動(dòng)作發(fā)生時(shí)MC9S08QG8向SEP4020發(fā)送一個(gè)動(dòng)作信號(hào),然后SEP4020中的Linux內(nèi)核就會(huì)發(fā)送一個(gè)SIGIO(串口信號(hào))給各個(gè)用戶進(jìn)程。Madplay生程捕捉該信號(hào),并且讀取串口上的消息,用以判斷動(dòng)作的形式。在Madplay程序中需要加入兩個(gè)模塊。第一個(gè)模塊用于讀取串口上的消息,具體實(shí)現(xiàn)方法是打開(kāi)并讀取串口設(shè)備文件/dev/ttySl來(lái)獲取消息,然后按照設(shè)定會(huì)從設(shè)備上讀到4種串口信號(hào),對(duì)應(yīng)4個(gè)ASCII字符“L,R,U,D”分別對(duì)應(yīng)四種不同的動(dòng)作;第二個(gè)模塊是響應(yīng)信號(hào)的處理函數(shù),一旦Linux內(nèi)核接收到SIGIO串口信號(hào),Madplay進(jìn)程就進(jìn)入軟中斷讀?。痙ev/ttySl上的串口消息。甫一判斷出動(dòng)作,Madplay就用kill函數(shù)向本進(jìn)程發(fā)送相應(yīng)的信號(hào)來(lái)控制播放。

3總結(jié)

本文介紹了針對(duì)SEP4020處理器等硬件在Linux操作系統(tǒng)下的動(dòng)作控制MP3的設(shè)計(jì)流程,為這種控制方式的MP3設(shè)計(jì)提供了一個(gè)范例。以下是一些改進(jìn)的建議:作為手持式設(shè)備,動(dòng)作控制MP3對(duì)于能耗的要求比較高,所以設(shè)計(jì)時(shí)必須考慮多使用一些低功耗的器件替代高功耗的器件。動(dòng)作控制的MP3在運(yùn)動(dòng)中是受限制的,MP3的判斷會(huì)受到比較大的干擾。所以如果動(dòng)作采樣方法和動(dòng)作判斷算法難以有很大的改進(jìn),為方便繼續(xù)使用應(yīng)當(dāng)考慮給MP3加上其他的控制方式,暫時(shí)取代動(dòng)作控制。

審核編輯 黃宇
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    17734

    瀏覽量

    358577
  • MP3
    MP3
    +關(guān)注

    關(guān)注

    8

    文章

    494

    瀏覽量

    74495
  • 微處理器
    +關(guān)注

    關(guān)注

    11

    文章

    2358

    瀏覽量

    83651
收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    將基于PC的MP3播放軟件移植到ADSP-21262 SHARC處理器

    電子發(fā)燒友網(wǎng)站提供《將基于PC的MP3播放軟件移植到ADSP-21262 SHARC處理器上.pdf》資料免費(fèi)下載
    發(fā)表于 01-03 14:54 ?0次下載
    將基于PC的<b class='flag-5'>MP3</b>播放<b class='flag-5'>器</b>軟件移植到ADSP-21262 SHARC<b class='flag-5'>處理器</b>上

    光耦知識(shí)分享 | 探討光耦在微處理器及相關(guān)電路中創(chuàng)新應(yīng)用與實(shí)踐

    微處理器(MCU)是一種集成電路芯片,用于執(zhí)行計(jì)算機(jī)程序指令和處理數(shù)據(jù)。它是計(jì)算機(jī)系統(tǒng)的核心部件,負(fù)責(zé)執(zhí)行各種計(jì)算、邏輯和控制任務(wù)。微處理器在各種電子設(shè)備中都有廣泛的應(yīng)用,包括計(jì)算機(jī)、
    的頭像 發(fā)表于 11-05 09:00 ?451次閱讀
    光耦知識(shí)分享 | 探討光耦在<b class='flag-5'>微處理器</b>及相關(guān)電路中創(chuàng)新應(yīng)用與實(shí)踐

    TLC5940單線控制–消除集成LED驅(qū)動(dòng)微處理器控制

    電子發(fā)燒友網(wǎng)站提供《TLC5940單線控制–消除集成LED驅(qū)動(dòng)微處理器控制.pdf》資料免費(fèi)下載
    發(fā)表于 10-12 10:26 ?3次下載
    TLC5940單線<b class='flag-5'>控制</b>–消除集成LED驅(qū)動(dòng)<b class='flag-5'>器</b>的<b class='flag-5'>微處理器</b><b class='flag-5'>控制</b>

    TLC5916單線控制–消除LED驅(qū)動(dòng)微處理器控制

    電子發(fā)燒友網(wǎng)站提供《TLC5916單線控制–消除LED驅(qū)動(dòng)微處理器控制.pdf》資料免費(fèi)下載
    發(fā)表于 10-11 09:11 ?0次下載
    TLC5916單線<b class='flag-5'>控制</b>–消除LED驅(qū)動(dòng)<b class='flag-5'>器</b>的<b class='flag-5'>微處理器</b><b class='flag-5'>控制</b>

    微處理器的執(zhí)行單元是什么

    微處理器的執(zhí)行單元(Execution Unit,簡(jiǎn)稱EU)是微處理器中負(fù)責(zé)執(zhí)行指令的核心部分,它集成了多種功能單元,共同協(xié)作完成算術(shù)運(yùn)算、邏輯運(yùn)算以及指令的譯碼和執(zhí)行等任務(wù)。
    的頭像 發(fā)表于 10-05 15:19 ?1130次閱讀

    微處理器執(zhí)行指令的基本過(guò)程

    微處理器,作為現(xiàn)代計(jì)算機(jī)的核心部件,負(fù)責(zé)執(zhí)行存儲(chǔ)在內(nèi)存中的指令,完成各種計(jì)算和控制任務(wù)。指令的執(zhí)行過(guò)程不僅體現(xiàn)了微處理器的設(shè)計(jì)思想和架構(gòu)特點(diǎn),還直接影響到計(jì)算機(jī)的性能和效率。
    的頭像 發(fā)表于 10-05 15:07 ?1600次閱讀

    微處理器中寄存的作用

    微處理器中的寄存是計(jì)算機(jī)體系結(jié)構(gòu)中的核心組成部分,它們扮演著至關(guān)重要的角色。寄存是一種高速的存儲(chǔ)單元,用于暫時(shí)存儲(chǔ)數(shù)據(jù)、指令和地址等信息,以便微處理器能夠快速地訪問(wèn)和
    的頭像 發(fā)表于 10-05 15:07 ?1044次閱讀

    微處理器的指令集有哪些

    微處理器的指令集是微處理器設(shè)計(jì)和功能實(shí)現(xiàn)的基礎(chǔ),它決定了微處理器能夠執(zhí)行哪些操作以及這些操作如何被組織和執(zhí)行。隨著計(jì)算機(jī)技術(shù)的不斷發(fā)展,微處理器的指令集也在不斷更新和擴(kuò)展。
    的頭像 發(fā)表于 10-05 14:58 ?636次閱讀

    微處理器與CPU的關(guān)系

    微處理器(Microprocessor)與CPU(Central Processing Unit,中央處理器)之間的關(guān)系緊密且復(fù)雜,它們既相互關(guān)聯(lián)又有所區(qū)別。
    的頭像 發(fā)表于 10-05 14:57 ?2356次閱讀

    簡(jiǎn)述微處理器的發(fā)展歷史

    微處理器的發(fā)展歷史是一部充滿創(chuàng)新與突破的技術(shù)演進(jìn)史,它見(jiàn)證了計(jì)算機(jī)技術(shù)的飛速發(fā)展和人類社會(huì)的巨大變革。以下是對(duì)微處理器發(fā)展歷史的詳細(xì)回顧,內(nèi)容將涵蓋其關(guān)鍵節(jié)點(diǎn)、重要里程碑以及技術(shù)演進(jìn)趨勢(shì)。
    的頭像 發(fā)表于 08-22 14:22 ?5265次閱讀

    微處理器如何控制計(jì)算機(jī)系統(tǒng)

    微處理器,作為計(jì)算機(jī)系統(tǒng)的核心部件,承擔(dān)著控制整個(gè)計(jì)算機(jī)系統(tǒng)運(yùn)行的重要任務(wù)。它不僅是計(jì)算機(jī)的運(yùn)算中心,還是控制中心,負(fù)責(zé)執(zhí)行程序指令、處理數(shù)據(jù)以及協(xié)調(diào)計(jì)算機(jī)各部件之間的工作。以下將詳細(xì)
    的頭像 發(fā)表于 08-22 14:21 ?824次閱讀

    影響微處理器性能的因素

    影響微處理器性能的因素是多方面的,這些因素共同決定了微處理器處理數(shù)據(jù)、執(zhí)行指令以及協(xié)調(diào)系統(tǒng)各部件工作時(shí)的效率和能力。
    的頭像 發(fā)表于 08-22 12:31 ?1789次閱讀

    嵌入式系統(tǒng)中常用的五種微處理器類型

    本文介紹了嵌入式系統(tǒng)中常用的五種微處理器類型:微處理器單元(MPU)、微控制器(MCU)、數(shù)字信號(hào)處理器(DSP)、現(xiàn)場(chǎng)可編程邏輯門陣列(FPGA)和單片機(jī)(SBC)。文章詳細(xì)闡述了每
    的頭像 發(fā)表于 07-25 09:29 ?2365次閱讀

    意法半導(dǎo)體推出工業(yè)級(jí)64位微處理器STM32MP2系列

    在全球工業(yè)自動(dòng)化與智能制造的迅猛浪潮中,微處理器(MPU)的核心地位日益凸顯,它不僅扮演著智能控制系統(tǒng)核心大腦的角色,還在性能飛躍、能效優(yōu)化、安全加固及智能化轉(zhuǎn)型等方面展現(xiàn)出強(qiáng)大的發(fā)展?jié)摿ΑR夥ò雽?dǎo)體最新推出的工業(yè)級(jí)64位微處理器
    的頭像 發(fā)表于 07-22 15:18 ?1801次閱讀

    國(guó)產(chǎn)高性能先進(jìn)微處理器產(chǎn)業(yè)的推動(dòng)者

    微處理器
    jf_10805031
    發(fā)布于 :2024年06月19日 09:36:37