基于CH375实现单片机读取U盘中的音频

上传人:无*** 文档编号:40649081 上传时间:2021-11-17 格式:DOC 页数:38 大小:972.51KB
收藏 版权申诉 举报 下载
基于CH375实现单片机读取U盘中的音频_第1页
第1页 / 共38页
基于CH375实现单片机读取U盘中的音频_第2页
第2页 / 共38页
基于CH375实现单片机读取U盘中的音频_第3页
第3页 / 共38页
资源描述:

《基于CH375实现单片机读取U盘中的音频》由会员分享,可在线阅读,更多相关《基于CH375实现单片机读取U盘中的音频(38页珍藏版)》请在装配图网上搜索。

1、基于 CH375 实现单片机读取 U 盘中的音频专业年级专业年级 07 电子科学与技术 学学 号号 2007242720072427 姓姓 名名 指导教师指导教师 评评 阅阅 人人 20112011 年年 6 6 月月 1本科毕业设计(论文)任务书(理(理 工工 科科 类)类)、毕业设计(论文)题目: 基于 CH375 实现单片机读取 U 盘中的音频 、毕业设计(论文)工作内容(从综合运用知识、研究方案的设计、研究方法和手段的运用、应用文献资料、数据分析处理、图纸质量、技术或观点创新等方面详细说明):MP3 音频播放器将播放器与存储器的一体化设计使其便于携带,但也存在一些问题,比如存储容量固定

2、;又如车载 MP3 等不方便移动的播放器难以应用。所以将存储器与播放器分离成为一个发展方向。本设计主要研究如何用单片机控制 HOSTUSB 读取U 盘中的音频文件并将其解码播放。设计同时为采用 HOST USB 实现实时数据采集提供了一种解决方案。系统功能主要包括读取 U 盘数据和 MP3 解码播放两部分。实现设计功能需要 USB 接口芯片、MP3 解码芯片、主控制器和其他外围电路。 本设计要求主要完成 (1)掌握单片机的最小系统设计; (2)采用 CH375 完成 U 盘的识别和数据的读取; (3)采用适当的音频解码芯片将 U 盘中读取的 MP3 文件解码播放出流畅的音乐; (4)外围电路包

3、括电源、显示电路以及控制按键等; (5)完成软硬件的调试,提出一些可扩展的应用; (6)使用 PROTEL 设计系统的 PCB 板; (7)阅读参考文献,并翻译相关外文资料; (8)完成毕业设计论文。 、进度安排: 2 2010.11.282011.12.31 查阅搜集资料,构思总体设计 2010.12.212011.1.15 构思设计方案,完成硬件的采购 2011.2.142011.3.15 完成设计方案,硬件电路调试 2011.3.162011.3.30 软件设计调试 2011.4.12011.4.15 系统调试,准备中期检查 2011.4.162011.4.30 完成系统软硬件,外文资料

4、翻译, 2011.5.12011.5.24 完成论文 2011.5.252011.6.5 验收,论文答辩 、主要参考资料:马潮.AMTEGA8原理及应用手册M.北京:清华大学出版社.2003. 宋建国.AVR单片机原理及应用M.北京:北京航空航天大学出版社,2000 . 南京沁恒电子有限公司.USB总线接口芯片CH375中文手册 EB/OL.http:/ . 赵艳华.USB技术的嵌人式系统应用研究D.青岛:中国海洋大学,2006. VLSI Solution Oy. VS1003MP3/WMA AUDIO CODEC.VLSI Solution Oy,2005. 指导教师: 刘 翔 , 201

5、0 年 11 月 20 日学生姓名: 陈 琛 ,专业年级: 2007 系负责人审核意见(从选题是否符合专业培养目标、是否结合科研或工程实际、综合训练程度、内容难度及工作量等方面加以审核): 系负责人签字: , 年 月 日 3摘要摘要随着计算机技术的快速发展,USB 存储设备的使用已经非常的广泛,随着 USB 规汇范的完善和成熟,USB 外设和的各类不断丰富,应用领域也不断扩大。本课题的设计目标是:基于单片机和 USB 总线接口芯片 CH375 以及音频解码芯片VS1003,设计简易 MP3 播放器,实现对 U 盘音频读取。本设计介绍了外部单片机读取U 盘音频基本方法及其硬件连接方法。主要涉及单

6、片机最小系统的设计,USB 接口芯片 CH375 的简单应用,音频解码芯片 VS1003 的使用和各功能模块的互联。MP3 解码和音频放大处理器采用 VS1003B,它内置 DSP 处理器,可以通过对寄存器的设置来调节相应的声音频率幅度,产生明显的高低音和重低音。CH375 则工作在 HOSTUSB 方式下通过 USB 接口完成对 U 盘的识别和 MP3 文件的读取。经过软硬件的测试,该系统能保证大容量 U 盘中 MP3 文件的顺畅播放,实现了 MP3 播放器中播放单元与存储单元的分离,可以方便地将 U 盘改造成 MP3 播放器,使 MP3 播放器更加方便灵活且不受存储容量的限制。关键词:U

7、盘;CH375;USB 接口芯片;STC12C5A32S2;VS1003 4AbstractWith the rapid development of computer technology, The use of USB storage devices has been very broad, with the USB Regulation Department of perfection and maturity range, USB peripherals and enrich the various application fields are expanding. This desi

8、gn goal is: Based on the microcontroller and USB bus interface chip CH375 and audio decoder chip VS1003, design simple MP3 player, realize U disc audio reading This design introduces an external microcontroller to read U disk audio basic method and its hardware connection, mainly involves the design

9、 of microcontroller Minimum system , simple application of USB interface chip CH375 ,the use of audio decoder chip VS1003 and the modules interconnection. MP3 decoding and audio amplification processor VS1003B, its built-in DSP processor, you can register through the sound settings to adjust the cor

10、responding frequency range, resulting in significantly high and low tones and bass. CH375 work through the USB HOSTUSB way to complete U disk MP3 files identifying and reading. After testing the hardware and software, the system can guarantee large capacity and smooth U disk MP3 file playback, MP3 p

11、layers realized play unit and the memory cell separation, can easily be transformed into a U disk MP3 player, the MP3 player devices are more convenient and flexible storage capacity is not limited. Keywords: U disk; CH375; USB interface chip; STC12C5A32S2; VS1003目 录 5摘摘 要要.3 3ABSTRACTABSTRACT.4 4目目

12、 录录.5 5第一章第一章 绪绪 论论.7 7第二章第二章 总体方案设计总体方案设计.8 8一 总体设计分析 .8二 功能模块设计选择 .9(一)MCU 的选择.9(二)USB 接口模块中芯片的选择.10(三)电源选择 .11第三章第三章 硬件设计分析硬件设计分析.1212一 CH375 接口电路.12(一)CH375 资料简介.12(二)电路设计.13二 STC12C5A32S2 单片机最小系统电路.15 (一)电路设计 .16 (二)电源模块 .16三 VS1003 解码模块 .17(一)VS1003 资料简介.17(二)电路设计.21四 串口电平转换电路 .21(一)MAX232 资料简

13、介.21(二)电路设计.22 (三)RS232 标准(协议) .22五 按键控制模块 .23六 LED 显示模块.23第四章第四章 软件设计分析软件设计分析.2424一 主程序部分 .24二 USB 子程序.26三 按键子程序 .29四 串口子程序 .30第五章第五章 方案的测试与分析方案的测试与分析.3131 一 VS1003 模块调试 .31二 CH375 模块调试.32三 串口模块调试 .32第六章第六章 总结总结.3333参考文献参考文献.3434附录附录.3535 6第1章 绪 论 7随着计算机技术的快速发展,USB(Universal Serial Bus)存储设备的使用已经非常普

14、遍,USB 用于将适用 USB 的外围设备(device)连接到主机(host),实现二者之间数据传输的外部总线结构;是一种快速、灵活的总线接口。它是一种应用在 PC领域的新型接口技术。早在 1995 年,就已经有 PC 机带有 USB 接口了,但由于缺乏软件及硬件设备的支持,这些 PC 机的 USB 接口都闲置未用。1998 年后,随着微软在Windows 98 中内置了对 USB 接口的支持模块,加上 USB 设备的日渐增多,USB 接口才逐步走进了实用阶段。近年来,随着大量支持 USB 的个人电脑的普及,USB 逐步成为PC 机的标准接口已经是大势所趋。随着 USB 技术的发展,计算机的

15、移动存储介质普遍采用 U 盘或移动硬盘。USB 设备之所以会被大量应用,主要具有以下优点:1.可以热插拔。这就让用户在使用外接设备时,不需要重复“关机将并口或串口电缆接上再开机”这样的动作,而是直接在 PC 开机时,就可以将 USB 电缆插上使用。2.携带方便,USB 设备大多以“小、轻、薄”见长,对用户来说,同样 20G 的硬盘,USB 硬盘比 IDE 硬盘要轻一半的重量。3.标准统一,大家常见的是 IDE 接口的硬盘,串口的鼠标键盘,并口的打印机扫描仪,可是有了 USB 之后,这些应用外设统统可以用同样的标准与 PC 连接,这时就有了 USB 硬盘、USB 鼠标、USB 打印机,等等。4.

16、可以连接多个设备。USB 在 PC 上往往具有多个接口,可以同时连接几个设备,如果接上一个有 4 个端口的 USBHUB 时,就可以再连上 4 个 USB 设备,以此类推,尽可以连下去,将你家的设备都同时连在一台 PC 上而不会有任何问题(注:最高可连接至 127 个设备)。MP3 播放器向大容量、高音质、小巧便携不断发展。虽然播放器与存储器的一体化设计使 MP3 播放器便于携带,但与此同时他也带来了很多新的问题,比如存储容量固定,如果想装下更多的歌曲只能去购买新的产品,造成了巨大的浪费;另一方面,一体化又限制了 MP3 播放器在其他领域的应用,比如车载 MP3 等不方便移动的播放器。本设计实

17、现了基于 USB 接口实现 MP3 播放器播放部分与存储部分(U 盘)的分离,实现了存储容量可变,有保留 MP3 便携的特点。 8第2章 总体方案设计一 总体设计分析基于单片机和 CH375 的 U 盘音频读取系统包括了单片机最小系统模块、 USB 接口电路、音频解码模块、串口电平转换电路、按键控制等模块。单片机最小系统模块作为整个设计中的主控模块,联系和控制其他模块;USB 接口电路读取优盘内容并传输到其他模块;音频解码模块读取音频数据并解码,从而播放出音乐;系统方框图如图 2.1.1 所示:图 2.1.1 系统方框图在各个模块中:CH375 作为接口芯片,当发现有 USB 设备接入,产生中

18、断通知 8051,就可以进行读写操作。8051 对 U 盘的操作符合 Fat32 的数据格式,以扇区为单位对其进行读写。MP3 播放音乐的过程,是 8051 通过 CH375(USB 接口芯片)从 U 盘中读取数据文件,然后发送到 VS1003 解码芯片中去进行解码,从耳机接口输出音乐信号。整个系统采用 9V 电源供电,通过三端稳压电路 7805 输出 5V 稳定的直流电压供给开发板使用。它只是一个播放设备,内不带 FLASH 及存储芯片,如需正常工作,必需外加 U 盘存储数据。MAX232 为 RS232 标准串口设计的单电源电平转换芯片,从而使RS-232 接口与计算机连接,进行数据传送。

