基于USB主机和ZigBee的无线音响系统 (一)
扫描二维码
随时随地手机看文章
1 引言
近几年来,随着嵌入式系统技术、网络通讯技术以及家电产业的迅猛发展,信息技术正逐渐渗透到人们的生活当中,智能家居设计也渐渐进入视野。然而,现阶段的智能家居设计,多采用有线设计,存在着系统结构复杂、不易改动等缺点。
本文设计了一种基于嵌入式USB 主机的家用无线音响系统,可以实现在不连接PC 机的情况下直接读取U盘或mp3 中的音频数据,并通过ZigBee 无线网络传输给家庭内部各个位置上的分节点,实现家庭音响的无线播放mp3 的功能,将人们从繁杂的布线中解放出来。
2 系统结构
系统主要由嵌入式USB 主机和ZigBee 分节点播放器组成。而USB 主机又是系统设计的关键,主要由USB接口、MCU 控制器、ZigBee 主节点和电源模块等组成,系统结构如图1 所示。
系统处理流程为:本地端控制器MSP430 通过CH375 按照相应的USB 协议,读取U 盘或MP3 中的音频文件,并将其传输给ZigBee 主节点。ZigBee主节点利用ZigBee 网络将音频信号发送给位于不同位置的ZigBee 分节点。分节点接收到信号后,经过处理,将数字信号传送给音频解码芯片,经解码后实现音频输出。
图1 系统结构。
3 系统硬件设计
3.1 USB 接口部分
3.1.1 CH375 介绍
CH375 是一个USB 总线的通用接口芯片,支持USB-HOST主机方式和USB-DEVICE/SLAVE 设备方式。在本地端,CH375 具有8 位数据总线和读、写、片选控制线以及中断输出,可以方便地挂接到单片机/DSP/MCU/MPU 等控制器的系统总线上。
CH375的USB主机方式支持常用的USB全速设备,外部单片机可以通过CH375按照相应的USB协议与USB 设备通讯。CH375 还内置了处理Mass-Storage 海量存储设备的专用通讯协议的固件,通常情况下,外部单片机不需要编写固件程序,就可以直接以扇区为基本单位读写常用的USB存储设备(包括USB硬盘/USB闪存盘/U盘)。
3.1.2 U盘接口电路设计
由于CH375 和单片机采用并行方式通信传输速度快,编程简单,所以本设计采用并行连接方式。
图2 CH375 并行接口电路。
在CH375 芯片的复位期间,TXD 引脚用于选择通讯接口。如果CH375 在复位期间检测到TXD 引脚为低电平则启用并行接口。硬件连接方式如下:CH375的8 位双向数据总线D7~D0、中断输出引脚INT#、读选通输入引脚RD#、写选通输入引脚WR#以及地址输入引脚A0 分别接MSP430 的P3 口、P1.0、P4.4、P4.5、 P4.6 脚,由于在本系统中CPU 只有一片CH375 扩展,所以片选输入引脚CS#接地选通,接口电路如图2 所示。
3.2 主控制器与ZigBee 无线网络部分
本系统采用MSP430F1611 构成控制模块,采用CC2430 为核心的无线收发模块,核心芯片之间采用SPI 方式通讯,MSP430F1611 采用主模式,CC2430采用从模式。
MSP430 系列单片机是美国TI 公司推出的超低功耗16 位混合信号处理器,具有精简指令集结构(RISC)以及丰富的寻址方式;拥有高性能模拟技术及丰富的片上外围模块;大量的寄存器以及片内数据存储器可参加多种运算;在8MHz 晶振工作时,指令速度可达8MIPS.这些特点即保证了可编制出高效率的源程序,又为系统的单片解决方案提供了极大的方便[3].
CC2430 的选择性和敏感性指数超过了IEEE802.15.4 标准的要求,可确保短距离通信的有效性和可靠性。利用此芯片开发的无线通信设备支持数据传输率高达250Kbps,可以实现多点对多点的快速组网。更重要的是,CC2430 只需极少外部元器件,性能稳定且功耗极低。
MSP430 在低功耗节能方面表现突出,ZigBee 的特色之一也是低功耗,选用这两种芯片,可以保证二者在功耗方面的一致性,有利于系统应用,同时也能保证工作的稳定性。
在电路设计中,利用MSP430 的P3 口接收CH375 读取的U 盘数据,并通过DMA 方式将数据传送给USART1,后者将数字音频信号以SPI 方式传送给ZigBee 主节点。
3.3 音频解码部分
在接收端,ZigBee分节点接收到数字信号后,以SPI方式将数据串行传输给解码芯片VS1003,此时CC2420为主模式,VS1003为从模式。
VS1003是由荷兰VLSI公司出品的一款单芯片的MP3/WMA/MIDI音频解码和ADPCM编码芯片,其拥有一个高性能低功耗的DSP处理器核VS_DSP,5K的指令RAM,0.5K的数据RAM,串行的控制和数据输入接口, 4个通用IO口,一个UART口;同时片内带有一个可变采样率的ADC、一个立体声DAC以及音频耳机放大器。
VS1003通过一个串行接口来接收输入的比特流,比特流被解码后通过一个数字控制器到达一个18位过采样多位ε-ΔDAC.通过串行总线控制解码器。
除了基本的解码,在用户RAM中它还可以做其他特殊应用,例如DSP音效处理。
VS1003与单片机连接的引脚主要有7个,分别为SO、SI、SCLK、/XCS、/XRESET、DREQ、/XDCS.
只有保证它们与单片机正确可靠的连接,才能对VS1003 进行有效的操作与控制[4] .CC2430 与VS1003的连接关系如图3所示。
图3 CC2430 与音频解码芯片连接电路图。