日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 消費(fèi)電子 > 消費(fèi)電子
[導(dǎo)讀]本文使用AT89C51SND1作為主控制器和MP3解碼器,ISP1362作為USB主機(jī),將U盤(pán)中的MP3文件讀取出來(lái)并進(jìn)行播放,實(shí)現(xiàn)了MP3播放器中解碼單元與存儲(chǔ)單元的分離。

摘  要:本文使用AT89C51SND1作為主控制器和MP3解碼器,ISP1362作為USB主機(jī),將U盤(pán)中的MP3文件讀取出來(lái)并進(jìn)行播放,實(shí)現(xiàn)了MP3播放器中解碼單元與存儲(chǔ)單元的分離。
關(guān)鍵詞:AT89C51SND1C;ISP1362;U盤(pán);MP3播放器

    播放器與存儲(chǔ)器的一體化設(shè)計(jì)對(duì)MP3播放器的便攜性起了關(guān)鍵性的作用,但與此同時(shí),它又帶來(lái)了很多新的問(wèn)題。比如存儲(chǔ)容量固定,如果想裝下更多的歌曲只能去購(gòu)買(mǎi)新的產(chǎn)品,造成了巨大的浪費(fèi)。另一方面,一體化又限制了MP3播放器在其它領(lǐng)域的應(yīng)用,比如汽車(chē)電子等。于是,將存儲(chǔ)器與播放器分離,成為MP3的另一發(fā)展方向,也是開(kāi)發(fā)這款U盤(pán)MP3播放器的意義所在。

主要芯片簡(jiǎn)介
    AT89C51SND1是ATMEL推出的基于8位C51 MCU內(nèi)核的MP3解碼器芯片。它內(nèi)置MP3硬件解碼器,支持48kHz、44.1kHz、32kHz、24kHz、22.05kHz及16kHz采樣頻率,具有重低音、中音、高音均衡控制和重低環(huán)繞聲效果。它可以適應(yīng)市場(chǎng)上不同DAC的可編程音頻輸出接口,兼容PCM和I2S格式。內(nèi)置2304B RAM和64KB Flash程序空間,方便用戶(hù)增加復(fù)雜的功能。并通過(guò)內(nèi)置鎖相環(huán)提供MP3和音頻時(shí)鐘以及USB時(shí)鐘。

   要想讀取U盤(pán),USB主機(jī)控制器必不可少。為了將來(lái)進(jìn)一步升級(jí)系統(tǒng),本文選用了功能強(qiáng)大的USB-OTG芯片ISP1362。ISP1362在單芯片上集成了OTG控制器、高級(jí)主機(jī)控制器和外設(shè)控制器。ISP1362的OTG控制器完全兼容USB2.0以及On-The-Go
Supplement 1. 0協(xié)議,主機(jī)和設(shè)備控制器兼容USB 2. 0協(xié)議,并支持12Mbps的全速傳輸和1.5Mbps的低速傳輸。

圖1  系統(tǒng)框架圖

系統(tǒng)硬件結(jié)構(gòu)
    整個(gè)系統(tǒng)的搭建圍繞AT89C51SND1進(jìn)行,如圖1所示。由于其內(nèi)部具有硬件解碼器,因此電路構(gòu)成并不復(fù)雜。首先由單片機(jī)控制ISP1362,將U盤(pán)中的MP3文件讀取出來(lái),送到硬件解碼器進(jìn)行解碼。解碼之后由數(shù)字音頻接口將數(shù)字信號(hào)傳送至音頻DAC CS4330,轉(zhuǎn)換之后產(chǎn)生音頻信號(hào)。由于DAC輸出的信號(hào)功率有限,在后端又加入了運(yùn)算放大器,經(jīng)過(guò)放大之后的信號(hào)就可以直接輸出給音箱或耳機(jī)等設(shè)備了。

    AT89C51SND1是基于51內(nèi)核的單片機(jī),因此,最小系統(tǒng)結(jié)構(gòu)非常簡(jiǎn)單。除了傳統(tǒng)單片機(jī)的晶振和復(fù)位電路之外,還有PLL濾波電路和USB接口電路,如圖2所示。



 圖2  PLL濾波電路及USB接口電路

    ISP1362是16位總線(xiàn)結(jié)構(gòu),不能直接和8位單片機(jī)接口。因此,將單片機(jī)的P0和P2口一同作為數(shù)據(jù)總線(xiàn)接至ISP1362的16位總線(xiàn)上,將   、、分別接到單片機(jī)的P3.4、P3.7和P3.6,通過(guò)仿真讀寫(xiě)時(shí)序控制它的數(shù)據(jù)讀取等操作。

    除了這些基本的總線(xiàn)連接,ISP1362還需要連接一些特殊的控制引腳:
    A0:用于決定控制器處于命令狀態(tài)還是數(shù)據(jù)狀態(tài):0表示數(shù)據(jù)狀態(tài),1表示命令狀態(tài);

    A1:用于決定控制器工作于主機(jī)還是設(shè)備控制模式:0表示處于主機(jī)控制(HC) 模式;1表示處于設(shè)備控制(DC) 模式。

    接至MCU的P1.5。P1.5=0時(shí)表示處于OTG工作狀態(tài),P1.5=1則表示處于非OTG狀態(tài)。

    INT1_USB、INT2_USB分別接至MCU的INT0和INT1引腳,用以產(chǎn)生中斷。

    ISP1362有兩個(gè)USB端口,分別是OTG端口和主機(jī)端口。因?yàn)镺TG端口包含了主機(jī)功能,所以系統(tǒng)中使用OTG端口來(lái)連接U盤(pán)。根據(jù)USB2.0協(xié)議,USB主機(jī)需要2個(gè)15k降TG端口同時(shí)又可作為設(shè)備端口使用,而設(shè)備是沒(méi)有下拉電阻的。因此ISP1362提供了“軟連接”機(jī)制,通過(guò)內(nèi)部的寄存器來(lái)控制電阻的連接與否。所以在硬件設(shè)計(jì)時(shí)并不需要在外部加下拉電阻。而 為開(kāi)漏輸出,因此加入了一個(gè)10kW的上拉電阻R14_USB。如圖3所示。

