Windows CE系统下基于PXA272和TSC2101音频系统
音频系统的硬件实现
本设计中的音频驱动采用Unified Audio模型实现,基于Intel Xscale PXA272处理器和TI 的TSC2101音频芯片,使用了基于I2S(Inter-IC Sound)总线的音频系统体系结构,系统原理图如图1所示。Intel Xscale PXA272芯片集成了I2S控制器,通过I2S总线处理音频数据。其他信号(如控制信号)则需要单独传输,在本设计中将Xscale PXA272芯片的SSP串口配置为SPI串口以实现控制信号的传输。
图1 系统原理图
I2S是菲利浦公司提出的串行数字音频总线协议。PXA272的I2S控制器控制了I2S链接,I2S控制器由数据缓冲、状态和控制寄存器、计数器组成。它们将系统内存和外设的音频解码芯片(TSC2101)连接,产生同步音频。播放音频文件时,I2S控制器通过I2SLINK连接将系统内存中数字化的声音样本发送到外设的TSC2101音频解码芯片中,然后由TSC2101芯片的数模转换器将数字音频信号转换成模拟信号。
对于录音来说,I2S控制器从外部的TSC2101音频芯片接收到数字信号,然后将它们存储到系统内存中。I2S提供了普通I2S和MSB-justified-I2S格式。通过5根引脚连接TSC2101芯片和PXA272的I2S控制器,形成音频数据传输的通道。I2S控制器必需的信号主要有:一个码率时钟,可以引用外部或者内部时钟源;一个控制信号提供“左/右”声道控制信息;两个串行音频引脚,一个输出一个输入;码率时钟,I2S控制器会将可选的系统时钟信号也发送到外部解码器中。
I2S控制器通过DMA方式来访问。DMA方式下,DMA控制器只能通过串行音频数据寄存器(SADR)访问FIFO。DMA控制器通常以8、16或32字节大小的块存取FIFO队列数据的。
本设计中采用的音频芯片TSC2101集成了立体声音频解码、触摸屏控制芯片,立体声DAC能以高达48Kb/s的采样率播放音频文件,专供PDA、PMP、智能手机和MP3播放机使用。TSC2101 将扬声器放大器、耳机放大器和四线触摸屏控制器与音频编解码器集成再一起,带有一个立体声头戴送受话器接口、一个手机送受话器接口、一个单声道8Ω扬声器放大器以及一个32Ω受话器驱动器,并集成有一个电池监控器和一个片上温度传感器。
TSC2101芯片的电路设计如图2所示。
图2 TSC2101芯片电路设计
本设计为TSC2101在智能手机中的运用,CP-IN为通信模块的语音输入,CP-OUT则为音频系统到通信模块的输出,在实际的应用中MIC1可以通过TSC2101的内部PGA(可编程增益放大)、AGC(自动增益控制)电路连接到CP-OUT,实现智能手机的话筒功能;同时,MIC1输入还可以通过内部的ADC将语音数据采样后经I2S总线传输到处理器存储空间实现录音功能。当然,在智能手机通话的同时,还可以实现通话录音功能。电路图中的38~41引脚为SPI接口,42~46引脚为I2S控制引脚,引脚9~12为触摸屏输入,引脚27和28为音频输出可以连接耳机,引脚26连接手机听筒,引脚33、35连接外置扬声器。
采用Unified Audio模型实现音频驱动
音频驱动的实现方式包括MDD-PDD分层模式和不分层的Unified Audio模型。MDD-PDD作为直接实现流接口的一种方法,使用微软提供的模型设备驱动程序
Windows CE PXA272 TSC2101 音频系统 相关文章:
- 基于MCGS系统的DCS总线接口的设计与实现(11-15)
- 基于LabWindows/CVI的通信电源系统自动化测试的实现(01-23)
- LabWindows/CVI的便携式电源控制器测试系统设计(03-04)
- 基于LabWindows CVI的扭矩扳手数据处理系统的设计与实现(10-16)
- 基于LabWindows/CVI虚拟仪器编程语言的飞行模拟器(08-12)
- Windows系统安全模式另类应用(05-17)