19、单片机通过 USB 总线的通用接口芯片CH375 直接对 U 盘进行读操作。本设计成本较低,质量较优,方便使用。具有以下主要优点:单片机接口芯片U 盘音频解码器耳机LED按键 9免安装,不必忍受复杂的安装过程,只需将 USB 插口插入到产品中即可,轻松将网络流行音乐转至音响;MP3 属于数字音乐,音质优美可与 CD 媲美;歌曲容量大一次可写入几十以至上百首歌曲;可以反复擦写,随意编辑,可把我们最爱听的歌曲编成专辑;操控灵活方便,一键触摸式操控,操作自如安全方便体积小巧便于携带,不占用过多空间。主要要求:读取 U 盘的中的 MP3、WMA 格式数据,播放出高音质流畅的音乐。使用时可以通过按键实现

20、上一曲、下一曲、音量控制等功能,并可以将歌曲名称通过 LCD 显示。指标:信噪比:60dB 以上频率响应范围:2020000Hz采样频率:支持播放 44.1Khz 的 MP3 音频文件输出功率:单一声道的最大输出功率 7-18mW数据下载:采用的是 USB1.1 全速模式允许误差:总谐波失真:THD0.5%二 功能模块设计选择(1)MCU 的选择系统中需要一个单片机实现联络各模块、存储控制等功能,这就需要一个单片机最小系统。首先介绍一下单片机,单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器 CPU 随机存储器 RAM、只读存储器ROM、多种 I/O 口和中

21、断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D 转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。至于 MCU 的选择有以下两个方案:方案一:AT89S51AT89S51 是一个低功耗,高性能 CMOS8 位单片机,片内含 4kBytesISP(In-system 10programmable)的可反复擦写 1000 次的 Flash 只读程序存储器,器件采用 ATMEL 公司的高密度、非易失性存储技术制造,兼容标准 MCS-51 指令系统及 80C51 引脚结构,芯片内集成了通用 8 位中央处理器和 ISPFlash 存储单元,AT89

22、S51 在众多嵌入式控制应用系统中得到广泛应用。方案二:STC12C5A32S2STC12C5A32S2 是高速,低功耗,超强抗干扰的新一代 51 单片机,指令代码完全兼容 8051,但速度快 812 倍,内部集成 MAX810 专用复位电路,针对电机控制,强干扰场合。特点:超强抗干扰;速度快,1个时钟/机器周期,可用低频晶振,大幅降低EMI;输入/输出口多,A/D做按键扫描还可以节省很多I/O;超低功耗:掉电模式可由外部中断唤醒,适用于电池供电系统,如水表、气表、便携设备等。由于 AT89s51AT89s51 程序存储空间只有 4KB,不能满足此项目的要求,比较这两种我们选用 STC12C5

23、A32S2。STC12C5A32S2 为高速低功耗单片机,STC12 系列引脚、内核及指令完全兼容的单片机 8051。并具有增强功能,有单时钟/机器周期,片内有 EEPROM 功能,带快速的A/D 功能(10 位精度,8 路通道)等,有 ISP 和 IAP 编程方式,60kB 的系内可编程FIASH,2kBEEPROM,4kBSRAM,单时钟/机器周期使单片机具有高速处理能力,能保证MP3 文件的顺播放。(二)USB 接口模块中芯片的选择USB 接口芯片的选择有以下两个方案:方案一:方案一:PB375PB375相比 CH375,PB375 价格要低一些。功能:新建、删除、读写数据,打开关闭文件

24、检测 U 盘是否存在,满足单片机及嵌入式系统读写操作 U 盘的要求。技术特征:用于嵌入式系统/单片机读写 U 盘、闪盘、闪存盘、USB 移动硬盘、 11USB 读卡器等。支持符合 USB 相关规范基于 Bulk-Only 传输协议的各种 U 盘/闪存盘/外置硬盘。支持文件系统 FAT12 和 FAT16 及 FAT32。SPI 接口,支持 3.3V 电平 。单芯片解决方案,该模块只需要一个主控芯片外加少量的电容电阻便可。方案二:方案二:CH375CH375CH375 具有 8 位数据总线和读、写、片选控制线以及中断输出,可以方便地挂接到单片机/DSP/MCU/MPU 等控制器的系统总线上。对于

25、 USB 存储设备,CH375 直接提供了数据块的读写接口,以 512b 的物理扇区为基本读写单位,从而将 USB 存储设备简化为一种外部数据存储器,单片机可以自由读写 USB 存储设备中的数据,也可以自由定义其数据结构。CH375 以 C 语言子程序库提供了 USB 存储设备的文件级接口,这些应用层接口 API包含了常用的文件级操作,可以移植并嵌入到各种常用的单片机程序中。CH375 的 U 盘文件级子程序库具有以下特性:支持常用的 FAT12、FAT16 和 FAT32文件系统,磁盘容量可达 100GB 以上,支持多级子目录,支持 8.3 格式的大写字母文件名,支持文件打开、新建、删除、读

26、写以及搜索等。通过上述比较,CH375 资料更丰富,因为 SCH 公司把固件都封装好的,CH375 支持特殊的底层操作。本方案用的 U 盘存储,则 CH375 相当的有用,直接从 U 盘中读取数据,方便使用。(三)电源选择本设计用到的电源为 5V,属于中小功率稳压电源,所以可以采用三端稳压芯片LM7805。用其设计的线性稳压电路,具有结构简单、输出电压稳定性强、纹波电压小等优点,但是,在负载电流较大且输出电压较低时,其自身的功耗很大。但给本系统供电,完全满足要求。 12第3章 硬件设计分析硬件电路主要由单片机最小系统、CH375 接口电路、VS1003 解码模块、串口电平转换电路、按键控制模块