圖3  OTG端口電路圖

AT89C51SND1C及ISP1362的初始化
    在開(kāi)始播放MP3文件之前,需要一系列初始化操作。這些操作是通過(guò)設(shè)置AT89C51SND1C及ISP1362內(nèi)部的相關(guān)寄存器來(lái)完成的。

AT89C51SND1C的初始化
    為了正常播放MP3文件,首先要對(duì)主控制器AT89C51SND1C進(jìn)行以下幾方面的設(shè)置。

鎖相環(huán)初始化
    MP3解碼器和音頻輸出接口使用的都是內(nèi)部鎖相環(huán)提供的時(shí)鐘。鎖相環(huán)的初始化是通過(guò)設(shè)置PLLCON、PLLNDIV和PLLNDIV來(lái)完成的。其輸出頻率的計(jì)算公式為:PLLclk=OSCclk×(R+1)/(N+1)。

MP3解碼器初始化
    MP3解碼器的初始化需要對(duì)MP3CON和MP3CLK進(jìn)行設(shè)置。MP3解碼器分缺少數(shù)據(jù)中斷和校驗(yàn)中斷兩類(lèi)中斷,在MP3CON中可以對(duì)其進(jìn)行設(shè)置。簡(jiǎn)單處理可以采用查詢(xún)標(biāo)志位方式,避免使用中斷。MP3解碼器對(duì)時(shí)鐘有一定的要求,MPEG I格式的MP3數(shù)據(jù)要求最低時(shí)鐘為21MHz,MPEG II格式為10.5MHz。該時(shí)鐘計(jì)算公式為:MP3clk=PLLclk/(MPSD4:0+1)。

音頻輸出接口初始化
    得到兩個(gè)聲道串行數(shù)據(jù)前需先對(duì)音頻輸出接口的AUDCON0和AUDCON1中的相關(guān)部分進(jìn)行正確的設(shè)置。配合DAC芯片CS4330,其設(shè)置如下:輸出32位數(shù)據(jù)格式(DSIZ=1),聲道選擇信號(hào)中的高電平為左聲道(POL=1),選擇256·Fs的數(shù)據(jù)速率(HLR=0),選擇MP3解碼器的輸出為數(shù)據(jù)源(SRC=0),18位數(shù)據(jù)右對(duì)齊(JUST4:0=14)。為了聽(tīng)到正常的聲音,還需根據(jù)MP3的采樣率設(shè)置MP3CLK來(lái)得到正確的音頻輸出接口的時(shí)鐘,該時(shí)鐘的計(jì)算公式為:AUDclk=PLLclk/(AUCD4:0+1)。

按鍵初始化
    要實(shí)現(xiàn)播放MP3的人機(jī)交互功能,就需要鍵盤(pán)的支持,AT89C51SND1C專(zhuān)門(mén)提供了4個(gè)中斷的按鍵接口,當(dāng)這些中斷被使能后就可以簡(jiǎn)單地通過(guò)讀取KBSTA得到按鍵的狀態(tài)。按鍵初始化的時(shí)候只需要在KBCON開(kāi)啟相應(yīng)接口的中斷,再開(kāi)啟總中斷的EA即可。

