女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于SEP4020微處理器的動作控制MP3的設計

jf_pJlTbmA9 ? 來源:網絡 ? 作者:網絡 ? 2023-11-03 18:05 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

引言

動作識別是一個很熱門的話題。蘋果公司繼推出具有轟動效應的多點觸控技術后又籌備申請自己的動作識別專利。動作的識別簡單的說就是利用加速度傳感器,檢測在空間上的速度變化,通過算法,提取動作。動作識別在很多方面都有應用,比如Wii、手機感應游戲、四槳飛行器等,但是目前很少甚至沒有將其用在MP3控制上的。當今的電子產品的一大潮流就是用動作控制。試想一下一個沒有任何觸摸、機械按鍵的MP3,只要你前后左右的晃動就能進行所有最基本的控制操作,既靈動又時尚,這應當是一種全新的操作體驗。本文將探討如何設計這種通過動作來進行正常控制的MP3。

1硬件平臺

1.1SEP4020嵌入式處理器

本文所述驅動程序基于SEP4020嵌入式微處理器。SEP4020是由東南大學國家專用集成電路系統工程技術研究中心設計的一款處理器,采用0.18μm標準CMOS的工藝設計,內嵌ASIXCORE(32位RISC內核,兼容ARM720T,帶8kB指令數據Cache和全功能MMU)。SEP4020芯片中集成各種功能,包括:

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

1.2MC9S08QG8

本文中的動作捕捉判斷部分由MC9S08QG8來控制完成。MC9S08QG8是Freescale公司的一款單片機,它的性能如下:

8通道、10位模數轉換器
3個通訊接口:SCI、SPI、IIC
4k或8k可重編程FLASH存儲器
內置在線仿真器(ICE)

1.3MMA7620

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

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

2動作控制MP3的設計

2.1動作捕捉

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

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



PTA3:輸出;接三向加速度傳感器的Sleep引腳用于使傳感器處于休眠狀態從而降低功耗和鎖定,避免運動時的干擾。
PTTB0:輸入;作為串口接收腳用于接收從核心板傳來的命令。
PTFBl:輸出;作為串口發送腳用于向核心板發送由加速度傳感器所測的經過單片機處理后所得到的動作信息。
PTB6、PTB7:輸出;接加速度傳感器的gselect引腳從而控制加速度傳感器的靈敏度。

2.2動作判斷

利用Freescale公司的FreeMASTER軟件,可以很方便地進行程序在線調試,查看程序所有全局變量,具體軟件和使用方法請查詢Frees-cfle管方網站。以下得到的數據為使用FreeMASTER欺件,以時間和AD轉換值為坐標繪圖得到。

每次每個方向采樣20個數據,由于第一個數據的可靠性比較大,所以采用每組數據的第一個數據作為比較依據。經過多次測試,當x方向的數值小于80時為右轉動作,x的方向的數值大于170時為左轉動作,y方向的數值小于70時為向上抬的動作,y方向的數值大于160時為向下壓的動作。雖然以上數據能表示動作,但人的動作時間相對單片機處理分析速度差別還是太大。為了解決這個問題,使單片機和動作同步,可以把前兩次的動作記錄下來,根據前兩次的動作對當前動作進行過濾:如果連續幾個相同的動作,就判斷為一次動作,不相同則切換。動作的切換必然帶有前后動作的變化,記憶之前的動作就可以判斷出有無動作切換。這樣的動作識別方法比較簡單且容易實現,如果要實現更為精確的識別,則需要對算法進一步優化。圖2為右搖時AD轉換器所得到的結果。圖3為前后左右擺動數據。

在判別動作后,通過串口通信協議,發送雙辦約定的動作ID,具體見表l

通過串口協議,核心板也可以對傳感器和單片機進行一定的控制,包括傳感器靈敏度調節,鎖定休眠功能,使得后期的測試開發更加的方便。

2.3MP3控制

Linux操作系統作為平臺,其良好的系統可定制、可移植性使得其在嵌入式領域占有重要的地位。Linux有很多好的進程通信機制,如內存共享、管道、多線程、信號等,這里選擇信號作為控制通信的橋梁。利用Linux內部完整的串口驅動程序可以很輕松地通過在串口的軟中斷接收程序中發射信號給指定的程序,也就是播放器程序,然后播放器程序接收并判斷信號類型,給相應控制全局變量賦與相應的控制值,使得介入控制變得可能。控制使用的是播放器自帶的機制,使得更加地穩定可靠。使用Madplay作為MP3播放軟件,其默認的控制是通過終端鍵盤來實現的。在設計時為了達到用動作產生的信號量來控制播放,同時不去大量修改Madplay的程序源碼,可以通過截斷播放器與鍵盤的聯系,與串口連接上,這樣就可以基本不用修改上層的機制就能夠控制整個播放器的動作。

具體系統移植和需要的源代碼軟件包詳見www.armfans.net

