MP3汽车报站器的实现

发布者:RoboPilot最新更新时间:2012-01-16 关键字: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报站器可方便地更换广播信息,具有较高的使用价值和推广价值。
关键字:MP3汽车报站器 引用地址:MP3汽车报站器的实现

上一篇:基于89C51单片机的自控对星装置
下一篇:51单片机和图形LCD接口技术的实现

小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • ARM裸机篇--按键中断
    先看看GPOI的输入实验:按键电路图:GPF1管教的功能:EINT1要使用GPF1作为EINT1的功能时,只要将GPFCON的3:2位配置成10就可以了!GPF1先配 ...
  • 网上下的--ARM入门笔记
    简单的介绍打今天起菜鸟的ARM笔记算是开张了,也算给我的这些笔记找个存的地方。为什么要发布出来?也许是大家感兴趣的,其实这些笔记之所 ...
  • 学习ARM开发(23)
    三个任务准备与运行结果下来看看创建任务和任运的栈空间怎么样的,以及运行输出。Made in china by UCSDN(caijunsheng)Lichee 1 0 0 ...
  • 学习ARM开发(22)
    关闭中断与打开中断中断是一种高效的对话机制,但有时并不想程序运行的过程中中断运行,比如正在打印东西,但程序突然中断了,又让另外一个 ...
  • 学习ARM开发(21)
    先要声明任务指针,因为后面需要使用。 任务指针 volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • 学习ARM开发(20)
  • 学习ARM开发(19)
  • 学习ARM开发(14)
  • 学习ARM开发(15)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved