基于单片机控制的的USB接口设计毕业设计(论文)word格式

上传人:1888****888 文档编号:37487101 上传时间:2021-11-03 格式:DOC 页数:35 大小:431.52KB
返回 下载 相关 举报
基于单片机控制的的USB接口设计毕业设计(论文)word格式_第1页
第1页 / 共35页
基于单片机控制的的USB接口设计毕业设计(论文)word格式_第2页
第2页 / 共35页
基于单片机控制的的USB接口设计毕业设计(论文)word格式_第3页
第3页 / 共35页
点击查看更多>>
资源描述
I摘摘 要要通用串行总线 USB 是 PC 体系中的一套全新的工业标准,它支持单个主机与多个外设同时进行数据交换。论文首先简要介绍 USB 的体系结构和特点,包括总线优势、协议简介、传输方式等。这部分内容会使用户对 USB 有一个整体的初步了解。接下来论文会着重介绍一个 USB 项目的设计过程和技术细节,即 MP3 的硬件设计。其内容主要包括:采用 AT89C51SND1C 提供 USB 控制和 MPEG2 解码器、存储部分用 16M 的存储器(K9F2808U0A)存放 MP3 播放文件;音频转换部分是将数据流转化成声音信号并输出音频信号;前置放大部分是将 MIC 的信号放大,并将其转换成数字信号(A/D 转换) ;设计采用通过 USB 接口进行串口通讯;采用 12232 的 LCD 液晶显示屏显示;论文第三章除了详细介绍 MP3 硬件设计外,还简要设计了相关接口程序和寄存器的技术细节,包括 USB 的文件存储格式、接口程序以及寄存器的配置等。最后论文对我们初学者具有一定的参考价值,可以尽快掌握 USB 设备的特点,以及硬件电路设计的注意事项。关键字:关键字:微控制器 通用串行总线 接口驱动程序 MP3IIBased on 51 monolithic integrated circuits USB system designsStudent:Hu Li Teacher: Jiang Cun-boAbstract:The Universal Serial Bus USB is specified to be an industry standard extension to the PC architecture. USB is a serial cable bus that supports data exchange between a host computer and a wide range of simultaneously accessible peripherals.First, the thesis describes the architecture and features of USB, including the bus attributes, the protocol definition, and so on. It tries to give developers and users a snapshot of USB.After that, the thesis will talk about how to develop the USB system, including: device hardware then the thesis describes one development and technique details of one USB project: the development of MP3. I will give you the details of the hardware and it including: make use of AT89C51SND1C which provides the USB control and the MPEG2 decoding, the memory partially (K9F2808U0A) deposits the MP3 document with the 16M memory; The audio frequency transformation part is pasts the data turns into the sound signal and the output audio frequency signal; The pre-amplification part is making the MIC signal enlargement, and transforms it the digital signal (the A/D transformation); The design uses through the USB connection carries on the serial communication; Using the 12232 LCD liquid crystal display monitor demonstration; the third chapter of the paper besides in detail introduces the MP3 hardware design, but also briefly has designed the correlation interface routine and the register technical detail, including USB document memory form, interface routine as well as register disposition and so onFinally the thesis is very useful to USB device beginners. These can help them rapidly grasp the main feathers and important place in hardware design.Key words: microcontroller USB interface driver MP3III目目 次次摘摘 要要 .I IABSTRACTABSTRACT .IIII1 1 引引 言言 .1 11.1 USB 技术 .11.2 设计概述 .12 2 USBUSB 协议简介协议简介.2 22.1 USB 技术背景 .22.2 USB 总线优势 .22.3 本章小结 .33 3 USBUSB 设备(设备(MP3MP3)的硬件设计)的硬件设计.4 43.1 设计具体要求 .43.2 设计原理 .43.3 硬件电路设计 .43.2.1 微控制器.53.2.2 电源及 USB 接口电路.63.2.3 存储部分电路.73.2.4 前置放大部分.83.2.5 D/A 转换部分 .93.2.6 按键部分和 LCD 显示.103.2.7 系统整体原理图及 PCB 图.113.2.8 系统调试.143.3 本章小结 .144 4 软件驱动程序分析软件驱动程序分析 .15154.1 USB 的通信过程 .154.2 寄存器的配置 .154.3 按键和显示接口 .184.4 本章小结 .195 5 文件存储格式分析文件存储格式分析 .2020IV5.1 文件分配表.205.2 文件目录表.205.3 本章小结 .226 6 结论结论 .2323致致 谢谢 .2424参考文献参考文献 .252511 1 引引 言言1.1 USB 技术为了满足用户追求高速度和高通用性的需求,以 Intel 公司为首于 1994 年推出了USB(Universal Serial Bus,通用串行总线)协议的第一个草案,用于低、中速的计算机外设。USB 可把多达 127 个外设同时连到用户的系统上,所有的外设通过协议来共享 USB 的带宽,其 12Mbps 的带宽对于键盘,鼠标等低中速外设是完全足够的。在USB2.0 中, USB 支持的带宽已提升到 480Mbps。USB 允许外设在主机和其它外设工作时进行连接、配置、使用及移除,即所谓的即插即用。同时 USB 总线的应用可以清除 PC 上过多的 I/O 端口而以一个串行通道取代,使 PC 与外设之间的连接更容易。现在 USB 不仅是微机主板上的标准端口,而且还成为了所有微机外设(包括键盘、鼠标、显示器、打印机等)与主机相连的标准协议之一。其主要的优点是速度高、功耗低、支持即插即用和维护方便1。1.21.2 设计概述设计概述(1)题目:基于 51 单片机的 USB 系统硬件设计(2)设计内容要求:该设计包括 USB 系统的软件和硬件设计及通讯协议的分析。我负责的是硬件设计部分。设计一个带 USB 接口的 MP3,该 MP3 除能播放音频文件外,还具有录音、液晶显示等功能。硬件设计包括 MP3 的电路设计、显示和按键接口驱动程序以及文件的存储格式等。22 2 USBUSB 协议简介协议简介2.12.1 USBUSB 技术背景技术背景传统的计算机外部设备一般使用并口或串口与计算机相连。这两种端口已使用多年,物理层的协议也已经相当成熟。但仍然无法满足目前计算机设备不断提高的速度和使用要求。但 USB 具有速度高、成本低、功耗低、支持即插即用和使用维护方便等优点。在协议成熟以后,迅速地占领了计算机低、中速外部设备的市场,大有取而代之之势2。2.22.2 USBUSB 总线优势总线优势USB 总线的主要优势体现在以下几个方面:速度、总线拓扑体系、即插即用、低功耗、标准接口和外设。论文将从这五个方面简要介绍 USB 协议内容和特点:1) USB 的速度在 USB1.1 规范版本中,USB 支持两种总线数据传输率:一种是在全速模式下的12Mbps,另一种是低速模式下的 1.5Mbps。引入低速模式主要是为了降低对速度要求不高的设备的成本,比如鼠标、键盘等。在 USB2.0 版本中,USB 支持了一种新的总线数据传输率;在高速模式下的 480Mbps。这个速度较全速和低速设备而言是一个飞跃。2) USB 的总线拓扑体系整个 USB 总线拓扑体系由三个元素组成:主机、集线器和设备。在目前的 PC 应用中,PC 就是主机和根集线器,用户可以将外设或附加的与之相连,这些附加的 Hub可以连接其他的外设以及下层 Hub。在 USB1.1 规范版本中,USB 在一个拓扑网络中支持最多 4 个 Hub 层以及 127 个外设4。3) USB 的即插即用USB 采用四线电缆来传输信号与电源。USB 的结构使 USB 设备在插上时,首先接触的是信号线,然后才是电源线;而在向外拔时,由于电源线较短,所以首先被切断,而后才是数据线。这对整个系统及 USB 设备都没有影响,所以可以热插拔。即插即用这一特点在使用上极其方便,这是 USB 最吸引用户的地方。4) USB 的低功耗USB 协议规定:如果总线供电设备在 3ms 内没有进行总线操作,则设备自动进入挂起状态。而挂起的设备从总线上吸收的电流必须小于 500A。实际上协议规定的500A,包括了主机端 15K 的电缆终端匹配电阻的电流(通常为 220A),所以对于使用总线电源的设备而言,进入挂起状态通常便意味着设备的总电流功耗不会超过3280A,这个功耗值是很低的。5) USB 的标准接口和外设USB 协议体系中的外设都是非常标准的,从底层的物理和电气特性,到上层的软件协议、数据通讯,都有明确的定义。USB 将设备和主机都看作不同的对象,而这些对象又是由不同的模块和子模块组成的。就这样 USB 根据设备和主机各部分的功能和实现的不同,将整个 USB 系统划分成了很多的层次和模块2。2.32.3 本章小结本章小结本章简单介绍了 USB 的基本结构和原理,初步了解了 USB 接口。要深入学习还必须仔细阅读 USB 规范。这一规范从总体上描述了 USB 的结构和原理,而对于每一类 USB 设备(包括 HID 设备音频设备等等),还相应制定了描述这类设备的 USB 规范。43 3 USBUSB 设备(设备(MP3MP3)的硬件设计)的硬件设计3.13.1 设计具体要求设计具体要求(1)、系统具有 USB 接口。(2)、存储容量为 128M 字节。(3)、音频 D/A 转换,输出音频模拟信号并可播放音频文件。(4)、可显示文字、数字、简单图形等。(5)、四个按键分别控制播放、停止、前进和后退。(6)、具有录音功能。3.23.2 设计原理设计原理USB的工作原理:一根USB线由两条是数据线和两条电源线组成。向里看时,它们其中外侧的两条比较长,那是数据线;而里面两条相对短一些的为电源线。当把USB设备插上主机时,首先接触的是信号线,然后才是电源线。而向外拔时,则由于电源线较短,所以首先被切断,而后才是数据线。这样操作对整个系统及USB设备都没有影响,所以可以热插拔。一般的USB接口提供四个引脚与CPU相连接3,其内部结构如图3-2所示:MP3的工作原理:该MP3首先将MP3歌曲文件通过USB接口从内存中取出并读取存储器上的信号到解码芯片对信号进行解码通过数模转换器将解出来的数字信号转换成模拟信号再把转换后的模拟音频放大经低通滤波后到耳机输出口,输出后就是可以听到音乐。3.33.3 硬件电路设计硬件电路设计系统设计框图如图 3-2:VCCD+D-GND图3-1 USB电缆内部结构Figure 3-1 USB Cable Structure5系统设计方案:系统硬件的核心是微控制器 AT89C51SND1C,整个系统是由AT89C51SND1C、K9F2808U0C(FLASH 芯片)和音频转换(D/A)部分、USB 串行通讯接口、外部控制、电源部分和前置放大部分组成。 主控部分:因为 AT89C51SND1C 提供 USB 控制和集成 MPEG2 解码器,故选用它作为系统控制核心; 存储部分:作为 MP3 播放文件的存储器(K9F2808U0A); 音频转换部分:将数据流转化成声音信号(UDA1330BTS); 前置放大部分:将 MIC 的信号放大,并将其转化成数字信号(A/D 转换) ; 通讯系统:通过 USB 接口进行串口通讯;显示部分:采用 12232 的 LCD 液晶显示屏;电源部分:为 MP3 提供所需要的电能;同时辅助微控制器工作的还有一个晶体振荡电路。3.2.13.2.1 微控制器微控制器就 MP3 的控制来说,许多单片机都能胜任。但不同单片机具有不同的特点,比较之下,我选用 ATMEL 公司的 AT89C51 单片机。因为 AT89C51 提供 USB 控制和集成MPEG2 解码器,这就解决了接口控制和解码的难题。它为许多嵌入式控制系统提供了灵活、低成本的解决方案。这些特点是选用该芯片的主要原因。89C51 的性能特点请参考芯片资料5。AT89C51SND1C 单片机是 ATMEL 公司专门针对开发 MP3 而设计的,它的主要特点是图 3-2 系统框图Figure 3-2 System diagram6内部集成了 MPEG2 解码器和 USB 通讯接口,内含 64k 的内部程序存储器,支持在系统编辑 ISP 功能,通过 USB 或者串行口对芯片进行编程操作,内部数据存储器为 2056 字节。它最高支持 20MHz 的工作频率,工作电压为 3.3V,内部集成的 MPEG-2 解码功能支持 48,44.1,32,24 及 16HZ 的采样序列,可直接与 DAC 音频转换芯片连接,支持USB1.1 协议全速引擎,并提供相应的键盘中断、IDE/ATATPI/MMC 及 ISP 接口。设计主要相关特殊功能寄存器有:MP3 解码器的控制寄存器共有 11 个,其中包括 MP3CLK(MP3时钟分频寄存器)、MP3CON(MP3 控制寄存器)、MP3VOL(MP3 左声道音量控制寄存器)、MP3BAS(MP3 重低音控制寄存器)等;USB 控制寄存器共有 15 个,其中包括:UEPINT(USB 端点中断寄存器)、UEPREST(USB 端点 FIFO 复位寄存器)、USBCON(USB 控制寄存器)、UEPIEN(USB 端点中断使能寄存器)等和音频接口控制寄存器包括:AUDCON0(音频接口控制寄存器 0)、AUDCON1(音频接口控制器 1)、AUDSTA(音频接口状态寄存器)、AUDDAT(音频接口数据寄存器)和AUDCLK(音频时钟分频寄存器),详见第四章。其典型应用如图 3-4 所示5: 3.2.23.2.2 电源及电源及 USBUSB 接口电路接口电路其电路如图 3-5 所示:图 3-4 典型应用Figure 3-4 Model application7R21K12J1POWERR11.5KR327Vin1GND2Vout3U1AS11171234J2USBLE DVCCR427储储C11000ufD+D-入入C P UMP3 属于高速信息传输数码产品,能否有一个良好的电源对 MP3 使用的稳定性来说至关重要,因此一般采用芯片降压的供电方案。如图 3-5 所示,设计中选用的芯片为 AS1117。它输入电压为 4.7510V,最大输出电流为 800mA,转换后输出电压为3.3V,是比较理想的 USB 电平转换芯片。为了方便我也可以在 AS1117 的 3 脚输出端接上电池提供电源。电路中 C1 起到滤波作用;R2 是限流电阻用以保护 LED;发光二极管 LED 监控电源电路是否正常。对 USB 接口来说,USB 接口的实现则是通过 51SND1 自带的 USB1.1 协议通讯端口,它不需要使用 USB 接口转换芯片,设计中通过两个 27 欧姆的电阻后直接接入89C51SND 的第 21、22 脚,这两个电阻的阻值是官方站对其所开发的芯片提供的,最好使用精度高的电阻。否则,会因为电阻分压不当而导致计算机无法识别89C51SND1C 芯片。另外需要注意的是 D+与 3.3V 之间的电阻 R1,阻值范围必须是1.5K 5%。从而拉高 USB 的 D+端口电位,以告知计算机有新的硬件接入,否则设备将无法被 PC 或 HUB 识别6。3.2.33.2.3 存储部分电路存储部分电路MP3 是常用 FLASH 芯片存储,因其具有体积小、存储容量大且速度快、耗电少等特点。因此如图 3-6 所示7:图 3-5 电源及 USB 接口电路Figure3-5 Power and USB interface circuit8IO029IO130IO231IO332VSS36VDD37IO441IO542IO643IO744WPM19WEN18ALE17CLE16VSS13VCC12CEN9REN8RSY/B7U2K9F2808R81KVCC储储储储16MVCCDD0DD1DD2DD3DD4DD5DD6DD7DD8DD9WENREARSTvcc本设计存储部分选用三星公司的 K9F2808 系列芯片。它拥有 16M 的存贮量。它的结构是由 65536 层组成,每层有 528 个字节即 528 个列。每一个存贮块由 32 层组成。一个 528 字节的数据寄存器连接到存储区域。它在数据写入和数据读出的时候使数据在 I/O 缓冲区与存储区之间传递。读操作在层的基础上进行,擦写操作在块的基础上进行。K9F2808 闪存共有 2048 个块,即有 2048 个擦写单元,每单元有 16KB 的存储量。K9F2808 闪存采用 8 位 I/O 线复用方式;执行 528 个字节页的编程仅需 200s;在一个16K 字节的模块上完成擦除操作需要 2ms,读出一页数据的时间是每字节 50ns。它为固体大容量存储器提供了有效的解决方案。如果需要加大存储器的容量可以换用三星公司与此芯片同一系列的存储芯片(K9F1208YCB 为 64M、K9F1G08 为 128M),它们的引脚和工作方式完全相同,只是容量不同。3.2.43.2.4 前置放大部分前置放大部分其电路如图 3-7 所示7R18470KR162.2KR2012KR21560KR172.2KBIAS1IN-2IN+3VSS4SHDN8VCC7OUT6NC5U4MAX4468C25100nFC26 10nFC290.1uFAVDDC270.22uFC28 100PFR19470KJ6P5.2图 3-7 前置放大电路Figure 3-7 Preamplifier circuit图 3-6 存储电路Figure 3-6 Memory circuit9AT89C51SND1 芯片提供了外部录音功能。在程序的支持下,通过外部设备 MIC及其模数转换芯片向其送入音频信息,AT89C51SND1 将其转化成 WAV 文件后保存在存储器中,通过 MP3 放音功能可将其音频信息读出。如图 3-7 所示,设计中实现 MIC到 CPU 转换的是通过 MAX4468(增益带宽涌流器)实现的,它的主要功能是将 MIC 的信号放大,并将其转化成数字信息,通过 CPU 将数字信息储存在存储器中,从而实现MP3 的录音功能。由于话筒提供的信号只有几十毫瓦,故要加前置放大器 MAX4468。其技术指标:2.4V5V 的电源供电,提供 600KHZ 的增益带宽,闲置状态电流为 24uA。设计中放大电路的 Au=45(设定),负载电阻为 100K,Vout=Vcc/2=2.5V。MAX4468 内部是由一级同相比例运算电路构成。则 1+R21/R20=45,取 R21=560K,R20=12K。电阻R18,R19 为放大电路偏置电阻,取 R18=R19=470K(典型参数为 100K)。耦合电容 C25 与 C29 取 100nF,C26 取 10nF,C27 取 220nF,以保证低频响应。其他元器件的参数选择为:C28=100pF,R16=R17=2.2K。3.2.53.2.5 D/AD/A 转换部分转换部分其电路如图 3-8 所示8J5BCK1WS2DATA I3APPL011VDDD4VSSD5SYSCLK6APPL110APPSEL7APPL29APPL38VREF12VDDA13VOL14VSSA15VOR16UDA1330U3UDA1330R910KR111KR810KR101KVCCC21100nFC1947UFC2047UF+C2247UFC23100nFR1510KR1410KR12100R13100C24100nFAVDDLD5LD4DSE LDCLKDOUTSCL KP4.6CPU储储图 3-8 D/A 转换电路Figure 3-8 D/A Covert circuitAT89C51SND1 支持 PCM 和 I2S 两种音频结构,音频数据流可以来自 MP3 解码的输出,也可以来自 MCU 直接的音频输出。根据设计要求选用 UDA1330ATS 来实现D/A 转换输出音频信号给耳机。其技术指标:2.7V5.5 的电源供电,支持 1655KHZ10的抽样频率,集成数字滤波提供 DAC,支持 I2S 总线数据格式等。电路中整个音频部分和 51 内核是通过 5 个寄存器来进行数据和控制信息的交流。如图 3-8 所示,让音频数据的第一位送入 D/A 转换器 UDA1330ATS 的时候就会产生一个时钟信号。将 MP3 解码器中送出的数据送入 MP3 缓冲器,MP3 的解码数据缓存和解码器通过一个握手信号进行通讯,通过音频 AUDCON1 寄存器中的第六位(DERQEN)来决定是否需要数据。3.2.63.2.6 按键部分和按键部分和 LCDLCD 显示显示根据 MP3 的实际需要对按键和显示分别进行如下设计8: 1)、按键:外部中断按键采用简单的独立式键盘结构。四个按键分别控制播放、停止、前进和后退。每个按键的电路是独立的,占用一条数据线。当其中任意按键按下时,对应数据线的电平变为低电平,读入单片机就是逻辑 0,表示键闭合;若无键闭合,则所有数据线的电平都是高电平。在此需要注意消除键抖动。上拉电阻采用典型参数,即 R24=R25=R26=R27=5.1K。2)、显示:设计中的显示部分是选用内置 SED1520 驱动控制器的 12232 点阵图形液晶显示模块。它具有低成本、低功耗、高集成化的特点。该显示模块内集成了两块 SED1520,每块 SED1520 横向有 61 点、纵向有 16 点,所以两块横向有 122 点、纵向有 32 点。SED1520 显示驱动控制器集成电路分别控制液晶显示器的左、右半屏点阵图形的显示,在该模块内有一个 12232 点阵图形液晶显示器和一个偏置(BIAS)电路。其工作原理是:偏置(BIAS)电路提供了模块内部显示用的驱动电压 V1V5,它通过把用户提供给该模块的工作电源电压转换为 5 路液晶显示驱动电压,在外接微处理器的支持下,通过模块内两个 SED1520 集成电路的驱动与控制功能,实现用户利用微处理器下达的显示指令和相应操作的功能,在 12232 点阵图形液晶显示器上显示出需要显示的内容。微处理器通过对并行接口输出状态的编程操作,完成对液晶显示模块所需时序的操作和数据的传输。在电路中模块的数据总线接到 89C51 的 P4 口,控制信号 A0 接至INT0,CSS1 接至 WR,CSS2 接至 RD,第 9 脚接至 T1,使能信号端(E)接至T0,CL 接至 INT1。这是间接控制方式,电路中电位器 R28=10K(确定调节范围,为典型参数)用于调节显示对比度。3.2.73.2.7 系统整体原理图及系统整体原理图及 PCBPCB 图图系统整体原理图如图 3-10 所示10。设计中应特别注意直流电源和数字电源的区别:在电路中有 DVDD(数字电源)和 AVDD(模拟电源)两种电源,这是为了让芯片工11作于一个稳定的环境里,而为其设计的专用电源 DVDD。原则上,数字电源与模拟电源没有什么大的区别,但模拟电源工作的环境中,可能会出现大的压降或其他影响整个电源的情况。为保证系统的稳定性,通常在设计时,将数字电源和模拟电源分开接,最后用一跳线(LC 电路)将两个电源接在一起,这样可以避免模拟电源对数字电源的影响,以保证系统的稳定性。在设计印制电路板时主要考虑的是减小信号之间的交叉干扰、电源干扰,降低噪声对电路的影响,提高整个系统的可靠性。设计的电路板上,主要是晶体振荡电路对噪声比较敏感,因此在设计这部分电路时,特别注意使晶振、电阻、电容等相关器件与微控制器尽可能靠近,在布线时使这部分电路的信号线不能其他任何信号线交叉。此外还采用了一些常规的降低噪声和干扰影响的手段,包括尽量增加地线和电源线的宽度(40mil),使用去耦电容以及尽量减小元器件引脚长度等。12图 3-11 PCB 图13IO029IO130IO231IO332VSS36VDD37IO441IO542IO643IO744WPM19WEN18ALE17CLE16VSS13VCC12CEN9REN8RSY/B7U2K9F2808C1330PC100.01uFC1230PC110.22uFR18470KR162.2KR2012KR21560KR2310KR172.2KR21KX1 16M12J1POWER123J3ISPJUMPJ5S0STOPS3PLAY/PAUSES1FFWS2REWALE1ISP#2P1.0/KIN03P1.1/KIN14P1.2/KIN25P1.3/KIN36P1.47P1.58P1.6/SCL9P1.7/SDA10VDD11PVDD12FILT13PVSS14VSS15X216X117TST#18UVDD19UVSS20D+21D-22VDD23VSS24P3.0/RXD25 P3.1/TXD26P3.2/INT0#27P3.3/INT1#28P3.4/T029P3.5/T130P3.6/WR#31P3.7/RD#32AVDD33AVSS34AREFP35AREFN36A/N037A/N138P5.239P5.340VDD41VSS42DOUT43DCLK44DSEL45SCLK46RST47MCMD48MDAT49MCLK50VDD51VSS52P2.7/A1553P2.6/A1454P2.5/A1355P2.4/A1256P2.3/A1157P2.2/A1058P4.459P4.560P4.661P4.762P2.1/A963P2.0/A864P4.0/MISQ65P4.1/MOSI66P4.2/SCK67P4.3/SS#68P0.7/AD769P0.6/AD670VDD71VSS72P0.5/AD573P0.4/AD474P0.3/AD375P0.2/AD276P0.1/AD177P0.0/AD078P5.079P5.180AT89C51SND1CY0AT89C51SND1CBCK1WS2DATAI3APPL011VDDD4VSSD5SYSCLK6APPL110APPSEL7APPL29APPL38VREF12VDDA13VOL14VSSA15VOR16UDA1330U3 UDA1330BIAS1IN-2IN+3VSS4SHDN8VCC7OUT6NC5U4 MAX4468C52.2UFC72.2UFC82.2UFC62.2UFR910KR111KR11.5KR810KR2247R327R101KVin1GND2Vout3U1AS11171234J2USBLEDVCCVCCAVDDC25100nFC26 10nFC290.1uFAVDDC270.22uFC28 100PFD3D2C30220nFAVDDVCCC21100nFC1947UFC2047UF+C2247UFC23100nFR1510KR1410KR12100R13100C24100nFAVDDVCCR71KC31100nFC32100nFC33100nFC34100nFC35100nFC36100nFVCCR427R6100R19470KJ6R245.1KR265.1KR255.1KR275.1KR2810kC370.01uFC380.01uFL1150UHL2150UHVCCVCCVCCVCCC11000ufLD5LD4LD6LD7LD0LD1LD2LD3DD11DD12DD13DD14DD15DD10GNDVCCMCLKMDATMCMDRSTDSELDCLKGNDVCCVCCGNDTXDINT0RMTT0WENREAVDDAVSSAREFPAREFNAIN0AIN1SHDNARSTD+D-ALEISPKEY0KEY1KEY2KEY3LA0LRWLCS1LCS2VCCVCCFILTGNDX1X2VCCP5.0DD0DD1DD2DD3DD4DD5DD6DD7DD8DD9GNDVCCLD0LD1LD2LD3LD4LD5LD6LD7WENREAVDDAVSST1RXDDOUTSCLKC394.7UF1234567891011121314151617181920J7CON201234567891011121314151617181920J8CON201234567891011121314151617181920J9CON201234567891011121314151617181920J10CON20ALEISPKEY0KEY1KEY2KEY3LA0LRWLCS1LCS2FILTD+D-RXDTXDINT0RMTT0T1WENREAREFPAREFNAIN0AIN1SHDNARSTDOUTDCLKDSELSCLKMCMDMDATMCLKLD4LD5DD10DD11DD12DD13DD14DD15LD6LD7DD8DD9LD0LD1LD2LD3DD6DD7P5.0DD0DD1DD2DD3DD4DD51234567891011121314151617181920J4LCDPORTVEEINT1WENREINT0T0T1VLED+VLED-ARSTVCC图 3-10 整体原理图143.2.83.2.8 系统调试系统调试调试步骤:首先是电源部分的调试,用一个万用表测输出电压值 VCC(3.3V),正常范围是 3.253.35V,如果再偏低或者偏高,则要进一步查找问题,看是否输入电压纹波很大,换一个纹波较小的电源,(冗余设计中,AS1117 电压调节器的输入电压要求是比较准确的 5V,不然偏差较大)然后是核心 CPU(AT89C51SND1)的焊接和调试。要注意是在焊 VCC 和 VSS 的时候不要有短路。CPU 焊接完成后,上电检测工作电压在 3.3V 左右就可以进行下一步的调试,即接上晶振和两个偏置电容、复位电容。上电后,先检查晶振是否起振,用示波器测晶振引脚的波形是标准的振荡波形就正确。再测其中任一脚的电压,只要能稳定在 1.5V 左右就表示起振。如果电源没起振,就要检查 CPU 的 X1,X2 引脚是否脱焊和偏置电容是否正确(一般 10pf30pf)。接下来就是检查复位,由于芯片内部含下拉复位电阻,所以只需外接一个极性电容即可,经过调试,其容值可取 2.2uF22uF,只要充电时间不要慢到 CPU 不能正常工作就可以。用万用表在一上电瞬间用表笔测 RST1引脚的电压,其真实复位过程是复位电压从 3V 到 0V 线性下降,由于万用表采集速率的问题。往往只能从 1.5V 左右开始采集,故测量得到的 12V 的复位电压都是正常的。最后是 USB 部分的调试检查 USB 设备能否被 PC 识别。我在设计中严格按照 USB 的规定推荐值,所以不存在大问题。主要是 USB 的软件驱动程序的调试,这部分由软件部分完成。其他部分由于篇幅所限不再详述。3.3 本章小结本章小结设计中系统的介绍了关于 ATMEL 公司生产的 89C51SND1 芯片开发 MP3 功能的方法。但对于 89C51SND1 来说,实现 MP3 只是它强大功能的一部分。本章还具体介绍设计的其它单元电路,并在最后给出了系统的具体调试过程。15D7 D6 D5 D4 D3 D2 D1 D0WDX2T1X2T0X2X24 4 软件驱动程序分析软件驱动程序分析我在这部分的任务是分析 USB 通讯过程和寄存器配置、重点解决按键和显示部分的接口子程序,以备软件部分调用。4.14.1 USBUSB 的通信过程的通信过程由于设计中 USB 是当作存储设备用,故 USB 的通信采用控制传输;总线访问方式。控制传输用于支持介于主机与装置之间的配置、命令或状态的通讯。可分为 23个阶段:设定阶段、数据阶段以及状态阶段。在数据阶段中,数据传输是以设定阶段中所拟定的方向作数据传输,而在状态阶段中,装置将传回交互握手信息给主机。每一个 USB 装置需要将端点 0 作为控制传输的端点,每当装置第一次连接到主机时,控制传输就可用来交换信息,设定装置的地址或是读取装置的描述原语要求。控制传输只能通过消息管道来实现,所以传输前必须对传输的数据进行分组。建立分组具有一个 USB 确立的结构,包括了实现主机和一个设备之间通信所需的最小指令集。USB 规定,对全速率设备而言所允许的最大控制数据负载仅可以是 8、16、32 或 64 字节,而低速设备则限制为 8 个字节。每次总线操作,接收者将发送者的序列位(被译码成数据包 PID 的一位,即 Data0或 Data1)与本身的相比较。如果数据不能接收,则必须发送 NAK。如果数据可以被接收,并且两者的序列位匹配,则该数据被接收并且发送 ACK,同时,接收者的序列位被触发。如果数据可以被接收,但两者的序列位不匹配,则接收者只发出 ACK 而不进行其它操作。对于发送者来说,在接收到 NAK 时或在规定时间内没有接收到 ACK,则将上一次的数据重发4。4.24.2 寄存器的配置寄存器的配置本节将重点设计涉及 USB 接口的寄存器,另外还将设计与 MP3 解码有关的寄存器。由于篇幅所限将不对每个寄存器设置7。所涉及的主要控制寄存器及配置如下。1)、锁相环和系统时钟控制寄存器根据资料查知 AT89C51SND1C 的该类寄存器包括 4 个:.CKCON(时钟控制寄存器)其寄存器地址为 08FH。其格式如下:设计中 CKCON 命令字为 0 x01,作用是设置时钟工作方式。D7 为保留位,由于这16D7 D6 D5 D4 D3 D2 D1 D0R1R0PLLRESPLLENPLOCKD7 D6 D5 D4 D3 D2 D1 D0USBESUSPCLKSDRMWUPUPRSMRMWUPECONFGFADDEND7 D6 D5 D4 D3 D2 D1 D0FEN UADD6 UADD5UADD4UADD3UADD2UADD1 UADD0 些位读到的信号是不确定的,所以置 0;D6 是监视器(看门狗)时钟控制位置 0。D5D3位为保留位置 0;D2 是计时器 1 时钟控制位,设计采用外部的时钟信号作为计时器 1的输入此位置 0。D1 是计时器 0 时钟控制位,外部的时钟信号作为计时器 0 的输入此位置 0。D0 是系统时钟控制位,设计选择每个机器周期为 6 个时钟片段(X2 模式)则置1。.PLLCON(锁相环控制寄存器)寄存器地址为 E9H,其格式如下:设计中 PLLCON 命令字为 0XC8,功能是使 PLL 复位。D7-D6 是系统时钟因子 R的最低两位置为 1。D5-D4 是保留位置 0;D3 是 PLL 复位置 1,D2 是保留位置 0。D1 是PLL 使能位,置 0 不允许 PLL 使能。D0 是 PLL 锁定控制位置 0,PLL 没有锁定时使硬件清 0。.PLLRDIV(分频因子 R 寄存器)的命令字为 0 x02 和 PLLNDIV(分频因子 N 寄存器) 的命令字为 0 x00,这两个寄存器的作用是确定 PLL 的时钟信号。具体设置见参考文献7。2)、USB 控制寄存器USBCON(USB 控制寄存器)寄存器地址为 BCH,其格式如下: 设计中 USBCON 命令字为 0X80,其功能是设置 USB 的工作方式。D7 是 USB 使能位置 1,使能 USB 控制器。D6 是 USB 时钟挂起位,置 0 使能对应的输入。D5 是发送远程唤醒位。D4 保留置 0。D3 是上行数据流继续标志位,只读。当 SDRMWUP 位被置位,而且 RMWUPE 位使能后,硬件置此位。上行数据流发送结束后,硬件清除此位。D2 是远程唤醒使能位。置位后,使能发送向主机的上行数据流请求。D1 是配置位,在接到一个非 0 值的 SETCONFIGURATION 的请求后,此位应被系统固件置位。当接收到 0 值的配置请求或当系统硬件复位或在总线上监测到 USB 复位时,此位清 0。D0 是功能地址使能位,当系统硬件复位或在总线上接收到 USB 复位时,此位置 0。USBADDR(USB 地址寄存器)的地址为 0C6H,其格式如下:17D7 D6 D5 D4 D3 D2 D1 D0MPENMPBBSTCRCENMSKANCMSKREQMSKLAYMSKSYNMSKCRC设计中 USBADDR 命令字为 0X80,其功能是设置 USB 的地址。D7 功能使能位,置 1使此寄存器功能使能。当接收到一个 USB 复位并且进行后面的设备配置时,设备固件应把此位置 1。D6-D0 是 USB 地址位。这里存储主机为连接的 USB 设备配置的地址。由于每一个刚插入的 USB 设备的默认地址为 0,并通过这个地址与主机通信,实现配置过程,所以主机最多可连接 127 个 USB 设备。USBIEN 是中断使能位,其命令字为 0 x00,作用是不允许 USB 中断;USBCLK 是USB 的时钟寄存器,其命令字为 0 x03,作用是提供 USB 时钟信号;UEPCONX 是端点 X 控制寄存器,其命令字为 0 x80,功能是设置对应端点的传输类型;UEPRST 是端点 FIFO 复位寄存器,其命令字是 0 x07,作用是使端点 FIFO 复位。3)、MP3 解码寄存器MP3CON(MP3 控制寄存器)地址为 AAH,其格式如下: 设计中 MP3CON 命令字为 0X3F,其功能是设置 MP3 解码器的工作方式。D7 是 MP3解码使能位。D6 是重低音触发位,使该位置 1 表示其具有触发声音效果。D5 是 CRC 校验使能位,将该位置 1 处理包含 CRC 错误的帧。D4 是 MPANC 屏蔽标志位,将其置 1 不允许 MPANC 产生 MP3 中断。D3 是 MPREQ 屏蔽标志位,将其置 1 不允许 MPREQ 产生 MP3中断。D2 是 ERRLAY 屏蔽标志位,将其置 1 不允许 ERRLAY 产生 MP3 中断。D1 是 ERRSYN屏蔽标志位,将其置 0 允许 ERRSYN 产生 MP3 中断。D0 是 ERRCRC 屏蔽标志位,将其置0 允许 ERRCRC 产生 MP3 中断。MP3CLK(MP3 时钟分频寄存器)其寄存器地址为 EBH。D7D5 位为保留位置0;D4D0 是 MP3 解码时钟分频位,其命令字为 0X07,功能是提供 MP3 时钟信号。4)、音频接口寄存器共有 5 个功能寄存器分别是:音频接口控制寄存器AUDCON0、音频接口控制器 AUDCON1、音频接口状态寄存器 AUDSTA、音频接口数据寄存器 AUDDAT 和音频时钟分频寄存器 AUDCLK。 5)、设计中寄存器的具体配置如下:void PLL_initial(void) /PLL 初始化PLLRDIV=0 x02; /使用 16M 晶振,产生 192M 频率PLLNDIV=0 x00;18PLLCON=0 xC8; /复位 PLLCKCON=0 x01;while(!PLOCK); /等待 PLL 锁定void USB_initial(void)UEPNUM=0 x00; /端点使能USBCON=0 x80;USBIEN=0 x00; /不允许 USB 中断USBCLK=0 x03;UEPCONX=0 x80;UEPRST=0 x07; /端点 FIFO 复位USBADDR=0 x80; /设置地址 0void MP3_decoder_initial(void) /MP3 解码器初始化MP3CON=0 x3F;MP3CLK=0 x07; /MP3 解码时钟为 32MHzMP3_decoder_disen(); /使 MP3 解码器停止并等待void DAC_initial(void) /DAC 初始化AUDCON0=0 x72; / 256FsAUDCON1=0 x00;4.34.3 按键和显示接口按键和显示接口1)按键:设 S1 闭合将 20H 单元的内容加 1,S2 闭合将 20H 单元内容减 1,S3 闭合将 21H 单元清 0,S4 闭合将 21H 单元置 FFH,如果同时有两个以上的按键闭合,将不做任何操作。程序流程图如图 4-1 所示,按键程序清单见附录 2。2)显示:要在液晶显示屏上显示出汉字,可以按照 4-2 所示的流程来设计 12232点阵液晶显示模块显示汉字的软件,更改数据 RAM 中要显示的数据后,就可以改变所要显示的内容。显示程序清单见附录 3。19 N N Y Y N Y Y 图 4-1 按键流程图 图 4-2 显示流程图Figure 4-1 Key flow Figure 4-2 Display flow4.44.4 本章小结本章小结在本章中首先对 USB 的通信过程进行了简要的分析,然后详细介绍并设计与 MP3相关的寄存器:锁相时钟寄存器、USB 控制寄存器和 MP3 解码寄存器。最后是设计显示和按键接口程序并给出了流程图。开始置 P1 口为输入方式有键闭合?延时 10ms 消除抖动有键闭合?S1 键闭合?S2 键闭合?S3 键闭合?合?S4 键闭合?20H 单元加 120H 单元减 120H 单元清 020H 单元置0FFH设置复位功能码0E2H设置显示开关编码0AFH设置页地址(X=0)编码=0B8H设置列地址(Y=0)编码=00HH写显示数据数据=XXH改变页码?设置页地址X=X+1205 5 文件存储格式分析文件存储格式分析5.15.1 文件分配表文件分配表在 FAT 文件系统中,文件的存储依照 FAT 表制定的簇链式数据结构来进行。同时,FAT 文件系统将组织数据时使用的目录也抽象为文件,以简化对数据的管理。FAT 表实际上是一个数据表,以 2 个字节为单位,这个单位称为 FAT 记录项,通常情况其第1、2 个记录项(前 4 个字节)用作介质描述。从第三个记录项开始记录除根目录外的其他文件及文件夹的簇链情况。根据簇的表现情况 FAT 用相应的取值来描述。每个簇用一个字表示 16 位,可寻址 65535 簇。XX ,ff, ff, ff , yy , yy ,yy , yy , yy , yy , yy , yy , ,yy , yy , yy , yy磁盘类型 簇项 2 簇项 3 簇项 N簇项含义如图 5-1 所示6:FAT16 记录项的取值含义(16 进制)FAT16 记录项的取值对应簇的表现情况0000未分配的簇0002FFEF已分配的簇FFF0FFF6系统保留FFF7坏簇FFF8FFFF文件结束簇图 5-1 簇项含义一个文件它存放的第一个簇,由文件目录表的文件目录项给出,而此后的存放簇则由 FAT 给出。数据取得第一个扇区组(簇)对应的簇号为 2,其后的簇号为 3,以此类推一直往下排列,例如:第 4 簇中存放的数据是 0 x0006,这又是一个文件或文件夹的首簇。其内容为第 6 簇,就是说接下来的簇位于第 6 簇,FAT 表指引我们到达FAT 表的第 6 簇指向,上面写的数据是 0 x0007,就是说接下来的簇位于第 7 簇,FAT表指引我们到达 FAT 表的第 7 簇指向 直到根据 FAT 链读取到扇区相对偏移0 x1A0 x1B,也就是第 13 簇,上面写的数据是 0 x000E,也就是指向第 14 簇,14 簇的内容为FFFF ,意即此文件已至尾簇。这是其结束标记,而不是下一个簇号。5.25.2 文件目录表文件目录表文件目录表是紧跟在 FAT2(文件备份)后面的。它存放的是文件的基本信息,包括文件名、属性、建立时间,在磁盘中存放的首簇号等。每个文件的目录信息占用 3221个字节。不管目录文件所占空间为多少簇,一簇为多少字节。系统都会以 32 个字节为单位进行目录文件所占簇的分配。这 32 个字节以确定的偏移来定义本目录下的一个文件或文件夹的属性,实际上是一个简单的二维表。 这 32 个字节的各字节偏移定义如图 5-2 所示6:FAT16 目录项 32 个字母的表示定义字节偏移(16 进制)字节数定义0 x00 x78文件名0 x80 xA3扩展名00000000(读写)00000001(只读)00000010(隐藏)00000100(系统)00001000(卷标)00010000(子目录)0 xB1属性字节00100000(归档)0 xC0 x1510系统保留0 x160 x172文件的最近修改时间0 x180 x192文件的最近修改日期0 x1A0 x1B2表示文件的首簇号0 x1C0 x1F4表示文件的长度图 5-2 目录项定义Figure 5-2 Catalogue define(1)对于短文件名,系统将文件名分成两部分进行存储,即主文件名+扩展名。0 x00 x7 字节记录文件的主文件名,0 x80 xA 记录文件的扩展名,取文件名中的ASCII 码值。不记录主文件名与扩展名之间的.主文件名不足 8 个字符以空白符(20H)填充,扩展名不足 3 个字符同样以空白符(20H)填充。0 x0 偏移处的取值若为 00H,表明目录项为空;若为 E5H,表明目录项曾被使用,但对应的文件或文件夹已被删除。(这也是误删除后恢复的理论依据 ) 。文件名中的第一个字符若为“.”或“.”表示这个簇记录的是一个子目录的目录项。“.”代表当前目录;“.”代表上级目录(这和 dos 或windows 中的使用意思是一样的,如果磁盘数据被破坏,就可以通过这两个目录项的具体参数推算磁盘的数据区的起始位置,猜测簇的大小等,故比较重要的)。 (2)0 xB 的属性字段:可以看作系统将 0 xB 的一个字节分成 8 位,用其中的一位代表某种属性的有或无。这样,一个字节中的 8 位每位取不同的值就能反映各个属性的不同取值了。例如 00000101 就表示这是个文件,属性是只读、系统。 (3)0 xC0 x15 在原 FAT16 的定义中是保留未用的。在高版本的 WINDOWS 系统中有时也用它来记录修改时间和最近访问时间。其字段的意义和 FAT32 的定义是相同的。22(4)0 x160 x17 中的时间=小时
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸下载 > CAD图纸下载


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

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


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