新闻中心

EEPW首页 > 消费电子 > 设计应用 > vW90P71 0的智能音乐播放嚣系统设计

vW90P71 0的智能音乐播放嚣系统设计

作者: 时间:2009-11-17 来源:网络 收藏

2.1 主、从机控制器
W90P710主机是控制和管理的核心,实现,录音,文件和录音文件的存储、删除、显示,以及与单片机的串口通信等功能。该处理器以ARM7TDMI为内核,具有以下特性:
①片内集成LCD控制器,方便实现显示功能;
②外部总线接口具有丰富的片选资源,可扩展NAND Flash等大容量存储设备;
③具有4个串口,可方便实现与凌阳单片机的串口通信及程序调试。
同时,W90P710主频能达到80 MHz,功耗低,有着十分优秀的性价比,特别适用于控制领域。
的语音识别芯片为SPCE061A,是凌阳科技公司推出的针对语音识别领域的16位单片机,具有体积小、功耗低、性能好且易于开发等特点。该芯片使用凌阳音频编码SACM_S240方式(2.4 kbps),能容纳210 s的语音数据;具备串行设备接口;7通道10位电压A/D转换器(ADC)和1个单通道的声音专用A/D转换器。声音A/D转换器输入通道,内置麦克风放大器和自动增益控制(AGC)电路。语音模式成功启动或处于训练模式下,单片机自行采集语音信号并进行识别,识别结果通过串行接口传给主机。
2.2 音频模块
音频模块在整个系统中起着举足轻重的作用,不但要实现录音功能,而且还需MP3、提示音和录音文件。本系统的音频接口由AC97音频接口总线接口和ALC203音频编解码器组成。ALC203是Realtek公司推出的一款经济型音频编解码器,它通过AC97数字音频接口实现音频信号的数字化处理。图2是关于音频编解码的具体实现电路,ALC203的2、3脚接1个24.576 MHz的晶振;5、6、7、10脚和华邦W90P710的AC97数字音频接口AC97-DATO、AC97-BCLK、AC97-DATI、AC97-SYNC相连;MIC1和MIC2接麦克风两端;HP-OUT-L和HP-OUT-R脚分别通过一个有极电容接到耳机插口处;GPIO1和GPIO0可以硬件调节音量,但本采用软件进行音量调节。

本文引用地址://www.cghlg.com/article/166854.htm

2.3 其他模块
LCD显示屏选用的是AUO公司的A030DL01(320×240)工业级液晶屏。该液晶屏的彩色格式为RGB656格式,彩色色深可达到64K色,显示文件名和歌曲基本信,同时因屏幕空间较大,可添加彩色背景画面。汉字显示是通过添加字库软件实现的。键盘有4×1个按键,方便用户控制器,同时也保证在语音模式不能正确工作时可以按键控制机器。

MPEGDEC_STREAM*MPEGDEC_open(char*filename,MPEGDEC_CTRL*ctrl);
功能描述:打开MPEG音频文件。
参数:filename为待打开的音频文件,ctrl为控制数据解码信息的结构体。
返回值:打开成功,则返回包含数据流信息和解码信息的结构体指针;失败,则返回NULL。
void MPEGDEC_dose(MPEGDEC_STREAM*mpds);
功能描述:关闭MPEG音频文件。
参数:mpds指向待关闭的音频文件。
无返回值。
unsigned long MPEGDEC_decode_frame(MPEGDEC_STREAM*mpds,short*pcm[MPEGDEC_MAX_CHANNELS]);;
功能描述:为当前打开的音频文件的一帧解码。
输入:mpds指向打开的音频文件。
输出:pcm[]存放解码后的16位音频数据;pcm[0]中存放单声道或左声道或声道1的数据;pcm[1]中存放右声道或声道2的数据。
返回值:返回解码一帧的音频数据数目;返回MPEG-DEC_ERR_EOF,则说明当前帧是最后一帧;返回MPEG-DEC_ERR_BADFRAME,则说明该帧已损坏。
3.2.2 歌曲基本信息结构体
按照MP3的ID3 V1.0标准定义,MP3文件的最后128字节用来存放标签头、歌曲名、演唱者等信息。为了在LCD屏上显示当前播放歌曲的基本信息,给出了一个结构体来读取并存放这些信息。这个结构体定义如下:


3.2.3 播放主流程
当用户选中歌曲进入播放界面时,ARM7主机首先通过串口给单片机发一个命令字0x01,通知从机进入识别“播放器”这组命令的函数。从机接收到命令后,首先判断“播放器”这组命令是否已经训练。若训练,则返回0x04,同时播放器的语音模式启动成功;若未训练,则返回0x06,LCD屏显示提醒用户训练该库;若从机在规定时间内(因实时性要求,这里“规定时间”指200 ms)返回其他值或未返回值,则播放器的语音模式启动失败。若成功启动语音模式,音乐是分帧解码后播放,在帧一帧循环中,主机需查询键盘和串口,来实现“上一首”、“下一首”、“播放”、“暂停”、“退出”和调节音量的功能。若语音模式启动失败,则只需查询键盘。每次接收到“退出”命令时,主机在退出音乐模式前需通过串口发送0x05给单片机,通知单片机同步退出该模式;单片机接收到命令后,需返回0x04告知主机已退出。播放的主流程如图4所示。关于语音命令如何训练,可见参考文献[5],这里不再赘述。

4 实验结果
以W90P710开发套件+凌阳SPCE061A为硬件,采用嵌入式操作系统μClinux,在实验室安静和嘈杂的情况下(安静时室内噪声为50 dB,嘈杂时为60 dB),测试播放器语音模式的工作效率。在测试语音模式的工作效率前,先进行了按键测试,测试通过率为100%,且音乐播放流畅,响应满足实时性要求。



评论


相关推荐

技术专区

关闭