ISP1362的設(shè)置
    為了能正確地從U盤(pán)中讀取MP3文件,首先要對(duì)USB控制芯片ISP1362進(jìn)行以下幾方面的設(shè)置。

數(shù)據(jù)緩沖區(qū)的劃分
    ISP1362內(nèi)部有4KB的數(shù)據(jù)緩沖區(qū),可劃分為4部分以供USB的四種傳輸方式使用。其中同步傳輸為雙緩沖,占用ISTL0和ISTL1,一般二者大小是一樣的。中斷傳輸占用INTL??刂苽鬏敽蛪K傳輸共用ATL。分別通過(guò)HcISTLBufferSize 、HcINTLBufferSize和HcATLBufferSize 來(lái)設(shè)置ISTL、INTL和ATL的大小。

中斷的設(shè)定
    這里的中斷并不是指USB中的中斷傳輸,而是傳統(tǒng)意義上的硬件中斷。如果不使用中斷,則應(yīng)該將其關(guān)閉,具體操作為將HcuPInterruptEnable置0,而 HcInterruptDisable中所有位都置1。

ATL 緩沖的設(shè)定
    控制傳輸是任何USB設(shè)備都有的數(shù)據(jù)傳輸類(lèi)型,而在ISP1362中,它占用的是ATL緩沖區(qū),因此對(duì)ATL 緩沖的設(shè)定是必不可少的。具體的操作是設(shè)置以下幾個(gè)寄存器:HcATLPTDSkipMap、HcATLLastPTD、HcATLBlkSize、HcATLPTDDoneThresholdCount和HcATLPTDDoneThresholdTimeOut。

其它相關(guān)寄存器
    ISP1362還有一些關(guān)于硬件的設(shè)置,比如端口設(shè)定以及過(guò)流保護(hù)等。除此之外,還需要確定一個(gè)幀所發(fā)送的最大數(shù)據(jù)量等信息,這些操作通過(guò)設(shè)定HcHardwareConfiguration和HcFmInterval兩個(gè)寄存器完成。

讀取U盤(pán)
    U盤(pán)在使用USB傳輸時(shí)使用的是塊傳輸方式,操作相對(duì)比較復(fù)雜。除了最基本的USB協(xié)議之外,還需要實(shí)現(xiàn)許多其它相關(guān)協(xié)議,比如Mass Storage、Bulk-Only、SCSI-2、UFI等。但對(duì)USB接口芯片ISP1362而言,需要完成的僅是按照協(xié)議規(guī)定進(jìn)行數(shù)據(jù)的傳送。

相關(guān)描述符和設(shè)置
    U盤(pán)一般使用Mass Storage協(xié)議進(jìn)行通信。然而在使用Mass Storage協(xié)議通信之前,應(yīng)首先關(guān)注傳輸協(xié)議和U盤(pán)的端點(diǎn)描述符。

    Mass Storage中的傳輸協(xié)議常用Bulk_Only,然而在這種傳輸方式下又可分多種指令集,而U盤(pán)常用SCSI指令集。 Bulk_Only的傳輸方式在通信時(shí)應(yīng)首先讀取端點(diǎn)描述符來(lái)獲取Bulk_In和Bulk_Out這兩個(gè)端點(diǎn)號(hào),之后才能進(jìn)行USB的正常通信。

FAT文件系統(tǒng)
    由于現(xiàn)在U盤(pán)的容量普遍較大,對(duì)U盤(pán)的操作往往都是按塊來(lái)進(jìn)行的,其大小一般均為512B。但實(shí)際U盤(pán)上的數(shù)據(jù)是以文件系統(tǒng)的方式來(lái)存儲(chǔ)的,目前U盤(pán)常用的文件系統(tǒng)有FAT16和FAT32。而這兩種文件系統(tǒng)在很多內(nèi)容方面都是相同的,因此,在實(shí)際訪問(wèn)中可以對(duì)其簡(jiǎn)單的區(qū)分,然后分別進(jìn)行不同的操作,就能實(shí)現(xiàn)對(duì)不同文件系統(tǒng)的U盤(pán)進(jìn)行訪問(wèn),提高通用性。