27、、LED 显示模块组成。一 CH375 接口电路图 3.1.1.1 CH375 接口电路(1)CH375 资料简介CH375 是一个 USB 总线的通用接口芯片,支持 USB-HOST 主机方式和 USB-DEVICE/SLAVE 设备方式。系统只要在原硬件中增加 1 个 CH375 芯片就可以直接调用CH375 提供的子程序库来直接读取 U 盘中的数据,从而实现了普通单片机与 U 盘的通讯。CH375 具有 8 位数据总线和读、写、片选控制线以及中断输出,可以方便地挂接到单片机等控制器的系统总线上。在 USB 主机方式下,CH375 还提供了串行通讯方式,通过串行输入、串行输出和中断输出与单

28、片机/DSP/MCU/MPU 等相连接。CH375 的 USB 主机方式支持常用的 USB 全速设备,外部单片机可以通过 CH375 按照相应的 USB 协议与 USB 设备通讯。CH375 还内置了处理 Mass-Storage 海量存储设备的专用通讯协议的固件,外部单片机可以直接以扇区为基本单位读写常用的 USB 存储 13设备(包括 USB 硬盘/USB 闪存盘/U 盘) 。CH375 特点:全速 USB-HOST 主机接口,兼容 USB V2.0,外围元器件只需要晶体和电容。全速设备接口,完全兼容 CH372 芯片,支持动态切换主机与设备方式。主机端点输入和输出缓冲区各 64 字节,支

29、持常用的 12Mbps 全速 USB 设备。支持 USB 设备的控制传输、批量传输、中断传输。自动检测 USB 设备的连接和断开,提供设备连接和断开的事件通知。内置控制传输的协议处理器,简化常用的控制传输。内置固件处理海量存储设备的专用通讯协议,支持 Bulk-Only 传输协议和SCSI、UFI、RBC 或等效命令集的 USB 存储设备(包括 USB 硬盘/USB 闪存盘/U 盘) 。通过 U 盘文件级子程序库实现单片机读写 USB 存储设备中的文件。并行接口包含 8 位数据总线,4 线控制:读选通、写选通、片选输入、中断输出。串行接口包含串行输入、串行输出、中断输出,支持通讯波特率动态调整

30、。支持 5V 电源电压和 3.3V 电源电压,CH375A 芯片还支持低功耗模式。(二)电路设计USB 接口模块电路图中以 CH375 作为中心芯片,各引脚以网络接口与其他模块互联,电路如图 3.1.1.1 所示。将 CH375 的 TXD 引脚通过 lk 的下拉电阻接地,RXD 端悬空使 CH375 工作于并行传输方式。8 位并行数据线 D0D7 与 AT 的 P0 口相连实现数据与命令的并行传输,INT,WR,RD,A0 和 CS 五根控制线分别连接至单片机的 P3.5P3.7 和 P2.0,P2.1 引脚。RD,WR 和 CS 分别为读选通、写选通和片选,低电平有效;INT 中断请求为低

31、电平有效;地址输入线 A0 为高电平时选择命令端口,可以向 CH375 写入命令;当 A0 引脚为低电平时选择数据端口,可以向 CH375 读写数据。CH375 芯片的 TXD 引脚接低电平,工作于并口方式。在并口方式下,CH375 只需要与单片机/DSP/MCU 连接 3 个信号线,TXD 引脚、RXD 引脚以及 INT#引脚,其他引脚都可以悬空。由于 INT#引脚和 TXD 引脚在 CH375 复位期间只能提供微弱的高电平输出电流,在进行较远距离的连接时,为了避免 INT#或者 TXD 在 CH375 复位期间受到干扰而导致单片机误操作,可以在 INT#引 14脚或者 TXD 引脚上加阻值

32、为 15k 的上拉电阻,以维持较稳定的高电平。在 CH375芯片复位完成后,INT#引脚和 TXD 引脚将能够提供 5mA 的高电平输出电流或者 5mA 的低电平吸入电流。USB 总线包括一对 5V 电源线和一对数据信号线,通常,+5V 电源线是红色,接地线是黑色,D+信号线是绿色,D-信号线是白色。USB 插座 P1 可以直接连接 USB 设备,也可以在提供给 USB 设备的+5V 电源线上串接具有限流作用的电阻 R3、R4,USB 电源电压必须是 5V。电容C8用于外部电源退耦,C8是容量为0.1F的独石或高频瓷片电容。电容C6用于CH375 内部电源节点退耦,C6是容量为0.01F 的独

33、石或高频瓷片电容。晶振 Y2、电容 C4 和 C5 用于 CH375 的时钟振荡电路。,Y2 的频率是 12MHz,C4 和 C5是容量约为 20pF 的独石或高频瓷片电容。如果电源上电过程较慢并且电源断电后放电时间较长,那么 CH375 将不能可靠复位。可以在 RSTI 引脚与 VCC 之间跨接一个容量为 0.47F 的电容 C7,同时可以减少干扰。此电路是由 USB 总线的通用接口芯片 ch375 为核心的支持 USB 设备的控制传输、批量传输、中断传输的电路。CH375 通过相关 USB 协议可以很方便的和其他 USB 设备进行连接。通过这个电路,U 盘能够和单片机进行较快的数据传输。并

34、口信号线包括:8 位双向数据总线 D7D0、读选通输入引脚 RD#、写选通输入引脚 WR#、片选输入引脚 CS#、中断输出引脚 INT#以及地址输入引脚 A0。通过被动并行接口,CH375 芯片可以很方便地挂接到各种 8 位单片机、DSP、MCU 的系统总线上,并且可以与多个外围器件共存。CH375 芯片的 RD#和 WR#可以分别连接到单片机的读选通输出引脚和写选通输出引脚。CS#由地址译码电路驱动,用于当单片机具有多个外围器件时进行设备选择。INT#输出的中断请求是低电平有效,可以连接到单片机的中断输入引脚或者普通 I/O引脚,单片机可以使用中断方式或者查询方式获知中断请求。当 WR#为高

