基于mp3的汽车报站器设计及电路
随着城市的快速发展,公交线路不时地在进行调整,站名也随之进行变化,而且车载广告也越来越受到商家的重视,因此一款能够方便地更换语音信息、播放高质量语音信息的汽车报站器显得越来越重要。传统的汽车报站器都是采用专用语音合成芯片制成的。语音合成芯片受信息容量、语音音质的限制,且更换信息需专业设备及人士,因而使研制一种新型汽车报站器显得极为重要。本文设计的报站器可非常方便地更换播放内容,并可播放高品质的音乐。
1 报站器功能
该报站器具有如下功能:
可作为优盘与电脑连接。用户可自行下载报站器的播放内容,也可方便地更改播放内容。
可通过编辑播放列表文件更改所要播放的文件。
具有16个16×16的点阵汉字,语音播放时可同时用汉字提示播放内容。
播放高品质的音乐,无报站播放时可作为mp3播放器,提高公交车服务质量。
2 系统工作原理
本系统采用at89c51sndlc单片机(内部集成mp3解码器)作为主控cpu及解码mp3数据,实现对报站信息播放、点阵字符显示、文件存储以及用作优盘功能时usb与pc机联机的控制。系统利用fatl6在k9f1208上实现文件系统
,形成一个windows可识别访问的64mb寻址区域。结合usb控制器,系统可作为优盘在windows下使用,从而实现在windows下对文件的管理以及数据存储功能。系统利用fatl6文件系统在k9f1208上设置了一个名为schedule.lst的列表文件。该列表文件的不同行列取了根目录下不同的mp3文件名称,键盘的不同按键对应了列表文件不同行中的mp3文件名称;当有一按键按下时,程序找到列表文件中相应行对应的mp3文件进行播放。这样通过程序的设定,公交车可通过键盘实现mp3格式声音信号的报站以及各种信息的广播。列表文件在系统对闪存初始化时生成,系统在对闪存进行格式化的同时生成该名为schedule.lst的列表文件。该列表文件可在windows下利用记事本打开,编辑所需播放的mp3名称。播放报站信息的同时通过16个16×16的led点阵显示相应的播放内容。系统框图如图1所示。
3 部分电路
at89c51sndlc是atmel公司推出的一款集成mp3硬件解码器及usb revl.1控制器的单片机。它基于8位c51 mcu核(最高时钟频率为20 mhz),内置2304字节ram及64kb flash程序空间,具有4kb引导闪存,提供超过44个可用的通用i/o口及多种接口。其中非常方便的设计是4位可中断的键盘口和i2s格式音频接口。4位可中断键盘口可组成4×4的键盘矩阵,而i2s接口简化了系统电路。本设计的dac采用的是udal330。udal330是philips公司推出的一款内部集成耳机运算放大器、带有i2s接口的dac。采用udal330可进一步简化系统电路,并且提供l3模式及静态控制两种控制方式,最高可提供20位的高品质声音,是一种较为理想的选择。
系统原理图如图2所示。
3.1 语音处理部分
at89c51sndlc芯片内部的解码电路支持mepg i/ii声音格式第三层格式的硬解码,可处理48 khz、44.1khz、32 khz、24 khz、22.05khz和16 khz采样频率的mp3音频信号,支持31级的低、中、高均衡控制及左右声道独立音量控制,音质效果方面明显好于语音合成芯片。
mp3文件存储于闪存k9f1208中。当进行报站信息播放时,mcu按照系统当前的状态及所按的按键,按照程序的设定从列表文件schedule.ist中查找应播放的mp3文件名。在查找、打开该文件后,检测该文件mp3数据的各帧,并查看帧头所带的信息是否与该帧一致。如果发现整个错误在容差范围内,则认定文件可以播放。mcu对解码器的控制是通过9个与mp3解码器相关的特殊功能寄存器来实现的。只有输入缓冲区中已经有一完整的帧时,解码器才能开始播放。解码器通过mp3解码状态寄存器mp3sta及mp33tal中的mpreq、mpfreq、mpbreq位来实现对mp3输入缓冲管理的握手信号。播放时,mcu从mp3文件中取出mp3数据帧送入mp3dat寄存器。当解码器需要数据时,通过握手信号,并引发相应中断,通知mcu向mp3dat中输入数据。解码器还支持crc校验、帧同步错误校验等功能,这里不再赘述。
与udal330的连接上,at89c51snd1c的i2s接口引脚分别接到udal330对应的引脚上。为提高音频信号音质,udal330采用l3模式,appsel接地。该模式下,appl0作为测试引脚,appl1作为l3模式的时钟,appl2作为l3模式控制,appl3作为l3模式的数据输入,它们分别与at89c5lsndlc的p4.7、p4.4、p4.5、p4.o相连。
报站器不需要录音功能,因此mic电路无须接入mp3电路中。mic电路的音频信号作为汽车功放的另一路输入接入,如图3所示。
3.2 优盘功能部分
该功能涉及在k9f1208上fatl6文件系统的实现与管理,以及作为usb从机与主机间的通信。k9f1208是三星公司推出的一款64 mb的flash芯片,芯片存储区域分为4096个块,每个块又分32页,每页有512 kb+16字节。flash的读/写有如下特点:必须以页为单位进行读写,写之前必须先擦除原内容;擦除操作必须对block进行,即一次至少擦除一个block的内容。因此fatl6的实现,可将flash出的一页定为1个扇区,将其2个块(64个扇区)定为一个簇。这样,簇的容量刚好为512字节×64=32kb,满足fatl6对簇大小的要求。在fatl6分配空间时,其逻辑块地址(lba)与flash实际物理地址的转换可以按以下公式进行:
f1ash的块地址=逻辑块地址/0x20
flash的页地址=逻辑块地址%0x20
按照这样的结构及fatl6的要求
,在k9f1208上实现dbr、fat、dir和data四个区,即可实现优盘中的磁盘管理功能。at89c5lsnd1c芯片内集成有usb控制器,由于mass storage协议及端点配置、枚举、通信过程较为复杂,这里不再赘述,硬件连接请参考图2。
3.3 显示电路
如图4所示,显示电路由idt7132、at89c5l、74lsl54、74hc573以及1个16×256的led点阵屏构成。idt7132是一片容量为32 kb的双口ram,由于16×256的led点阵屏显示缓存共需512字节的存储空间,电路使用它与at89c5lsndlc接口并存储汉字显示信息。16×256的led点阵屏可显示16个16×16的点阵汉字,显示屏分32页,每页又分成16行。本设计采用两片4-16译码器74ls154组合成一个5-32译码器,作为页译码器;采用一片74lsl54作为行译码器。每一页对应一个74hc573,用于锁存该页某一行显示的内容;32个74hc573可锁存16×256的led点阵屏一行的内容,显示屏由7407驱动。at89c5l从双口ram规定区域取出显示内容,控制页译码器把数据分别送入每一页的当前行中,然后控制行译码器换行,如此循环形成动态显示。显示电路作为~独立模块使用,报站器显示信息时,只需把欲显示的汉字字模送入双口ram对应的存储区域。
结语
随着mp3播放器硬件成本的降低,mp3报站器的性能及成本优势越来越明显,有着广阔的应用前景;且mp3报靖器可方便地更换广播信息,具有较高的使用价值和推广价值。
中国无人机产业的风将来 背后有何深水世界?
小米max2什么时候上市?小米max2最新消息:4+128GB6.4吋屏幕,或骁龙660加持
光电显示“独角兽”抢滩石墨烯“高地”
智能机器人的研发在往哪一个方向发展
工程师须知:二手示波器的购买评估
基于MP3的汽车报站器设计及电路
贸泽即日起备货安森美EliteSiC碳化硅解决方案
五大客户追单!台积电CoWoS明年增产20%
新一代iPad Mini详细拆解,超给力的Retina屏幕
什么是“车规级”激光雷达?
如何连接和编程ESP8266
智能硬件产品有哪些_智能硬件网络配置方式
什么是等离子电视
Lime将在法国巴黎推共享电动滑板车
香港理大3D打印实验室为医生提供TAVI心脏手术模拟系统
研究发现win10的快捷方式或导致硬盘损坏
功率电感尺寸的变化对电感特性究竟有没有影响
NVIDIA Triton助力腾讯构建高性能推理服务
国芯思辰|电容触摸芯片AIP5905用于智能蓝牙音箱,采用独立5通道触摸感应按键
差分放大电路实验