2.4MP3播放

MC9S08QG8與SEP4020之間通過串口來進行通信。

基本的串口操作原則是先保存串口原始的參數,然后再設置程序所需要的參數,程序結束后恢復現場。串口一般操作如下:

串口操作需要的頭文件

串口軟中斷設置,填充SIGIO結構體,分配相應中斷函數:

在操作系統中加入自動播放腳本,使得系統在開機時完成搜索MP3文件,建立播放列表,啟動Madplay播放器等操作。腳本代碼如下:

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

3總結

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

審核編輯 黃宇
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • mcu
    mcu
    +關注

    關注

    146

    文章

    17984

    瀏覽量

    367033
  • MP3
    MP3
    +關注

    關注

    8

    文章

    497

    瀏覽量

    74921
  • 微處理器
    +關注

    關注

    11

    文章

    2383

    瀏覽量

    84190
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

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

    電子發燒友網站提供《將基于PC的MP3播放軟件移植到ADSP-21262 SHARC處理器上.pdf》資料免費下載
    發表于 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>上

    光耦知識分享 | 探討光耦在微處理器及相關電路中創新應用與實踐

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

    TLC5940單線控制–消除集成LED驅動微處理器控制

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

    TLC5916單線控制–消除LED驅動微處理器控制

    電子發燒友網站提供《TLC5916單線控制–消除LED驅動微處理器控制.pdf》資料免費下載
    發表于 10-11 09:11 ?1次下載
    TLC5916單線<b class='flag-5'>控制</b>–消除LED驅動<b class='flag-5'>器</b>的<b class='flag-5'>微處理器</b><b class='flag-5'>控制</b>

    微處理器的執行單元是什么

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

    微處理器執行指令的基本過程

    微處理器,作為現代計算機的核心部件,負責執行存儲在內存中的指令,完成各種計算和控制任務。指令的執行過程不僅體現了微處理器的設計思想和架構特點,還直接影響到計算機的性能和效率。
    的頭像 發表于 10-05 15:07 ?1997次閱讀

    微處理器中寄存的作用

    微處理器中的寄存是計算機體系結構中的核心組成部分,它們扮演著至關重要的角色。寄存是一種高速的存儲單元,用于暫時存儲數據、指令和地址等信息,以便微處理器能夠快速地訪問和
    的頭像 發表于 10-05 15:07 ?1284次閱讀

    微處理器的指令集有哪些

    微處理器的指令集是微處理器設計和功能實現的基礎,它決定了微處理器能夠執行哪些操作以及這些操作如何被組織和執行。隨著計算機技術的不斷發展,微處理器的指令集也在不斷更新和擴展。
    的頭像 發表于 10-05 14:58 ?891次閱讀

    微處理器與CPU的關系

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

    簡述微處理器的發展歷史

    微處理器的發展歷史是一部充滿創新與突破的技術演進史,它見證了計算機技術的飛速發展和人類社會的巨大變革。以下是對微處理器發展歷史的詳細回顧,內容將涵蓋其關鍵節點、重要里程碑以及技術演進趨勢。
    的頭像 發表于 08-22 14:22 ?5884次閱讀

    微處理器如何控制計算機系統

    微處理器,作為計算機系統的核心部件,承擔著控制整個計算機系統運行的重要任務。它不僅是計算機的運算中心,還是控制中心,負責執行程序指令、處理數據以及協調計算機各部件之間的工作。以下將詳細
    的頭像 發表于 08-22 14:21 ?982次閱讀

    影響微處理器性能的因素

    影響微處理器性能的因素是多方面的,這些因素共同決定了微處理器處理數據、執行指令以及協調系統各部件工作時的效率和能力。
    的頭像 發表于 08-22 12:31 ?2096次閱讀

    微處理器的指令集架構介紹

    微處理器的指令集架構(Instruction Set Architecture,ISA)是計算機體系結構中至關重要的部分,它定義了微處理器能夠執行的操作和指令的集合,以及這些指令如何被組織、存儲
    的頭像 發表于 08-22 10:53 ?2445次閱讀

    嵌入式系統中常用的五種微處理器類型

    本文介紹了嵌入式系統中常用的五種微處理器類型:微處理器單元(MPU)、微控制器(MCU)、數字信號處理器(DSP)、現場可編程邏輯門陣列(FPGA)和單片機(SBC)。文章詳細闡述了每
    的頭像 發表于 07-25 09:29 ?2661次閱讀

    意法半導體推出工業級64位微處理器STM32MP2系列

    在全球工業自動化與智能制造的迅猛浪潮中,微處理器(MPU)的核心地位日益凸顯,它不僅扮演著智能控制系統核心大腦的角色,還在性能飛躍、能效優化、安全加固及智能化轉型等方面展現出強大的發展潛力。意法半導體最新推出的工業級64位微處理器
    的頭像 發表于 07-22 15:18 ?2061次閱讀