35、电平并且 CS#和 RD#及 A0 都为低电平时,CH375 中的数据通过D7D0 输出;当 RD#为高电平并且 CS#和 WR#及 A0 都为低电平时,D7D0 上的数据 15被写入 CH375 芯片中;当 RD#为高电平并且 CS#和 WR#都为低电平而 A0 为高电平时,D7D0 上的数据被作为命令码写入 CH375 芯片中。电路使用时注意:一是复位信号的给定,即 RSTI 脚,高电平有效复位,可用单片机的 IO 口进行控制复位,也可以直接和单片机的复位引脚相连。复位后可通过测量 RST 脚和 RST#脚上的电平来知道 CH375 是否正确复位了,正常电压是 RST 脚为低电平,RST#

36、为高电平。二是晶振是否正常工作。CH375 只能使用 12MHz 的晶振,配有两个 20P 左右的电容,也可使用有源晶振,如果用示波器测量,请使用 X10 档测量,频率不能相差太大,否则 CH375 无法正常工作。三是电源问题,CH375B 是 5V 供电的。要检测芯片是否正常工作,一般通过写 0 x06 命令到 CH375,接着再写一个任意数据,然后读回一个数据,这个数据应该与写的数据的取反才对,否则就是单片机与CH375 之间硬件连接线路有问题。需要注意的是操作的时序,即命令与命令之间,命令与数据之间,以及数据与数据之间必须有一个延时。二 STC12C5A32S2 单片机最小系统电路图 3

37、.2.1.1 STC12C5A32S2 最小系统 16(一)电路设计如图 3.2.1.1 所示单片机最小系统由单片机、时钟电路、复位电路和电源模块组成。MCUMCU:单片机 P0.0P0.7 连接到 CH375 的 8 位双向数据总线 D0D7,1 脚至 4 脚,29 脚至 31 脚接到显示电路,7,8,12,13 脚接到按键控制电路。时钟电路时钟电路: STC12C5A32S2 使用 22.1184MHz 的晶体振荡器作为振荡源,由于单片机内部带有振荡电路,所以外部只要连接一个晶振和两个电容即可,电容容量为30P。单片机晶振提供的时钟频率越高,那么单片机运行速度就越快,单片机的一切指令的执行

38、都是建立在单片机晶振提供的时钟频率。复位电路复位电路:复位电平的持续时间必须大于单片机的两个机器周期。按键复位:在复位电容 C3 上并联一个开关,当开关 S7 按下时电容 C3 被放电、RST 也被拉到高电平,而且由于电容的充电会保持一段时间的高电平来使单片机复位。(二) 电源模块电源模块图 3.2.2.1 电源模块电源模块的稳定可靠是系统平稳运行的前提和基础。如图 3.2.2.1 所示,此最小系统中的电源模块使用外部稳定的 9V 电源供电。电源电路中接入了发光二极管 D9 显示电源模块是否工作,R40 为 LED 的限流电阻。7805 是三端正电源稳压器,它的封装形式为 T0-220,最大输

39、出电流为 1.5A,输 17出电压为 5V。它有一系列固定的电压输出,应用非常的广泛。由于内部电流的限制,以及过热保护和安全工作区的保护,使用起来可靠、方便,而且价格便宜 。在本模块中 7805 输出电压为正 5V,供各模块使用。三 VS1003 解码模块图 3.3.1.1 音频解码模块(一)VS1003 资料简介1.VS1003 概述VS1003 是一个单片 MP3/WMA/MIDI 音频解码器和 ADPCM 编码器。它包含一个高性能,自主产权的低功耗 DSP 处理器核 VS_DSP4,工作数据存储器,为用户应用提供 5KB 的指令 RAM 和 0.5KB 的数据 RAM。串行的控制和数据接

40、口, 4 个常规用途的 I/O 口,一个 UART,也有一个高品质可变采样率的 ADC 和立体声 DAC,还有一个耳机放大器和地线缓冲器。 18VS1003 通过一个串行接口来接收输入的比特流,它可以作为一个系统的从机。输入的比特流被解码,然后通过一个数字音量控制器到达一个18 位过采样多位-DAC。通过串行总线控制解码器。除了基本的解码,在用户RAM 中它还可以做其他特殊应用,例如 DSP 音效处理。VS1003 特性:能解码 MPEG1 和 MPEG2 音频层 III(CBR+VBR+ABR);WMA 4.0/4.1/7/8/9 5-384kbps 所有流文件WAV(PCM+IMAAD-P

41、CM);产生 MIDI/SP-MIDI 文件。对话筒输入或线路输入的音频信号进行IMAADPCM 编码支持 MP3 和 WAV 流高低音控制单时钟操作 12.13MHz内部 PLL 锁相环时钟倍频器低功耗内含高性能片上立体声数模转换器,两声道间无相位差内含能驱动 30 欧负载的耳机驱动器模拟,数字, I/O 单独供电为用户代码和数据准备的 5.5KB 片上 RAM串行的控制,数据接口可被用作微处理器的从机特殊应用的 SPIFlash 引导供调试用途的 UART 接口新功能可以通过软件和 4GPIO 添加使用时注意事项:1.必须相互连接并尽量靠近 VS1003 以避免锁存上拉;2.最大的采样率

42、XTAL1/256,决定了能以正确的速度播放的音频采样率。因此,为了能播放 48KHz 采样率的音频, XTAL1 至少为 12.288MHz 才能获得正确的播放度。3.复位值为 1.0 x,复位后设置为 3.0 x 和允许在 WMA 回放的过程中 1.0 x 增 19加。4.在容许的 CVDD 电压范围内,最大的时钟频率是 50.0MHz(4x12.288MHz 或3.5x13.0MHz)。表 3.3.2.1 显示 SCI_MODE(模式寄存器)用于控制 VS1003 的具体操作 :表 3.3.2.1 SCI_MODE 操作说明位名称功能值描述0SM_DIFF微分01正常同音频左声道反相1S

