新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > SEP4O2O在Linux下實(shí)現(xiàn)動(dòng)作控制MP3

SEP4O2O在Linux下實(shí)現(xiàn)動(dòng)作控制MP3

作者: 時(shí)間:2011-09-11 來(lái)源:網(wǎng)絡(luò) 收藏
串口軟中斷設(shè)置,填充SIGIO結(jié)構(gòu)體,分配相應(yīng)中斷函數(shù):

本文引用地址:http://m.butianyuan.cn/article/150235.htm

  

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

  

  發(fā)生時(shí)MC9S08QG8向SEP4020發(fā)送一個(gè)信號(hào),然后SEP4020中的內(nèi)核就會(huì)發(fā)送一個(gè)SIGIO(串口信號(hào))給各個(gè)用戶進(jìn)程。Madplay生程捕捉該信號(hào),并且讀取串口上的消息,用以判斷的形式。在Madplay程序中需要加入兩個(gè)模塊。第一個(gè)模塊用于讀取串口上的消息,具體方法是打開并讀取串口設(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ù),一旦內(nèi)核接收到SIGIO串口信號(hào),Madplay進(jìn)程就進(jìn)入軟中斷讀取/dev/ttySl上的串口消息。甫一判斷出動(dòng)作,Madplay就用kill函數(shù)向本進(jìn)程發(fā)送相應(yīng)的信號(hào)來(lái)播放。

  3總結(jié)

  以下是一些改進(jìn)的建議:作為手持式設(shè)備,動(dòng)作對(duì)于能耗的要求比較高,所以設(shè)計(jì)時(shí)必須考慮多使用一些低功耗的器件替代高功耗的器件。動(dòng)作在運(yùn)動(dòng)中是受限制的,MP3的判斷會(huì)受到比較大的干擾。所以如果動(dòng)作采樣方法和動(dòng)作判斷算法難以有很大的改進(jìn),為方便繼續(xù)使用應(yīng)當(dāng)考慮給MP3加上其他的控制方式,暫時(shí)取代動(dòng)作控制。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

上一頁(yè) 1 2 3 下一頁(yè)

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