0 引言
在传统的硬件体系结构中,接口被看作是相应外部设备的一部分,每个接口一般都只能连接到同一种设备上。虽然通过所谓“菊花链”(daisyohain)方式可以把若干同种设备连接到同一接口上,却不能将不同种类的设备混合连接到同一接口上,由于目前USB接口的设备越来越丰富,种类越来越多,为了满足这样的需求,这里给出一种USB 2.O接口的解决方案,通过USB接口读取各种USB设备;通过SD卡接口,读取各种主流存储卡。该方案支持常用的USB存储设备(包括U盘/USB硬盘/USB闪存盘/USB读卡器)和SD卡(包括标准容量SD卡和高容量HC-SD卡以及协议兼容的MMC卡和TF卡)。
本文提出了一种智能多接口的全硬件音频系统的解决方案,使音频系统的扩展性进一步增强,原则上来说可以连接目前大多数主流存储设备,实现了一台设备多种用途的扩展。能够进一步把现有资源的利用率提高,具有一定的经济和社会效益,并且采用全硬件解码和单片机降频工作等功耗控制方式,使整个系统的功耗降低至传统类似设备的50%左右,符合我国节能环保的主题。
l 硬件系统设计
1.1 芯片概述
ATmegal28是基于增强的AVR RISC结构的低功耗8位CMOS微控制器。由于其先进的指令集以及单时钟周期指令执行时间,ATmegal28的数据吞吐率高达1 MIPS/MHz。AVR内核具有丰富的指令集和32个通用工作寄存器。所有的寄存器都直接与算术逻辑运算单元(ALU)相连接,使得1条指令可以在1个时钟周期内同时访问2个独立的寄存器。这种结构大大提高了代码效率,并且具有比普通的CISC微控制器最高至10倍的数据吞吐率。
CH3768是文件管理控制芯片,用于单片机系统读写U盘或者SD卡中的文件。CH376S支持USB设备方式和USB主机方式,并且内置了USB通信协议的基本固件。处理Mass-Storage海量存储设备的专用通信协议的固件;SD卡的通讯接口固件和FATl6,FAT32以及FATl2文件系统的管理固件支持常用的USB存储设备和SD卡。
VSl053B是1个单芯片Ogg Vorbis/MP3/AAC/WMA/MIDI音频解码器和IMA ADPCM/user-loadableOgg Vorbis音频编码器,支持CD级的音
频回放和录制,芯片内部包含1个高性能、低功耗的DSP处理器内核VS_DSP,内含16 KB的指令RAM和0.5 KB的数据RAM。VSl053B内部有1个串行控制和数据输入/输出接口、8个GPIO接口、高性能可变采样率的DAC和ADC、立体声音频输入接口和立体声音频输出接口。PL2303用于实现USB与标准RS 232串行端口之间的转换,2个独立的大型缓冲用于2种总线的连接,大型数据缓冲器用于USB的批量数据传输,自动握手模式可用于串行通信,因而可以达到远大于标准UART控制器的波特率。PL2303支持USB电源管理和远程唤醒协议。该设计中,PL2303芯片主要应用在将主控单元的下载线与供电模块合二为一,大大简化了系统的设计复杂度,NOKlA 5llO液晶显示器为传统的点阵式液晶显示器,不内置英文及汉字字库,因此在NOKIA 5llO液晶显示的过程中,需要单片机把从存储器中读取到的ASCII码值转换成对应的英文及汉字点阵信息,然后通过串口把点阵信息传输到液晶显示器中进行显示。
1.2 硬件设计框图
该硬件系统主要由主控模块、智能扩展接口、音频编解码模块、液晶显示模块、键盘LED指示模块、JTAG/ISP/RS 232下载接口构成,逻辑连接图如图1所示。
1.3 接口设计方案
1.3.1 VSl053B及键盘和液晶显示接口设计
KEYl~KEY7为系统的键盘控制单元对应功能如表1所示。LEDl~LED7对应按键指示灯,如按键KEYl被按下,则LEDl灯亮。外围接口如图2所示。
1.3.2 USB主控设备接口设计
USB主控设备的接口设计如图3所示。
系统软件设计主要包括主程序、中断控制子程序、键盘扫描子程序、LCD控制子程序、外围模块控制程序。主程序运行流程如图4所示,软件系统流程图如图5所示。
2 软件系统设计
整个设计运行如图6、图7所示。
3 结语
通过该设计,进一步增强了单片机在智能多接口设计中的控制功能,以及在多中断情况下的处理方式。在单片机应用系统中,通常需要人机对话的功能,并且能够随时输入数据,以及发出各种相应的控制命令,最后通过输出接口将运行结果输出到LCD显示器中。由于该设计的LCD显示器属于传统液晶显示器,不内置任何字库,因此必须通过单片机读取SD卡Fat文件系统中的汉字点阵信息,将ASCII转换成对应的点阵信息,然后进行显示,这也进一步增加了系统控制的难度。
由于该系统能够对现有资源进行二次利用,采用智能接口的方案能够灵活地对各种存储设备进行读取和写入,进一步提高了资源的利用率,因此该系统具有一定的社会价值和发展前景。