播放MP3文件
    播放一個(gè)MP3文件需要經(jīng)過(guò)以下幾個(gè)環(huán)節(jié):解析U盤(pán)的文件系統(tǒng),獲取MP3文件的信息,從U盤(pán)中讀取指定的MP3文件,將文件中的數(shù)據(jù)送至AT89C51SND1C內(nèi)嵌的MP3解碼器,解碼后的數(shù)據(jù)經(jīng)音頻輸出接口調(diào)整格式后輸出兩個(gè)聲道的串行數(shù)據(jù),再經(jīng)過(guò)DAC芯片CS4330將數(shù)字信號(hào)轉(zhuǎn)換為模擬信號(hào),最后經(jīng)集成運(yùn)放MC33202將信號(hào)放大輸出。

初始化相關(guān)芯片
    對(duì)主控器AT89C51SND1C和USB接口芯片ISP1362的初始化是至關(guān)重要的,除了上述一些需要初始化設(shè)置的地方,還應(yīng)注意單片機(jī)和ISP1362復(fù)位要同步。另外還應(yīng)對(duì)MP3解碼器音量控制的相關(guān)寄存器進(jìn)行初始化,默認(rèn)情況下它們都是0,即處于靜音狀態(tài)。

獲取MP3文件中的數(shù)據(jù)
    從U盤(pán)中獲取MP3文件是一個(gè)相對(duì)煩瑣的過(guò)程,首先應(yīng)能按照USB的相關(guān)協(xié)議讀取U盤(pán)上指定塊的數(shù)據(jù),之后還要根據(jù)得到的數(shù)據(jù)解析文件系統(tǒng),從而得到指定MP3文件的起始?jí)K地址,然后通過(guò)查FAT表的方法得到后繼的數(shù)據(jù)。并且還應(yīng)將得到的數(shù)據(jù)存儲(chǔ)在AT89C51SND1C內(nèi)部開(kāi)設(shè)的數(shù)據(jù)緩存中,等待MP3解碼器缺少數(shù)據(jù)時(shí)使用。由于MP3解碼器內(nèi)部的數(shù)據(jù)緩存較小,因而就要求獲取MP3文件數(shù)據(jù)的時(shí)間要盡可能的少,這就需要該部分的代碼要盡量精簡(jiǎn)。

MP3解碼器解碼
    啟動(dòng)MP3解碼器之前應(yīng)先對(duì)讀取來(lái)的MP3數(shù)據(jù)的幀頭進(jìn)行解析,根據(jù)解析得到的采樣率設(shè)置音頻輸出接口的時(shí)鐘。從U盤(pán)中讀取的數(shù)據(jù)也應(yīng)先暫存在AT89C51SND1C內(nèi)部開(kāi)設(shè)的數(shù)據(jù)緩存中,開(kāi)始播放之前需要先通過(guò)MP3DAT向MP3解碼器的數(shù)據(jù)緩存中送滿(mǎn)1KB的數(shù)據(jù),之后待MP3解碼器出現(xiàn)缺少數(shù)據(jù)的狀態(tài)(MP3STA1寄存器中的MPFREQ=1),再將AT89C51SND1C內(nèi)部數(shù)據(jù)緩存中的數(shù)據(jù)寫(xiě)入MP3解碼器中。當(dāng)數(shù)據(jù)緩存中的數(shù)據(jù)全部用完后,就應(yīng)立即再次讀取U盤(pán),如此往復(fù)直到整個(gè)MP3文件都播放完畢為止。
  
結(jié)語(yǔ)
    本系統(tǒng)很好地實(shí)現(xiàn)了對(duì)U盤(pán)的識(shí)別和讀取,突破了傳統(tǒng)MP3播放器中解碼器與存儲(chǔ)器一體化的限制,只需使用更大容量的U盤(pán)就可以在原有硬件基礎(chǔ)上增加存儲(chǔ)容量,在音響和汽車(chē)電子方面具有良好的應(yīng)用前景。

參考文獻(xiàn)
1. Atmel Corporation. Single-Chip Flash Microcontroller with MP3 Decoder and Human Interface, 2003
2. Philips Electronics. ISP1362 Single-Chip Universal Serial Bus On-The-Go controller, 2004
3. USB Implementers Forum, inc. On-The-Go Supplement to the USB 2.0 specification Revision 1.0a, 2003

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

成都2022年10月19日 /美通社/ -- 近期,平安養(yǎng)老險(xiǎn)積極籌備個(gè)人養(yǎng)老金的產(chǎn)品設(shè)計(jì)和系統(tǒng)開(kāi)發(fā)工作,發(fā)展多樣化的養(yǎng)老金融產(chǎn)品,推動(dòng)商業(yè)養(yǎng)老保險(xiǎn)、個(gè)人養(yǎng)老金、專(zhuān)屬商業(yè)養(yǎng)老保險(xiǎn)等產(chǎn)品供給。 搭養(yǎng)老政策東風(fēng) ...