43、M_SETTOZERO设置为 001对错2SM_RESET软件复位01不复位复位3SM_OUTOFWAV跳出 WAV 解码01不是4SMPDOWN掉电01电源开掉电模式5SM_TESTS允许 SDI 测试01不允许允许6SM_STREAM流模式01不是7SM_SETTOZERO2设置为 001对错8SM_DACTDCLK 有效沿01上升沿下降沿9SM_SDIORDSDI 位顺序01高位在前低位在前10SM_SDISHARE共享 SPI 片选01不是11SM_SDINEWVS1003 自身 SPI 模式01不是 20当 SM_DIFF 被置位,播放器反相左声道的输出,对于一个立体声输入,将得到一

44、个虚拟的环绕声。若是单声道输入,将得到一个差分的左/右声道信号。当 SM_RESET 被置位,软件复位将被初始化。此位会自动清零。如果想在 WAV,WMA 或是 MIDI 文件的解码过程中停止,需要置位SM_OUTOFWAV,直到 SM_ OUTOFWAV 被清零且遵照 DREQ 的情况下才能发送数据。 SCI_HDAT1 也将被清零。对于 WMA 和 MIDI,最可靠的继续传送数据流,是发送0。SM_PDOWM 位设置 VS1003 为软件掉电模式,软件掉电效果不及XRESET 上的硬件掉电。若 SM_TESTS 被置位,将允许 SDI 测试。SM_STREAM 允许 VS1003 的流模式

45、,在这个模式下 ,数据必须尽可能保持间隔的平滑(最好数据块小于 512 字节),VS1003 总是尝试让输入缓冲区保持半满 ,改变回放速度上升到 5%。为了获得优质的声音 ,平均速度误差必须在 0.5%之内,,比特率不能超过 160kbit/s 且你能使用可变比特率 VBR.详见 VS10 xx 应用笔记,WMA 文件不能工作于此模式。SM_DACT 定义了 SDI 有效的时钟沿 ,当为 0 时,在上升沿读数据 ,当为 1 时,在下降沿读数据。当 SM_SDIORD 被清零,SDI 默认按高位在前传送字节数据 .若 SM_SDIORD 被置位,则按相反的位顺序传送 ,即位 0 在前,位 7 在

46、后。对于字节 ,仍然按默认的顺序传送.这个寄存器位对 SCI 总线无效。置位 SM_SDISHARE 使 SCI 和 SDI 共用享用的片选信号。置位 SM_SDINEW 将使能 VS1002 自身串行模式。 VS1003 启动的时候此位默认为 1。当同时使能 SM_ADPCM 和 SM_RESET,用户将使能 IMAADPCM 录音模式。如果 SM_ADPCM_HP 和 SM_ADPCM 和 SM_RESET 一起被置位 ,ADPCM 模式将从一个高通滤波器开始 .话音在这里将大部分背景噪音滤除。12SM_ADPCMADPCM 录音允许01不是13SM_ADPCM_HPADPCM 高通滤波允

47、许01不是14SM_LINE_INADPCM 录音源选择01麦克风线路输入 21SM_LINE_IN 用来选择 ADPCM 录音的音源 ,如果是 0,则麦克风输入脚 MICP 和MICN 被使用,如果 1,LINEIN 被使用。SCI_STATUS 包含了 VS1003 的当前信息,用户可以在受到音频干扰的时候让VS1003 关闭。SS_VER 为 0,VS1001;为 1,VS1011;为 2,VS1002;为3,VS1003.SS_APDOWN2 控制模拟驱动器掉电。正常情况下,这个位是受系统硬件控制。尽管如此,若想让 VS1003 进入掉电短暂的时间,则把此为变为1。SS_APDOWN1

48、 控制内部模拟部分掉电,此位仅被系统硬件使用。2.封装VS1003 为扁平四方贴片式封装,共 48 个引脚。(二)电路设计电路如图 3.3.1.1 所示,VSlO03 的所有数据和控制命令均通过 SPI 总线接口实现,包括 3 条 SPI 数据线和 4 条控制线, 1,2 脚分别接同,反相差分话筒输入;3 脚低电平有效,异步复位端; 4,20,21,22 脚接处理器核与 I/O 地;5,7 脚是处理器核电源, 6 脚是 I/O 电源;8 脚数据请求,输入总线; 9,10 脚通用串行数据总线时钟,数据; 17,18 脚外接 12.228M 晶振;28 脚为串行总线时钟,29,30 脚是串行输入,

49、输出; 33,34 脚为通用 I/O,接 100K 下拉电阻;39 脚右声道输出; 42 脚公共地缓冲。四 串口电平转换电路 图 3.4.1.1 串口电平转换电路(一)MAX232 资料简介MX232芯片是美信公司专门为电脑的RS-232标准串口设计的单电源电平转换芯片,使用+5v单电源供电。 22第一部分是电荷泵电路。由1、2、3、4、5、6脚和4只电容构成。功能是产生+12v和-12v两个电源,提供给RS-232串口电平的需要。第二部分是数据转换通道。由7、8、9、10、11、12、13、14脚构成两个数据通道。 其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T

50、1OUT)为第一数据通道。 8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。 TTL/CMOS 数据从 T1IN、T2IN 输入转换成 RS-232 数据从 T1OUT、T2OUT 送到电脑 DB9插头;DB9 插头的 RS-232 数据从 R1IN、R2IN 输入转换成 TTL/CMOS 数据后从R1OUT、R2OUT 输出。第三部分是供电。15 脚 GND、16 脚 VCC(+5v)。主要特点主要特点1.符合所有的RS-232C技术标准 2.只需要单一 +5V电源供电 3.片载电荷泵具有升压、电压极性反转能力,能够产生+10V和-10V电压V+、

