MP3功能: 本播放器可以播放MMC卡和硬盘中的mp3歌曲。具有向前,向后选曲,播放,暂停,音量调节,高中低音调节等功能。 歌曲的信息可以通过LCD显示,并具备红外线遥控功能。 CD-ROM控制器功能: 本播放器具备一个IDE接口,可以连接CD-ROM,通过播放器发送命令可以控制CDROM进行CD播放等动作。
硬件部分主要由以下几部分构成: 1.电源部分,提供播放器所需的电源。 2.主芯片部分,AT89C51SND1C及其外围复位电路,晶振电路等。 3.IDE接口,包括地址锁存芯片,电平匹配电阻。 4.MMC卡接口电路。 5.液晶接口,24*2字符型液晶接口电路。 6.DAC和音频放大电路部分,音频DAC及耳机放大电路,包括耳机接口电路,辅助音频输入。 7.串口电路,RS232电路接口。 8.USB接口电路,连接至主芯片USB部分。 9.键盘电路,4个按键。 10.遥控电路,遥控接收头电路部分。
软件架构主要由底层驱动,协议栈,文件系统,各个任务,以及人机接口组成。 底层驱动主要负责驱动各个硬件,比如MMC卡驱动,IDE接口驱动,CDROM驱动,液晶驱动等等。协议栈主要负责解析一些协议,如USB协议。文件系统主要负责文件管理,操作,将MP3文件从MMC卡或硬盘中准确读出来播放。各个任务及人机接口主要负责人机界面通信,如将按键发到系统中,执行相应操作,LCD或者LED指示系统运行状态或者操作结果。 2.源文件介绍 1.系统部分 main.c – 系统总调度。 variable.c – 全局变量声明文件。 STARTUP.A51 – 启动代码,包括寄存器初始化等功能。
2.驱动部分 Song_drv.c – 歌曲驱动,包括音量驱动,歌曲初始化等功能。 Mmc_drv.c – mmc卡驱动。 Ide_drv.c – 硬盘驱动。 Mp3_drv.c – mp3硬件解码器驱动。 Lcd_drv.c – 液晶驱动文件。 Cdrom_drv.c – 光驱驱动文件。 Usb_drv.c – usb驱动文件。 Aud_drv.c – 音频接口驱动文件。 Key_drv.c – 按键驱动。 Timer_drv.c – 定时器驱动。 Ser_drv.c – 串口驱动。 Remote_drv.c – 红外遥控接收驱动。
3.任务部分 Song_task.c – 歌曲播放控制任务。 Disp_task.c – 显示控制流程。 Key_task.c – 按键解析控制流程。 Usb_task.c – u盘驱动任务。 Cdrom_task.c – 光驱控制流程。
4.文件系统部分 Fs_variable.c – 文件系统变量声明文件。 Fat.c – fat文件系统。 File.c – 文件操作驱动。
5.其他 Clock.c – 时钟设置文件。 Media.c – 媒体驱动。 Sbc.c – u盘协议。
|