關(guān)鍵字: 溫度 BSP 東風(fēng) 大眾

廣東佛山2022年10月19日 /美通社/ -- 空間是人居生活的基礎(chǔ)單元,承載著生存與活動(dòng)的最基本功能。而對(duì)于理想空間的解構(gòu)意義卻在物理性容器之外,體現(xiàn)出人們對(duì)于空間和生活深層關(guān)系的思考,同時(shí)也塑造著人與空間的新型連接...

關(guān)鍵字: 溫度 BSP 智能化 進(jìn)程

上海2022年10月19日 /美通社/ -- 10月17日晚間,安集科技披露業(yè)績(jī)預(yù)告。今年前三季度,公司預(yù)計(jì)實(shí)現(xiàn)營(yíng)業(yè)收入7.54億元至8.33億元,同比增長(zhǎng)60.24%至77.03%;歸母凈利潤(rùn)預(yù)計(jì)為1.73億...

關(guān)鍵字: 電子 安集科技 BSP EPS

北京2022年10月19日 /美通社/ -- 10月18日,北京市經(jīng)濟(jì)和信息化局發(fā)布2022年度第一批北京市市級(jí)企業(yè)技術(shù)中心創(chuàng)建名單的通知,諾誠(chéng)健華正式獲得"北京市企業(yè)技術(shù)中心"認(rèn)定。 北京市企業(yè)技...

關(guān)鍵字: BSP ARMA COM 代碼

北京2022年10月18日 /美通社/ -- 10月14日,國(guó)際數(shù)據(jù)公司(IDC)發(fā)布《2022Q2中國(guó)軟件定義存儲(chǔ)及超融合市場(chǎng)研究報(bào)告》,報(bào)告顯示:2022年上半年浪潮超融合銷(xiāo)售額同比增長(zhǎng)59.4%,近5倍于...

關(guān)鍵字: IDC BSP 數(shù)字化 數(shù)據(jù)中心

上海2022年10月18日 /美通社/ -- 2022年9月5日,是首都銀行集團(tuán)成立60周年的紀(jì)念日。趁著首都銀行集團(tuán)成立60周年與首都銀行(中國(guó))在華深耕經(jīng)營(yíng)12年的“大日子”,圍繞作為外資金融機(jī)構(gòu)對(duì)在華戰(zhàn)略的構(gòu)想和業(yè)...

關(guān)鍵字: 數(shù)字化 BSP 供應(yīng)鏈 控制

東京2022年10月18日  /美通社/ -- NIPPON EXPRESS HOLDINGS株式會(huì)社(NIPPON EXPRESS HOLDINGS, INC.)旗下集團(tuán)公司上海通運(yùn)國(guó)際物流有限公司(Nipp...

關(guān)鍵字: 溫控 精密儀器 半導(dǎo)體制造 BSP

廣州2022年10月18日 /美通社/ -- 10月15日,第 132 屆中國(guó)進(jìn)出口商品交易會(huì)("廣交會(huì)")于"云端"開(kāi)幕。本屆廣交會(huì)上高新技術(shù)企業(yè)云集,展出的智能產(chǎn)品超過(guò)140,...

關(guān)鍵字: 中國(guó)智造 BSP 手機(jī) CAN

要問(wèn)機(jī)器人公司哪家強(qiáng),波士頓動(dòng)力絕對(duì)是其中的佼佼者。近來(lái)年該公司在機(jī)器人研發(fā)方面獲得的一些成果令人印象深刻,比如其開(kāi)發(fā)的機(jī)器人會(huì)后空翻,自主爬樓梯等。這不,波士頓動(dòng)力又發(fā)布了其機(jī)器人組團(tuán)跳男團(tuán)舞的新視頻,表演的機(jī)器人包括...

關(guān)鍵字: 機(jī)器人 BSP 工業(yè)機(jī)器人 現(xiàn)代汽車(chē)

南京2022年10月17日 /美通社/ -- 日前《2022第三屆中國(guó)高端家電品牌G50峰會(huì)》于浙江寧波落幕,來(lái)自?xún)砂儆嗝袠I(yè)大咖、專(zhuān)家學(xué)者共同探討了在形勢(shì)依然嚴(yán)峻的當(dāng)下,如何以科技創(chuàng)新、高端化轉(zhuǎn)型等手段,幫助...

關(guān)鍵字: LINK AI BSP 智能家電

消費(fèi)電子

95976 篇文章

關(guān)注

發(fā)布文章

編輯精選

技術(shù)子站

關(guān)閉