51、V- 4.功耗低,典型供电电流5mA 5.内部集成 2 个 RS-232C 驱动器6.内部集成两个RS-232C接收器(二)电路设计如图 3.4.1.1 所示,芯片 MAX232 是用标准 RS232 电平与 TTL 电平的转换,标准RS232 电平很高,达正负 15V;而常用的 TTL 电平最高 5V。通常我们用的单片机是TTL 电平(正负 5V) ,RS-232 接口的信号电平与 TTL 电平不兼容故需使用电平转换电路方能与 TTL 电路连接。MAX232 的 10 脚 T2IN 接单片机的 TXD 端,TTL 电平从单片机的 TXD 端发出,经过MAX232 转换为 RS232 电平后从

52、 MAX232 的 9 脚 T1OUT 发出,再流向单片机的 RXD 端接收。图 3.4.1.1 所示电路图是用来连接单片机和电脑的。通过本电路可下载程序:单片机和主机通过此串口连接。(3)RS232 标准(协议) RS-232C 标准(协议)的全称是 EIA-RS-232C 标准,其中 EIA 23(Electronic Industry Association)代表美国电子工业协会, RS(recommeded standard)代表推荐标准, 232 是标识号, C 代表 RS232 的最新一次修改(1969),在这之前,有 RS232B、RS232A。它规定连接电缆和机械、电气特性、信

53、号功能及传送过程。常用物理标准还有有EIA RS422A、EIA RS-423A、EIA RS485。目前在 IBM PC 机上的 COM1、COM2 接口,就是 RS-232C 接口。 五 按键控制模块图3.4.5.1 按键控制模块S1:播放键,按下此键开始播放歌曲;S2:停止键,按下此键结束歌曲播放;S3:上一首选择键,按下此键选定当前歌曲的上一首播放;S4:下一首选择键,按下此键选定当前歌曲的下一首播放;S5:提高音量;S6:降低音量; 24六 LED 显示模块图 3.4.6.1 LED 显示模块如图 3.4.6.1 所示共阳极 LED 发光管,阴极依次接至单片机 P1.3,P1.2,P

54、1.1,P1.0,P4.4,P4.5,P4.6 引脚。由 I/O 口控制可以进行基本的按键实验和流水灯实验。第四章第四章 软件设计分析软件设计分析软件由主程序、USB 模块程序、VS1003 驱动程序、按键程序等。各子程序之间相互协调调用,共同完成对 U 盘音频的读取。在本设备中,CH375 作为 USB 主机,当发现有 USB 设备接入,产生中断通知 51 单片机有外部 USB 设备可以进行读写操作。51 单片机对 U 盘的操作符合 Fat32 的数据格式,以扇区为单位对其进行读写。MP3 播放音乐的过程是 8051 通过 CH375USB 主机芯片从 u 盘中读取数据文件,然后发送到 VS

55、1003 解码芯片中去进行解码,从耳机接口输出音乐信号。一 主程序部分 N开始返回播放主程序结束系统初始化查询中断U 盘是否插入U 盘复位/加载查询 FAT 文件系统打开 U 盘指定文件 25 Y N Y图 4.1.1 主程序流程图主程序实现:(一)进入 USB 主机模式,要读/写 U 盘,必须先设置 CH375 使其工作于 USB 主机方式。(二)将 U 盘当作存储器进行读写,方法与读写闪存差不多,操作简单且速度快。单片机读写 U 盘文件程序分层如图 4.1.2 所示: USB图 4.1.2 读/写 U 盘文件分层图系统软件实现分如下几个步骤:文件级 API 应用层接口FAT32/16/12

56、 文件系统层SCSI/UFI/RBC 命令层BulkOnly 传输协议层USB 基本传输:控制/批量USBHOST 硬件接口芯片以扇区读/写闪存或硬盘BulkOnly 传输协议层USB 基本传输:控制/批量USBDEVICE 硬件接口芯片 261.初始化单片机和 VSl003:初始化单片机包括设置 SPI 总线,设置 51,VSl003B 和CH375 的通信端口,调整他们的输入与数出。VS1003 芯片初始化包括置它的重低音,内部时钟频率和音量等。2.设置 CH357 工作模式:设为主机方式,自动产生 SOF 包和送命令字等步骤。3.单片机工作方式:等待 U 盘插人,检索 U 盘根目录下的文

57、件,计算文件名长度, 指定文件名的标号.开始读人文件的一个扇区送 VS1003 解码芯片,直到读到最后一个扇区为止,程序跳出以后继续检索余下的 MP3 文件.同时单片机还要对键盘的操作进行查询,来对 CH375 和 VS1003 做出相应的控制。当 MP3 文件读完,程序结束。4.MP3_PLAY():这个函数负责将读到的 MP3 文件发送给 VS1003B 解码播放,并且执行对键盘的扫描操作。当读取到键盘的变化时,就执行 VS1003_cm d_write 命令, 改变 VSl003B 的工作状态。程序编写与调试说明:1.在使用 CH375 的函数库时,要在 main 函数中指定文件读写的数

58、据复制方式为内部复制 LIB_CFG-FLE-IO 为 1 以及设里 CH375 的 INT 脚连接模式为查询 LIB-CFG-INT_EN 为 0。接着还要在单片机内为 CH375 开辟一块 512 Byet 的数据缓冲区来放 t 读取的一个扇区的数据。2.在 main 函数中,当 U 盘插人 USB 接口以后可能没有反应.对于有的 U 盘需要等待 1s,然后再使用 CH375 函数库中的 CH375DiskReady 函数检查 U 盘是否已经准备好,才能继续工作。3.在对 VS1OO3B 初始化时,如果 vs1003_init 函数中的内部时钟倍频设置小于 3倍,会在播放时引起噪音,或者会

59、发生播放音频速率变慢,声音失真的情况。4.单片机向 VS1003B 传送一个 MP3 文件时,要求 SIP 总线达到 4kbit/s 有效数据传输速率,当单片机 SIP 的总线速率高于 4Mbit/s 时,VS1003 将不能正确读取单片机发送来的数据,无法播放声音。二 USB 子程序USB 设备分为 5 大类,即显示器、通信设备、音频设备、人机输入和海量存储。通常所用的 U 盘、移动硬盘均属于海量存储类。海量存储类的规范中包括 4 个独立的子规范,即 CBI 传输、Bulk-Only 传输、ATA 命令块、UFI 命令规范。前两个协议定义了数据/命令/状态在 USB 总线上的传输方法,Bul

