AU7842實(shí)現(xiàn)車載MP3播放器 - 全文
AU7842是MVSILICON公司設(shè)計的一款集成了微控制器、MP3/WMA解碼器、USB主機(jī)控制器、SD/MMC卡控制器、16 bit音頻解碼器和一個紅外線解碼器的MP3/WMV音頻解碼芯片。本文介紹用STC12C561624 AD通過I2C總線控制AU7842芯片,運(yùn)用軟件對寄存器的讀寫操作,實(shí)現(xiàn)多種音效的MP3播放。
1 I2C總線技術(shù)及AU7842芯片原理
1.1 I2C協(xié)議
I2C總線作為同步串行數(shù)據(jù)輸出總線,由一條串行數(shù)據(jù)線(SDA)和一條串行時鐘線(SCL)組成。它是一個真正的多主機(jī)總線,如果2個或更多主機(jī)同時初始化數(shù)據(jù)傳輸可以通過沖突檢測和仲裁,防止數(shù)據(jù)被破壞。每個連接到總線的器件都可以通過唯一的地址和一直存在的簡單的主機(jī)/從機(jī)關(guān)系軟件設(shè)定地址;主機(jī)可以作為主機(jī)發(fā)送器或主機(jī)接收器[1]。
1.2 AU7842芯片原理
AU7842芯片是將在存儲器中以數(shù)字信號形式存儲的音樂解碼成可以播放的模擬信號。它可以解碼MP3和WMA兩種格式的音頻信號。工作原理如圖1所示。開機(jī)后,單片機(jī)循環(huán)檢測解碼芯片周圍電路的動作。當(dāng)檢測到芯片外圍有存儲設(shè)備接入,單片機(jī)控制芯片直接訪問存儲器里的內(nèi)容,讀取數(shù)據(jù)送入MP3/WMA解碼器,解碼得到的數(shù)字信號通過數(shù)模轉(zhuǎn)換器轉(zhuǎn)換成模擬信號,經(jīng)模擬音頻放大和低通濾波,就可以聽到音樂[2]。
?
2 硬件電路
2.1 電路設(shè)計
根據(jù)車載MP3播放器的特點(diǎn)選STC12C5624 AD系列單片機(jī)。該單片機(jī)是***宏晶公司推出的51增強(qiáng)型單片機(jī),其具有低功耗,計算速度快等特點(diǎn)。當(dāng)關(guān)閉MP3播放器時,單片機(jī)進(jìn)入低功耗休眠狀態(tài),單片機(jī)切斷所有外圍模塊的供電。播放器需要工作時,通過外部中斷喚醒單片機(jī)工作,這樣最大限度地減少功耗[3]。其計算速度是普通單片機(jī)的8~12倍。播放器電路圖如圖2所示。
?
2.2 外圍硬件模塊
本文以STC12C5624AD單片機(jī)為核心,來控制其他模塊的工作。硬件模塊框圖如圖3示。
?
(1)電源模塊:完成對整個MP3播放器的供電。電源模塊的電壓輸入端是發(fā)電機(jī)或蓄電池,電壓經(jīng)過開關(guān)型集成穩(wěn)壓電路(LM2575/LM2576),得到的輸出電壓穩(wěn)定且紋波小[4]。
(2)LCD模塊:顯示MP3播放時的曲目序號、播放的時間、文件的格式以及播放模式。
(3)按鍵模塊:結(jié)合軟件可以實(shí)現(xiàn)控制MP3播放器的工作,如瀏覽播放、順序播放、隨機(jī)播放以及不同播放音效之間的切換等。
(4)MP3模塊:讀取存儲設(shè)備(SD卡/U盤)中的音頻文件(MP3/WMA),通過數(shù)模轉(zhuǎn)換將數(shù)字信號解碼成模擬信號。
(5)音效模塊:音效模塊提供音效處理功能。來自MP3模塊的音頻信號經(jīng)過音效處理,能夠以爵士、搖滾、古典、流行等多種音效播放音樂,帶給聽眾很好的聽覺感受。
(6)其他:包括USB接口和SD接口等。
3 軟件設(shè)計
MP3播放器受控于按鍵模塊,單片機(jī)循環(huán)檢測按鍵模塊按鍵的動作,并通過軟件對相關(guān)的寄存器進(jìn)行讀寫操作,實(shí)現(xiàn)MP3播放器相應(yīng)的功能。
3.1存儲設(shè)備讀取及切換
單片機(jī)循環(huán)檢測芯片外圍電路電平的變化,判斷當(dāng)前是否有存儲設(shè)備插入,是否須進(jìn)行存儲設(shè)備之間的切換。通過軟件改變相應(yīng)標(biāo)志位的值,實(shí)現(xiàn)存儲設(shè)備的讀取或存儲設(shè)備的切換。讀取流程如圖4所示。
?
MP3處理模塊子程序:
if(mp3_start_flag==1) /*初次插入設(shè)備*/
{ ……
mp3_flag=1;
/*AU7842啟動標(biāo)志位置位,開始響應(yīng)*/
currentchannel=0x01;
if(Current_PlayDev==1) /*檢測到USB接口有存儲
設(shè)備接入*/
{ ……
Play_BreakPoint_USB(1);
/*讀取USB存儲設(shè)備中的數(shù)據(jù) */
}
else if(Current_PlayDev==2)
/*檢測到SD接口有存儲設(shè)備接入*/
{ ……
Play_BreakPoint_SD(1); /*讀取SD卡中的數(shù)據(jù)*/
}
} /* */
if((Dev_Status!=0)&&(Current_DevStatus!=Dev_Status)&&(Current_DevStatus==DEV_USB_SD))
/*后設(shè)備的啟動播放*/
{ ……
if(Current_PlayDev==DEV_USB)
/*正在播放的USB存儲器*/
{ DEV_Change_Flag=1; /*切換標(biāo)志位置位*/
uart_putc(0x55);
uart_putc(0x00);
uart_putc(0xFF);
uart_putc(0x15);
uart_putc(0xEA);
……
Play_BreakPoint_SD(1);
/*切換到從SD卡播放*/
}
else if(Current_PlayDev==
DEV_SD) /*正在播放的是SD卡*/
{ DEV_Change_Flag=1; /*切換標(biāo)志位置位*/
uart_putc(0x55);
uart_putc(0x00);
uart_putc(0xFF);
uart_putc(0x1B);
uart_putc(0xE4);
……
Play_BreakPoint_USB(1);
/*切換到從USB存儲器播放*/
}
}
3.2掉電記憶功能
為滿足使用的要求,車載MP3播放器應(yīng)具有掉電記憶功能。掉電記憶功能可實(shí)現(xiàn)MP3播放器在掉電或關(guān)機(jī)后,上次各種設(shè)定值(如音量、音效、播放模式等)不會因斷電而復(fù)位,在下一次開機(jī)時不需重新設(shè)定,可以直接調(diào)用上次設(shè)定值。記憶流程如圖5所示。
?
掉電記憶子程序:
void Save_Data(void) /*定義掉電記憶函數(shù)*/
{ Wirte_EEPROM(0x06db,vol_val);
/*記憶掉電前音量設(shè)定值*/
Wirte_EEPROM(0x06dc,bass_val);
/*記憶掉電前低音設(shè)定值*/
Wirte_EEPROM(0x06dd,tre_val);
/*記憶掉電前高音設(shè)定值*/
Wirte_EEPROM(0x06de,loud_val);
/*記憶掉電前低音設(shè)定值*/
Wirte_EEPROM(0x0700,Save_USB_Song1);
/*記憶掉電前USB曲目順序號*/
… …
Wirte_EEPROM(0x0703,Save_USB_Min1);
/*記憶掉電前USB中正在播放曲目的播放時間*/
… …
Wirte_EEPROM(0x0707,Save_SD_Song1);
/*記憶掉電前SD中正在播放的曲目順序號*/
… …
Wirte_EEPROM(0x070a,Save_SD_Min1);}
/*記憶掉電前USB中正在播放曲目的播放時間*/
本文設(shè)計的車載MP3播放器,在MP3音頻文件存儲設(shè)備方面有較大的突破,新型大容量存儲設(shè)備(SD卡等)取代了傳統(tǒng)卡帶存儲,并能夠以多種音效播放。系統(tǒng)操作簡便, MP3播放性能良好。
- 第 1 頁:AU7842實(shí)現(xiàn)車載MP3播放器
- 第 2 頁:軟件設(shè)計
- 第 3 頁:掉電記憶功能
本文導(dǎo)航
非常好我支持^.^
(2) 100%
不好我反對
(0) 0%
相關(guān)閱讀:
- [電子說] 使用MC34063設(shè)計的mp3播放器充電器 2023-10-06
- [電子說] 基于CW32的MP3播放器設(shè)計 2023-09-06
- [電子說] 用于MP3播放器塢站的D類、2.1聲道音頻放大器參考設(shè)計 2023-06-12
- [電子說] 如何構(gòu)建一個簡單而強(qiáng)大的MP3播放器 2023-01-25
- [電子說] 如何使用CATALEX的Mp3播放器 2022-05-13
- [今日頭條] 游泳也有音樂相伴,韶音OpenSwim運(yùn)動MP3播放器全新上市 2021-07-15
- [電子說] 游泳也有音樂相伴,韶音OpenSwim運(yùn)動MP3播放器全新上市 2021-07-12
- [電子說] 使用Arduino和DFPlayer迷你MP3播放器模塊制作帶有LCD的MP3播放器 2020-12-07
( 發(fā)表人:小蘭 )