基于AT89C51SND1的MP3播放器设计方案 本文关键词:播放器,设计方案,AT89C51SND1,MP3
基于AT89C51SND1的MP3播放器设计方案 本文简介:基于AT89C51SND1的MP3播放器设计方案.txt36母爱是一缕阳光,让你的心灵即便在寒冷的冬天也能感受到温暖如春;母爱是一泓清泉,让你的情感即使蒙上岁月的风尘仍然清澈澄净。基于AT89C51SND1的MP3播放器设计方案一、设计简述:随着科技的进步,MP3播放器已成为现代消费者首选的
基于AT89C51SND1的MP3播放器设计方案 本文内容:
基于AT89C51SND1的MP3播放器设计方案.txt36母爱是一缕阳光,让你的心灵即便在寒冷的冬天也能感受到温暖如春;母爱是一泓清泉,让你的情感即使蒙上岁月的风尘仍然清澈澄净。基于AT89C51SND1的MP3播放器设计方案
一、设计简述:
随着科技的进步,MP3播放器已成为现代消费者首选的随身听产品,它以小巧玲珑的体积,精美的外形,低廉的价格及其出色是音质和强大的功能深得消费者的厚爱。国际上很多芯片制造商看准商机,开发出以自己生产的芯片为核心的MP3方案,并公布于众,这些核心芯片包括:ATJ-207X系列,AT9015系列,AT161系列,STMP341X系列等。其中,以ATMEL公司生产的AT89X51SND1系列芯片最为著名,其中包括本设计所采用的AT89C51SND1芯片。
功能强大的AT89C51SND1:
AT
89C
51SND1单片机是ATMEL公司专门针对开发MP3而设计的,其主要特点是内部集成了MPEG2解码器和USB通讯接口,内含64k的内部程序存储器,支持在系统编辑ISP功能,通过USB或者串行口对芯片进行编程操作,内部数据存储器为2056字节。它最高支持20MHz的工作频率,工作电压为3V,内部集成的MPEG2解码功能支持48,44.1,32,24,22.05及16赫兹的采样序列,可直接与DAC音频转换芯片连接,支持USB1.1协议全速引擎,并提供相应的键盘中断、IDE/ATATPI
/MMC及ISP接口。
二、系统设计方案论证:
目前MP3DIY主要有两种方案:使用DSP装配和使用专用MP3开发芯片。
DSP系统硬件设计麻烦,程序晦涩难懂,购买DSP芯片的价格也较高,因此本设计采用后一种方案。
国内流行的方案很多,使用的专用芯片也是多种多样,但大部分方案整体上大致相同。以AT
89C
51SND1为核心的MP3系统主要实现一个MP3播放器的功能,整个系统由AT
89C
51SND1(MCU)、K
9F
1208UDF(FLASH芯片)或硬盘、音频转换部分、USB接口、外部控制、串行通讯、电源部分和录音部分组成。
1、MCU部分:即AT
89C
51SND1,控制整个系统,提供USB控制和MP3解码功能;
2、存储器:作为MP3播放文件的存储器;
3、音频转化部分:将数据流转化成声音信号;
4、外部控制:对MP3进行操作的外部中断按键;
5、通讯系统:包括USB及串口通讯。
6、外部显示:包括了LED发光管指示灯,液晶显示屏等。
7、电源部分:
为MP3提供所需要的电能;
8、外部音频输入部分:包括音频输入元件MIC及A/D转换芯片
下面我们具体来了解一下由ATMEL公司在网上公开提供的一款以AT89C51SND1为核心的MP3方案(以下称小板方案)。
电源部分:
整个开发板上的芯片统一采用3.3V供电,对开发板的供电采用两种形式:USB供电和电池供电
。
USB接口提供5V电压和200mA电流,Imax=500mA,AT
89C
51SND
1C
所需的电压为3V(偏差10%),25mA。若使用USB口供电,需将5V转化成3.3V。一般可以采用电阻分压和DC-DC芯片降压。因为MP3属于高速信息传输数码产品,能否有一个良好的电源对MP3使用的稳定性来说至关重要,因此一般采用芯片降压的供电方案,本方案选用的芯片为AS1117,它输入电压为4.75-10V,最大输出电流为800mA,转换后输出电压为3.3V,是比较理想的USB电平转换芯片。
电池供电可采用两种方式:直接串接电池法和高频振荡升压法
前一种用两节1.5V的电池串联形成3V的电压直接接入MP3,这种方法不需要什么外围电路,芯片工作正常,但普通电池压降比较明显,当电池使用一段时间后,压降后的电压会导致MP3长期工作于不稳定的低压状态,对其音质和机体有很大的损害。
后一种则将1.5V的电压经高频振荡后送入电平转换芯片,将其转换成3.3V电压。这种方法是目前最常用的电源技术,它只需要一节电池供电,占用体积小,由于电压是经过高频振荡后转化而来的,所以电池的压降不会影响最终输出的电压,这也大大延长了电池的使用寿命,真正做到节能,是现代各种随身产品的首选供电方式。
在小板方案中,其电源转换主要是由SP6641(直流推进转换器)和SP6231(万用串列总线外围设备)构成,电路中,场效应管SI2312DS与按键SW5构成了电源开关控制电路,每触发一下SW5,SI2312DS将作导通和断开电源,电感L1和肖特基二极管BAT54S构成高频振荡电路,它将高频电流送入SP6231处理后,再由它送入SP6641进行直流电压转换,最终将3.3V电压送至整个设备。
直流电源]和数字电源的区别:在一些数字电路中,我们会发现会有DVDD(数字电源)和AVDD(模拟电源)两种电源,在小板方案中也不例外,这是因为一些芯片制造商在设计芯片时,为了让芯片工作于一个稳定的环境里,特意为其设计了专用电源DVDD。原则上,数字电源与模拟电源没有什么大的区别,但模拟电源工作的环境中,可能会出现大的压降或其他影响整个电源的情况。为保证系统的稳定性,通常在设计时,将数字电源和模拟电源分开设计,最后用一跳线将两个电源连接在一起,这样可以避免模拟电源对数字电源的影响,以保证系统的稳定性。
外部通讯系统:
外部通讯系统主要由USB通讯和串口通讯两种通讯方式,通过他们都可以进行程序烧写(51SND支持系统在线编辑功能),但通过USB接口还可进行文件的存储,即具有U盘通讯功能,所以一般只需要完成USB通讯接口就可以了。
串口通讯的实现:和其他的单片机串口通讯一样,要使用MAX232进行TTL电平转换,然后直接将信号送入51SND1的25,26脚(串行通讯接口),通过51SND1内部的程序支持和计算机上的软件来完成串口的信息通讯,串口通讯需要注意波特率问题,选用不当的波特率有可能造成通讯失败,最常用的波特率是9600和19200。
USB接口的实现则是通过51SND1自带的USB1.1协议通讯端口,它不需要使用飞利浦等公司生产的USB接口转换芯片,此方案则是通过两个27欧姆的电阻后直接接入51SND的21,22脚,这两个电阻的阻值是官方站对自己所开发的芯片提供的,最好使用精度高的电阻,否则,会因为电阻分压不当而导致计算机无法识别51SND芯片。该方案中,有一PNP三级管2N2907,它的作用是作为一个开关,在实现U盘功能时,I/O口将硬件响应信号送入三极管的基极,使其CE导通,电源VDD通过1.5K电阻拉高USB的D+端口电位,以告知计算机有新的硬件接入。我们在设计电路时,通常在三极管CE上设一跳线开关,在烧写MP3程序时,需手动拉高D+口电位。
外部音频输入部分:
89C
51SND1芯片提供了外部录音功能,在程序的支持下,通过外部设备MIC及其模数转换芯片向其送入音频信息,51SND1将其转化成WAV文件后保存在存储器中,通过MP3放音功能可将其音频信息读出。该方案中,实现MIC到CPU转换的是MAXIM公司生产的MAX4468(增益带宽涌流器),它的主要功能是将MIC的信号放大,并将其转化成数字信息,通过CPU将数字信息储存在存储器中,从而实现MP3的录音功能。
mp3音频转换部分:
AT
89C
51SND1支持PCM和I2S两种音频结构,音频数据流可以来自MP3解码的输出,也可以来自MCU直接的音频输出,和MP3解码部分类似,整个音频部分和51内核也通过5个寄存器来进行数据和控制信息的交流,这5个寄存器是:
1.音频接口控制寄存器0
AUDCON0
(AUDIO
INTERFACE
CONTROL
REGISTER
0)
2.音频接口控制器
1
AUDCON
1
(
AUDIO
INTERFACE
CONTROL
REGISTER
1
)
3.音频接口状态寄存器
AUDSTA
(AUDIO
INTERFACE
STATUS
REGISTER)
4.音频接口数据寄存器
AUDDAT
(AUDIO
INTERFACE
DATA
REGISTER)
5.音频时钟分频寄存器
AUDCLK
(AUDIO
CLOCK
DIVIDER
REGISTER
)
当音频数据的第一位送入DA转换器的时候就会产生时钟信号。从MP3解码器送出的数据被送入MP3缓冲器,MP3的解码数据缓存和解码器通过一个握手信号进行通讯,可以通过AUDCON1寄存器中的DERQEN位来决定是否需要数据。
存储器:
目前市场上的MP3,其存储器是多种多样的,按照其存储器的不同,大致可分为:FLASH芯片存储,CF卡存储和硬盘存储三种。当然,不能否认还有一些使用的是碟片或者其它芯片存储。
FLASH芯片存储的MP3最常见,因为其体积小,存储速度快,耗电省等特点,已成为现在MP3存储器的首选(目前市场上的大部分MP3都使用这种存储器),本方案使用的FLASH存储器是韩国三星公司生产的K
9F
系列FLASH存储器,这些存储器从
16M
到
256M
不等,但价格比较高,一片
64M
的芯片售价是130元左右,
256M
的售价300多元,用户可根据需要来选择,但选用不同的FLASH芯片时,应注意程序兼容的问题,比如设定存储器的大小,FLASH存储器读出和写入的入口地址等等。
CF卡存储器最早应该是应用在数码相机上,它的特点是支持插拔,更换碟片容易,市场上很容易买到,其价格也比较便宜。这类MP3在市场上不常见,因为其体极大,存储量又不如硬盘,常用于数码摄像机机带MP3功能的存储器。但因为CF卡价格便宜,多为DIY者选用
上边介绍的两种存储器存储量远远满足不了需要,于是人们便把目光投向了硬盘。一些公司看准商机,生产出专门用于MP3的微型硬盘,它的容量大小从几个G到几十个G,但此类MP3
目前售价较高,使很多MP3爱好者望尘莫及。在MP3DIY一族里,已经有不少高手使用普通硬盘完成了硬盘MP3,使用的CPU正是51SND1。51SND1与硬盘通讯的方法多种多样,最常用的方法是利用锁存器74373和38译码器74138作为接口扩展,32KRAM62256作为缓冲器与硬盘的IDE接口连接,由于硬盘需使用12V和5V两种电源,其耗电量也非常大,不适合随身携带,所以大部分DIY的硬盘MP3多是以台式的方式出现,并配上了液晶显示及功放电路。
用硬盘作为MP3的存储器要比使用FLASH芯片和CF卡复杂的多,不仅仅要了解硬盘接口的定义,在编写驱动程序时,还要完全读懂FAT文件,这个文件包括软盘数据的逻辑存储、硬盘中的数据组织、硬盘主引导记录(DBR)及其结构、引导记录及其结构、文件分配表FAT、文件目录表、分区表等等。要想完全看懂这些东西,必须要对计算机原理作充分的了解,理清程序算法,这些不亚于学好几门高等数学。在国内的DIY人群中,能看懂FAT文件,写出硬盘驱动的人也寥寥无几