60、k-Only 传输协议仅仅使用 Bulk 27端点传送数据/命令/状态,CBI 传输协议则使用 Control/bulk/interrupt 三种类型的端点进行数据/命令/状态的传送。后两个协议定义了存储介质的操作命令,ATA 协议用于硬盘,UFI 协议则针对 USB 移动存储,U 盘读写器的设计遵循 Bulk-Only 传输协议和 UFI 命令规范。UFI 命令块规范是针对 USB 移动存储而制定的,它总共定义了19 个 12 字节长度的操作命令。USB 模块负责检测 USB 设备的移入/移出,对插入的设备进行枚举,分配设备地址端点号,配置设备接口端点描述符,建立 BULK_ONLY 输入/

61、输出通道,BULK 模块则在已建立的 BULK_ONLY 输入/输出通道发送 CBW 数据包,并接收 CSW 数据包,通过 CBW中嵌入的 CBWCB 信息确定对 U 盘读/写操作的扇区位置和大小,FAT 模块主要完成簇和扇区间的索引定位,即在 U 盘内寻址,利用 BPB 中的参数计算给定扇区的所在簇以及进入休眠状态,等待外部中断唤醒。 N Y N Y N N Y Y开始USB 复位USB 初始化从 USB 读配置数据到 SRAM向 nCONFIG 送 5S低电平,复位 FPGAnSTATUS 变低?向 nCONFIG送高电平nSTATUS 变高?读配置数据串行送DATA0,送 DCLK计算机

62、配置数据长度配置数据传送完?CONF-DONE 为高?结束 28图 4.2.1 USB 子程序流程中断处理模块是在中断唤醒后根据中断类型进入不同功能子模块的,也是整个软件系统的核心部分。中断模块接收到串口或并口数据后,根据内部命令字要求进行解析,命令字要求,并口数据接收流程如图 4.2.1 所示。表 4.2.1 UFI 结构位字节0操作命令代码1逻辑单元号预留25逻辑块地址6预留7传输长度或参数列表长度或分配长度预留表 4.2.2 命令与数据字结构 位类型15141312111009080706050403020100命令字11命令值命令参数字节数或数据长度数据字10预留12 位数据12 位数

63、据UFI 是针对 USB 移动存储而制定的命令块协议,它规定了主机和设备进行信息交换所使用的命令块、数据和状态信息,Bulk-Only 传输协议定义了传输这些信息的方法,其中 UFI 命令块是封装在 CBW 包中的 CBWCB,设备通过读取 CBWCB 确定具体要执行何种操作命令(如读命令) ,如何完成这个命令(如从闪存的哪个地址读,需要读取的长度) ,设备将命令的执行状态封装成 CSW 返回给主机。命令与数据字结构如表4.2.2 所示。UFI 用于大多数命令的 12 字节命令块的描述,结构如表 4.2.1,各参数意义如下: 1.操作命令代码。指明所需要执行的操作命令;2.逻辑单元号,明命令将

64、发送到哪个逻辑单元,如果设备只有一个逻辑单元,则此域的值为 0。3.逻辑块地址,令操作的起始地址。 294.传输长度,指明请求传输的数据量,通常以扇区作单位,但是有几个命令是以字节作单位的,对于这些命令,传输长度域可以以不同的名字标识,若此域的值为 0,则表面没有数据需要传输。5.参数列表长度,用于指定发送到设备的字节数,这个域应用于发送到设备的参数命令块(如模式参数、诊断参数等) ,若此域的值为 0,则表面没有数据需要传输。6.分配长度,指明主机已经分配的用于返回数据的最大字节长度,若此值为 0,则表明没有数据需要传输。三 按键子程序图4.3.1 按键子程序UINT8 Scankey(voi

65、d)UINT8 key;if(P1&0 xf0)=0 xf0)return(0 xff);开始键盘扫描有键按下?S3?S2?S1?S4?开始停止向上向下 30Delay(10);if(P1&0 xf0)=0 xf0)return(0 xff);key=P1&0 xf0;while(P1&0 xf0)!=0 xf0);return(key);具有一定延时,检测是否有键按下的子程序,流程如4.3.1所示。四 串口子程序void UART_Init() PCON|=0 x80; /PCON的最高位SMOD=1时波特率加倍 TMOD=0 x20; /时器1为方式2 初值

66、自动装入 产生波特率 TH1=0 xfd; /定时器初始为0XFd,晶振为22.1184MHz,本函数实际产生的波特率为38400bpsTL1=0 xfd; /同上 SCON=0 x50; /串口设置为方式1,REN=1,允许接收TR1=1; /启动定时器1ES=1; /使能串口接收中断, EA=1; /打开所有中断 31第五章 方案的测试与分析 连接好电源、耳机,插上 U 盘(U 盘里要存储有 MP3、WMA、WAV 格式的音频文件),按键播放歌曲,人耳判断音质效果和流畅程度。用万用表测试各输出接口的电压,检测系统的工作情况。一 VS1003 模块调试(一)vs1003 初始化:1.硬件复位:XRESET 外部复位有效时间:2*XTAL(晶振频率) ;XRESET 外部复位无效到软件就续:(1660050000)*XTAL。2.寄存器设置:软件复位、重低音设置、时钟设置、音量设置3.VS_XDCS = 0vs1003 中写入四个 0,启动 vs1003;VS_XDCS = 1 当最后一位被移入且最后的时钟已发送,必须将 XCS 拉高以完成写 32操作。(二)SPI 读写数据用 IO 口模拟 SPI 时序(三)VS1

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!