毕业设计216以单片机原理,硬件资源的功能应用,PDIUSBD12芯片功能与接口设计.doc

毕业设计216以单片机原理,硬件资源的功能应用,PDIUSBD12芯片功能与接口设计

收藏

压缩包内文档预览:(预览前20页/共59页)
预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图
编号:544835    类型:共享资源    大小:881.44KB    格式:ZIP    上传时间:2015-12-01 上传人:QQ2****711 IP属地:辽宁
6
积分
关 键 词:
电气电子毕业设计论文
资源描述:
毕业设计216以单片机原理,硬件资源的功能应用,PDIUSBD12芯片功能与接口设计,电气电子毕业设计论文
内容简介:
哈尔滨工程大学本科生毕业论文 1 第 1章 绪论 1.1 概述 1.1.1 课题研究目的 随着电子科技的发展与应用 , 各种计算机外围接口不断推陈出新, USB接口已经成为现今个人计算机上最重要的接口之一,各种电子消费产品也逐渐配置这种接口。 USB接口是速度比较高的串行接口,具有较广阔的发展前景和应用潜力。 USB适用于低档外设与主机之间的高速数据传输。 从 USB问世 至今 , USB在不断的自我完善,并走向成熟。从普通计算机用户、计算机工程师、到硬件芯片生产厂商,都已经完全认可了 USB。 传统的设备主要是基于 RS-232的串行接口,随着计算机速度的提升,已经明显不能适应发展的需要。不仅是速度上比较慢,而且由于其不支持热插拔。而 USB接口由于支持热插拔,占有较少的系统软件硬件资源, 厂商对于USB的硬件软件的支持也越来越完备,现在开发一个 USB外设产品所需要的成本和时间大大降低了。 USB技术取得了迅速的发展。 单片机作为最典型的嵌入式系统,推动了嵌入式系统的发展,成为现代电子系统中重要的智能化器件。因此, USB I/O外围设备的设计已成为电子领域的主要技术之一 1。本课题就是利用单片机设计一个功能简单的嵌入式USB外设,将其与 PC机连接,通过 USB接口实现 PC机与外设之间的相互通信。 1.1.2 国内外发展状况 1994年, Intel, Compaq, Digital, IBM, Microsoft, NEC, Northern Telecom等 7家世界著名的计算机和通信公司成立了 USB论坛,花了近两年的时间形成了统一的意见,于 1995年 11月正式制定了 USB 0.9通用串行总线 (Universal Serial Bus)规范。在 1996年,一些规模型经营的公司,他们的 PC机、监视器,开始配备了 USB接口。原有的所有接口和插槽依然保留,只增加一个 USB接nts哈尔滨工程大学本科生毕业论文 2 插件,其目的是为了在 扩展新的用途时使用。直到 1997年,真正符合 USB技术标准的外设才开始出现。 直 至 Windows98推出之前,推出的 USB功能模块并不多,原因除了因为传统的通信接口,如 RS232, IEEE488等,一时难以退出应用领域外,一些早期的 USB应用探索者步履艰难,抱怨的主因是宿主平台的实用性。 Windows98对 USB驱动软件 ( USBD) 完善,使其可提供对 USB的强有力的支持,对 USB技术的发展起到重要推进作用。自此,市场上涌现出大批的 USB产品。 USB1.0是目前推出的在支持 USB的计算机与外设上普遍采用的标准。 目前普遍采用的 USB1协议 主要应用在中低速外围设备上,它提供的传输速度有低速 1.5Mbps和全速 12Mbps两种。可分别支持显示器、Modem、鼠标、键盘、扫描仪、打印机、光驱及大范围的多媒体设备 。 从国外的发展来看,人们对 USB有着极大的重视程度,这从 USB规范的改进速度之快及国际市场上基于 USB的产品普及的范围可见一斑。从 1994年公布 V1.0FDR版本,短短一年时间版本增订了五次。说明技术人员正大力研究改善 USB的性能。市场上基于 USB的外设己囊括了所有的数字产品。可见国外在这方面已作了很多工作,并且 目前也正以很快的速度发展 2。 国内对于 USB的研究在这几年才刚刚起步。市场上也可以见到各种 USB产品,也有少量的专门讨论 USB开发的国内网站。比较专业的稳定的网站有USB开发网( ),但因为在前几年还很少有人做这方面的工作,所以在相关网站上开发 USB的文章量少,更新速度慢;国内知名高校的 BBS( 比如水木华 :),上面相关的文章询问 USB的人多,但回答问题的人仅限于几个。对 USB芯片进行开发、技术服务和应用方案设计的公司更是寥寥无几 。 虽然在 网上做调研所得到的信息并不完全,但由此可以看出国内对 USB技术研究的需求及欠缺 。 1.2 USB接口 及 USB器件 分析 USB( Universal Serial Bus通用串行总线),是一种快速、灵活的总线接nts哈尔滨工程大学本科生毕业论文 3 口。与其它通信接口比较, USB接口的最大特点是易于使用,这也是 USB的主要设计目标。作为一种高速总线接口, USB适用于多种设备,如数码相机、MP3播放机、高速数据采集设备等。易于使用还表现在 USB接口支持热插拔,并且所有的配置过程都由系统自动完成,无需用户干预。 USB接口支持1.5Mb/s( 低速 )和 12Mb/s( 全速 ) 的数据传输速率,扣除用于总线状态、控制和错误监测等的数据传输, USB的最大理论传输速率仍达 1.2Mb/s或9.6Mb/s,远高于一般的串行总线接口。 USB接口芯片价格低廉,这也大大促进 USB设备的开发与应用。 在进行一个 USB设备开发之前,首先要根据具体使用要求选择合适的USB控制器。目前,市场上供应的 USB控制器主要有两种:带 USB接口的单片机( MCU)或纯粹的 USB接口芯片。带 USB接口的单片机从应用上又可以分成两类,一类是从底层设计专用于 USB控制的单片机,另一类是增加了 USB接口的普通 单片机,如 Cypress公司的 EZ USB( 基于 8051) ,选择这类 USB控制器的最大好处在于开发者对系统结构和指令集非常熟悉,开发工具简单,但对于简单或低成本系统。其价格因素也是在实际选择过程中需要考虑的因素。纯粹的 USB接口芯片仅处理 USB通信,必须有一个外部微处理器来进行协议处理和数据交换。 这类 典型产品有 Philips公司的 PDIUSBD12( 并行接口 ) ,NS公司 USBN9603/9604( 并行接口 ) , NetChip公司的 NET2888等。 USB接口芯片的主要特点是价格便宜、接口方便、可靠性高,尤其适 合于产品的改型设计(硬件上仅需对并行总线和中断进行改动,软件则需要增加微处理器的USB中断处理和数据交换程序, PC机的 USB接口通信程序,无需对原有产品系统结构作很大的改动) 2。 PDIUSBD12是在 USB协议设备端使用最多的芯片之一。此芯片是带有并行总线的全速 USB接口器件,可与任何微控制器实现高速并行接口 ( 2Mb/s) ,并用于许多外设。这种实现 USB接口的标准组件,可以使设计者在不同类型的微控制器中选择最合适的微控制器,使用已有的结构和减少固件上的投资,从而用最快捷的方法实现最经济的 USB设备 ,它 具有以下特性: nts哈尔滨工程大学本科生毕业论文 4 1、 符合 USB1.0版规范; 2、 高性能 USB接口器件,集成了 SIE, FIFO存储器,收发器以及电压调整器; 3、 可以与任何外部微控制器 /微处理起实现高速并行接 ( 2MB/s) ; 4、 集成 320B多结构的 FIFO存储器; 5、 完全自治的直接内存存取( DMA)操作; 6、 可以通过软件控制与 USB的连接; 7、 采用 GoodLink技术的连接指示器,在通信时使 LED闪烁; 8、 可编程的时钟频率输出; 9、 多中断模式实现批量和同步传输 3。 1.3 系统方案设计 以 单片机原理, 硬件资源的功能应用, PDIUSBD12芯片功能与接口设计,USB1.0协议 等理论知识为基础 ,设计出完整的系统原理图。根据原理图,将硬件系统资源焊接成 PCB板。 根据系统功能,设计编写固件程序,下载后进行调试, 实验板在单片机控制下能单独工作后, 然后和上位机进行联机调试,通过 USB接口实现与上位机的相互通信。 本课题涉及的理论知识主要是 USB1.0协议,重点在于硬件设计,难点在于编程和整机的调试。经过论证,在实现设计要求的前提下, 为了降低系统的成本,选用接口级芯片 PDIUSBD12, 控制器选取 8051, 它有 64k的存储容量,对于固件 程序已经足够使用了;而且这款单片机支持在线编程,通过串口下载程序 , 这给程序的下载和使用带来来方便。 程序设计采用 C语言进行编程,软件仿真采用 Keil C51。 1.4 预期实现目标 通过硬件电路和驱动程序 ( 包括设备端和上位机端的驱动程序)实现以下目的: nts哈尔滨工程大学本科生毕业论文 5 1、 保证电路连接的正确性和可行性。 完成以单片机与 USB接口芯片为主要芯片的电路板 ; 2、 完成 程序的编写,主要是设备端的固件编程 ; 3、 通过硬件调试,单片机能独立控制电路板上元件工作 ; 4、 实现 电路板与上位 PC机 双向传输。这 需要与上位机进行联机调试,主要在软件部 分实现。 nts哈尔滨工程大学本科生毕业论文 6 第 2章 USB概述 及 协议 USB以 USB主机为核心,以外围的 USB设备为功能,组成了 USB系统模型。主机是 USB的核心,每次 USB数据通信都必须是由 USB主机来发起的,主机管理着 USB设备。 USB物理上是一个含有两条电源线 ( VCC, GND) 和两条以差分方式产生信号的线 ( D+, D-) ,传输率可达 12Mbps的串行接口,一个 PC主机可以 连接多 达 127个外围设备。 USB协议 是以令牌包为主的通信协议, 12Mbps的总线带宽被分割成 1ms的帧,所有任务以时分传输 ( TDM)来分享总线。 2.1 USB体系结 构概述 2.1.1 USB系统描述 一个 USB系统主要被定义为三个部分: USB的互连; USB的设备; USB的主机 。 USB的互连是指 USB设备与主机之间进行连接和通信的操作,主要包括以下几方面: 总线的拓扑结构: USB设备与主机之间的各种连接方式; 内部层次关系:根据性能叠置, USB的任务被分配到系统的每一个层次; 数据流模式:描述了数据在系统中通过 USB从产生方到使用方的流动方式; USB的调度: USB提供了一个共享的连接。对可以 使用的连接进行了调度以支持同步数据传输,并且避免的优先级判别的开销。 USB连接了 USB设备和 USB主机, USB的物理连接是有层次性的星型结构。每个网络集线器是在星型的中心,每条线段是点点连接。从主机到集线器或其功能部件,或从集线器到集线器或其功能部件,从图 2.1中可看出 何nts哈尔滨工程大学本科生毕业论文 7 USB系 拓扑结构。 其中, USB集线器 Hub是一组设备的连接点,主机中有一个被嵌入的 Hub叫根 Hub( root Hub) 。主机端通常是指 PC主机或是另外再附加 USB端口的扩充卡,主机通过根 Hub提供若干个连接点。集线器除了扩增系统的连接 点外,还负责中继 ( repeat) 上游 或 下游的信号以及控制各个下游端口的电源管理。 当 PC上电时,所有 USB设备与 Hub都默认地址为 0, PC机启动程序向 USB查询,地址 1分配给发现的第一个设备,地址 2分配给第二个设备或 Hub,如此重复寻找并分配地址,直到所有设备赋完地址,并加载相应的的驱动程序。 当设备突然被拔移后, PC机通过 D+或 D-的电压变化检测到设备被移除掉后,将其地址收回,并列入可使用的地址名单中。 在任何 USB系统中,只有一个主机。 USB和主机系统的接口称作主机控制器,主机控制器可由硬件、固件和软件 综合实现。根集线器是由主机系统整合的,用以提供更多的连接点。 USB的设备如下所示 : 网络集线器,向 USB提供了更多的连接点 ; 功能器件:为系统提供具体功能,如 ISDN的连接,数字的游戏杆或扬声器。 图 2.1 总线的拓扑结构 nts哈尔滨工程大学本科生毕业论文 8 USB设备提供的 USB标准接口的主要依据: 对 USB协议的运用; 对标准 USB操作的反馈,如设置和复位; 标准性能的描述性信息 。 2.1.2 USB连接头及其供电方式 为了避免连接错误, USB定义了两种不同规格的星形 USB连接头:序列A与 B连接头,其中序列 A接头用来连接下游的设 备。每个连接头内拥有 4个针脚,其中两个是用来传递差分数据的,另两个则用于 USB设备的电源供给。 USB的供电方式有两种 : 1、总线供电集线器 电源由上游连接端口供应,最多只能从上游端消耗 500mA。一个 4个连接端口的集线器,每个下游端口最多消耗为 100mA,外围电路消耗 100mA。 2、自我供电集线器 集线器本身有电源,可以提供给本身的控制器以及下游端口至少 500mA的电流,集线器最多可从上游端消耗 100mA。 2.1.3 USB系统软硬件组成 USB系统的软硬件资源可以分为 3个层次:功能层、 设备层和接口层 。 功能层提供 USB设备所需的特定的功能,主机端的这个功能由用户软件和设备类驱动程序提供,而设备就由功能单元来实现。 设备层主要提供 USB基本的协议栈,执行通用的 USB的各种操作和请求命令。从逻辑上讲,就是 USB系统软件与 USB逻辑设备之间的数据交换。 接口层涉及的是具体的物理层,其主要实现物理信号和数据包的交互,即在主机端的 USB主控制器和设备的 USB总线接口之间传输实际的数据流。 无论在软件还是硬件层次上, USB主机都处于 USB系统的核心。主机系统不仅包含了用于和 USB外设进行通信的 USB主机控制器及用 于连接的 nts哈尔滨工程大学本科生毕业论文 9 USB接口( SIE),更重要的是, 主机系统是 USB系统软件和 USB客户软件的载体 。 USB主机软件系统可以分为三个部分 : 1、 客户软件部分 ( CSW) ,在逻辑上和外设 功能部件部分进行资料的交换 ; 2、 USB系统软件部分(即 HCDI),在逻辑和实际中作为 HCD和 USBD之间的接口 ; 3、 USB主机控制器软件部分(即 HCD和 USBD),用于对外设和主机的所有 USB有关部分的控制和管理,包括外设的 SIE部分、 USB资料发送接收器( Transreceiver) 部分及外设的协议层等 2。 2.2 USB编码方式与传输类型 2.2.1 USB的编码方式 USB采用不归零翻转 ( Non Return to Zero Invert,简称 NRZI) 编码方式,对于不同步的脉冲信号也能产生同步的数据存取,能有效地解决 USB缆线信号延迟产生的误差。 NRZI的编码规则是 : 当数据位为 “1”时电平保持不变,为 “0”时电平翻转。如果原始的串行数据中含有连续 6个 “1,就在其后填充一个 “0。在 NRZI解码的过程中发现连续的 6个 “1”时,则移走其后原填入的 “0。 NRZI编码、位填充过程分析如下 : 原数据 0 1 1 0 0 0 1 1 0 1 1 1 1 1 1 1 1 位填充 0 1 1 0 0 0 1 1 0 1 1 1 1 1 1 0 1 1 NRZI码 0 1 1 1 0 1 0 0 0 1 1 1 1 1 1 1 0 0 0 2.2.2 USB传输 USB总线是一种串行总线,即它的资料是一个 bit一个 bit来传送的。虽然USB总线是把这些 bit形式的资料打成资料包来传送,但资料的同步也是必不可少的。 USB1.0协议规定, USB的标准脉冲时钟为 12MHz,而其总线时钟为nts哈尔滨工程大学本科生毕业论文 10 1ms,即每隔 1ms, USB器件应为 USB线缆产生一个时钟脉冲序列。这个脉冲序列称为帧开始资料包 ( SOF) ,主机利用 SOF来同步 USB资料的发送和接收。 为实现多外设、多信道地同时工作, USB总线使用资料包的方式来传输资料和控制信息。 USB数据传输中的每一个资料包都以一个同步字段开始 ,它的最后两个 bit作为 PID字段开始的标志。紧跟在同步字段之后的一段 8bit的脉冲序列称为 PID(资料包标识字段 ), PID字段的前四位用来标记该资料包的类型,后四位则作为对前四位的校验。 PID字段被分为标记 PID( 共有 IN、OUT、 SETUP或 SOF四种 ) 、资料 PID( DATA0或 DATA1)、握手 PID( ACK、NAK或 STALL)及特殊 PID等。主机根据 PID字段的类型来判断一个资料包中所包含的数据类型,并执行相应的操作。 当一个 USB外设初次连接时, USB系统会为这台外设分配唯一的 USB地址,这个地址通过地址寄存器( ADDR)来标记,以保证资料包不会传送到别的 USB外设。 7bit的 ADDR使得 USB系统最大寻址为 127台设备( ADDR字段)。由于一台 USB外设可能具有多个信道,因而在 ADDR字段后会有一个附加的端点字段( EndpointField,简标为 ENDP)来标记不同的信道。所有的 USB外设都必须支持 Endpoint0信道,用 0000来标记。对于高速设备,可以最大支持 16个信道,而低速设备在 Endpoint0之外仅能有一个信道。 数据域位作为一次 USB数据传输的中心目的,在一个 USB资料包中可以包含 0 1203Byte的资料。而帧数量字段则包含在帧开始资料包中,对有的应用场合,可以用帧数量字段作为资料的同步信号。为保证控制、块传送及中断传送中资料包的正确性, CRC校验字段被引用到如标记、资料、帧开始( SOF)这样的资料包中。 CRC校验(资料冗余校验)可以给予 资料以 100% 的正确性检验。 在 USB系统中,有四种形式的资料包:信令包( Token Packets)、 DATA 资料包( DATA Packets)、帧开始包 ( SOF Packets) 和握手包 ( Handshake Packets) 。每个资料包的结束都会有两个 bit宽的 EOP字段作为资料包结束的标志 (图7-18), EOP在差模信号中表现为 D+和 D-都处于 “0”状态。对于高速 USB外设nts哈尔滨工程大学本科生毕业论文 11 而言,这个脉冲宽度在 160 175ns之间,而低速设备则在 1.25 1.50s之间。无论其后是否有其它的资料包, USB线缆都 会在 EOP字段后紧跟 1bit的总线空闲位。 USB主机或外设利用 EOP来判断一个资料包的结束。 为了满足不同外设和用户的要求, USB提供了四种传输方式:控制传输;同步传输;中断传输;批传输。它们在数据格式、传输方向、数据包容量限制、总线访问限制等方面有着各自不同的特征: 1、 控制传输( Control Transfer):可靠的,非周期的,由主机软件发起的请求或者回应的传送,通常用于命令事务和状态事务。 2、 同步传输( Isochronous Transfer);在主机和设备之间的周期性的,连续的通信,一般用于传 送与时间相关的信息。这种类型保留了将时间概念包含于数据中的能力。但并不意味着用于同步传送的数据的时间是很重要的,即传送并不一定很急。 3、 中断传输( Interrupt Transfer):小规模数据的,低速的,固定延迟的传送。 4、 批量传输( Bulk Transfer):非周期的,大包的,可靠的传送。典型用于传送可以利用任何带宽的数据,这些数据没有带宽时,是可以容忍等待。 对于 PDIUSBD12,端点的工作方式可通过 Set Mode命令配置为 4种不同的模式,分别为: 1、 模式 0( Non-ISO模式):非同步 传输 ; 2、 模式 1( ISO-OUT模式):同步输出传输 ; 3、 模式 2( ISO-IN模式):同步输入传输 ; 4、 模式 3( ISO-IO模式): 同步输入输出传输 。 端点 2在有些方面是比较特别的, 端点 2是进行吞吐大量数据的主要端点,一般称其为主端点,主端点执行主机的特性以减轻传输大量数据的任务, 具体 包括: 1、 双缓冲 ; 2、 支持 DMA; nts哈尔滨工程大学本科生毕业论文 12 3、 可以配置为同步传输或非同步(批量和中断)传输。 2.3 USB设备请求 USB的标准设备请求是用来完成 USB设备枚举的命令, USB设备必须对标准设备请求作出响应,不管该设备是 否已经被分配了一个默认的地址或者该设备目前正在被配置。所有的标准设备请求都是使用默认的管道来传输的。 2.3.1 USB标准请求格式 USB的设备请求由八个字节组成,格式定义如表 2.1所示 。 2.3.2 USB标准请求命令 USB标准请求有 11个命令,如下: 1、 获取状态请求:该命令用于返回特定接受者的状态 。 2、 清除特性请求:该命令用于清除或禁用接受者的某些特性。 3、 设置特性请求:该命令是主机用来启用或激活命令接受者某些特性。 4、 设置地址请求:该命令用于主机给设备分配地址。 5、 获取描述请求:该命令用于主机获取设备的特定 描述符。 6、 设置描述符请求:主机利用该命令来修改设备中的有关描述或增加 新的描述符等。 7、 获取配置请求:主机利用该命令获得设备当前的配置值。 8、 设置配置请求:主机通过该命令来指示设备采用要求的配置。 9、 获取接口请求:主机利用该命令来获取当前的某个接口的接口描述符的编号。 10、 设置接口请求 :主机可以通过该命令来要求设备用某个接口描述符来描述接口。 11、 同步帧请求:该命令用于设备设置和报告一个端点的同步帧。 nts哈尔滨工程大学本科生毕业论文 13 表 2.1 USB设备请求格式 偏移值 字段名称 字段长度 字段取值 说明 0 设备请求类型 1 位图 请求特性: D7:数据传输方向 0=主机到设备 1=设备到主机 D6.5:类型 0=标准; 1=类型 2=厂商; 3=保留 D4.0:接受方 0=设备; 1=接口 2=端点; 3=其他 4.31=保留 1 设备请求 1 数值 USB设备请求 2 值 2 值 根据不同的请求,以字节为单位来定义 4 索引 2 字段编号索引 根据不同的请求,以字节为单位来定义 6 长度 2 计数 如果传输一组数据,指出要传输的字节数 2.4 USB设备的描述符 USB设备描述符是说明设备的通用信息,这包括对设备及所有设备设置全程起作用 的信息。 2.4.1 设备描述符 一个 USB总线设备只能有一个设备描述表。设备描述表 的 结构如表 2.2所nts哈尔滨工程大学本科生毕业论文 14 示 : 表 2.2 设备描述符 偏移值 字段名称 字段大小 字段取值 说明 0 bLength 1 数字 描述符的大小 =12H 1 bDescriptorType 1 常数 设备描述符类型 =01H 2 bcdUSB 2 BCD USB规划发布号 4 bDeviceClass 1 类型 类型代码(由 USB指定) 5 bDeviceSubClass 1 子类型 子类型代码(由 USB分配) 6 bDeviceProtocol 1 协议 协议代码(由 USB分配) 7 bMaxPacketSize0 1 数字 端点 0最大分组大小(只有 8, 16, 32或 64有效) 8 idVendor 2 ID 供应商 ID(由 USB分配 ) 10 idProduct 2 ID 产品 ID(由厂商分配) 12 bcdDevice 2 BCD 设备出厂编码 14 iManufacture 1 索引 厂商描述符字符串索引 15 iProduct 1 索引 产品描述符字符串索引 16 iSerialNumber 1 索引 设备序 列号字符串索引 17 bNumConfiguations 1 数字 可能的配置数 2.4.2 配置描述 符 配置描述符定义了设备的配置信息,结构如表 2.3所示 。 2.4.3 接口描述符 接口描述符说明了接口所提供的配置,接口描述符的结构如表 2.4所示 。 nts哈尔滨工程大学本科生毕业论文 15 表 2.3 配置描述符 偏移值 字段名称 字段大小 字段取值 说明 0 bLength 1 数字 描述符的大小 =09H 1 bDescriptorType 1 常数 配置描述符类型 =02 H 2 wTotalLength 2 数字 此设置信息的总长(包 括设置,接口,端点和设备类及厂商定义的描述表) 4 bNumInterfaces 1 数字 此设置所支持的接口个数 5 bConfigurationValue 1 数字 作为 Set Configuration的一个参数选择配置值 6 iConfiguration 1 索引 用于描述该配置字符串描述符的索引 7 bmttributes 1 位图 配置特性: D7:总线供电 D6:自供电 D5:远程唤醒 D40; 保留(复位为 0) 8 MaxPower 1 mA 在此设置下的总线电源耗费量,以 2mA为一个单位 nts哈尔滨工程大学本科生毕业论文 16 表 2.4 接口描述符 偏移值 字段名称 字段大小 字段取值 说明 0 bLength 1 数字 描述符的大小 =09H 1 bDescriptorType 1 常数 接口描述符的类型 =04H 2 bNumInterfaces 1 数字 接口的编号 3 bAlternate Setting 1 数字 用于为上一个字段选择可供替换的设置 4 bNumEndpoint 1 数字 使用的端点数目(端点 0除外) 5 bInterface Class 1 类型 类型代码(由 USB分配) 6 bInterfaceSubClass 1 子类型 子类型代码(由 USB分配) 7 bInterface Protocal 1 协议 协议代码(由 USB分配) 8 iInterface 1 索引 字符串描述符的索引 2.4.4 端点描述符 端点描述符包括了端点的类型,大小等信息。 USB设备中的每一个端点都有自己的描述符。端点描述符的结构如表 2.5所示 。 2.4.5 字符串描述 字符串描述是可选的。如果一个设备不支持字符串描述符,在设备,配置和接口描述符内的所用字符串描述符的索引都必须为 0。字符串描述 符的结构如表 2.6所示 。 nts哈尔滨工程大学本科生毕业论文 17 表 2.5 端点描述符 偏移值 字段名称 字段大小 字段取值 说明 0 bLength 1 数字 描述符的大小 =07H 1 bDescriptorType 1 常数 接口描述符的类型 =05H 2 bEndpointAddress 1 端点 USB设备的端点地址: Bit 0.3: 端点号 Bit 4.6: 保留,复位为 0 Bit 7:方向,对于控制端点可以忽略 0: OUT端点 ; 1: IN端点 3 bmAttributes 1 位图 端点属性,当进行配置时采用以下的 配置值 Bit0.1 传输类型 00 控制 01 同步 02 批量 03 中断 其他位保留 4 wMaxPacketSize 2 数字 本端点接受或发送的最大信息包的大小 6 bInterval 1 数字 轮询数据传传送端点的时间间隔。 表 2.6 字符串描述符 nts哈尔滨工程大学本科生毕业论文 18 偏移值 字段名称 字段大小 字段取值 说明 0 bLength 1 数字 描述符的大小 1 bDescriptorType 1 常数 字符串描述符的类型 2 bString N 数字 UNICODE编码字符串 各个描述符的树状结构如图 2.2所示: 设备描述 配置描述 配置描述接口描述 接口描述端点描述 端点描述 端点描述 图 2.2 USB描述符层次结构 所有的 USB设备都有缺省控制管道,缺省控制管道的最大包长在描述表中得到了说明。设置描述表中包括设置与接口的定义,但其中不包括端点描述表。除了最大包长度信息外,缺省管道的特性由 USB规范定义,并且对所有的 USB总线设备都一样 4。 2.5 总线协议 USB总线属一种轮讯方式的总线,主机控制端口初始化所有的数据传输。 nts哈尔滨工程大学本科生毕业论文 19 每一总线执行动作最多传送三个数据包。按照传输前制定好的原 则,在每次传送开始时,主机控制器发送一个描述传输运作的种类、方向, USB设备地址和终端号的 USB数据包,这个数据包通常称为标志包 ( token packet) 。USB设备从解码后的数据包的适当位置取出属于自己的数据。数据传输方向不是从主机到设备就是从设备到主机。在传输开始时,由标志包来标志数据的传输方向,然后发送端开始发送包含信息的数据包或表明没有数据传送。接收端也要相应发送一个握手的数据包表明是否传送成功。发送端和接收端之间的 USB数据传输,在主机和设备的端口之间,可视为一个通道。存在两种类型的通道:流和消 息。流的数据不像消息的数据,它没有 USB所定义的结构,而且通道与数据带宽、传送服务类型,端口特性(如方向和缓冲区大小)有关。多数通道在 USB设备设置完成后即存在。 USB中有一个特殊的通道 缺省控制通道,它属于消息通道,当设备一启动即存在,从而为设备的设置、查询状况和输入控制信息提供一个入口。 事务预处理允许对一些数据流的通道进行控制,从而在硬件级上防止了对缓冲区的高估或低估,通过发送不确认握手信号从而阻塞了数据的传输速度。当不确认信号发过后,若总线有空闲,数据传输将再做一次。这种流控制机制允许灵活 的任务安排,可使不同性质的流通道同时正常工作,这样多种流通常可在不同间隔进行工作,传送不同大小的数据包 5。 2.6 USB的枚举过程 USB设备接入计算机后,设备需要经过初始化和枚举才能被计算机识别,初始化主要有 MCU完成,而枚举是在计算机的控制下完成的。 枚举过程如下: 1、 设备连接。 USB设备接入 USB总线。 2、 设备上电。 USB设备可以使用总线供电, 也 可以使用外部总线供电。 3、主机检测到设备 ,发出复位。设备连接到总线后,主机拉电阻检测到有新的设备接入, 然后向端口发送一个复位信号。 nts哈尔滨工程大学本科生毕业论文 20 4、设备默认状 态。设备要从总线上接收到一个复位的信号后,才可以对总线的处理操作作出响应。设备接收到复位信号后,使用默认的地址( 00H)来对其进行寻址。 5、地址分配。当主机接收到有设备对默认地址( 00H)响应的时候,就对设备分配一个空闲的地址。以后设备就只对该地址进行响应。 6、读取 USB设备描述符。主机读取 USB设备描述符,确认 USB设备的属性。 7、设备配置。主机依照读取的 USB设备描述符来进行配置,如果设备所需的 USB资源得以满足,就发送配置命令给 USB设备,表示配置完成。 8、挂起。为了节省电源,当总线保持空闲状 态超过 3ms以后,设备驱动程序就会进入挂起状态。 完成以上步骤后, USB设备即可以使用。在枚举过程中,设备不一定要求进入挂起状态。 2.7 USB主机接口及系统的功能 从具体的 USB主机的实现角度上来讲,在遵行 USB协议 1.0的基础上,目前有 2套工业标准: 1、 通用式主机控制器接口(简写成 UHCI),由 Inter公司提出。 2、 开放式主机控制器接口(简写成 OHCI或 Open HCI),由 Compaq等公司提出。 UHCI和 OHCI实现 USB主机的功能基本上是一样的。 只是具体的实现过程有些不同,两者均由 2部分 组成,即主机控制器( Host Control,简写成 HC)和主机控制器驱动( Host Control Driver, 简写成 HCD)。 主机控制器更多的是面向硬件部分及其厂商,怪顶了主机控制器硬件与 PC系统内存之间的接口、主机控制器在 PCI总线上的接口定义、主机 USB事务的各种功能模块以及提供给用户交互的各种寄存器定义等;主机控制器驱动更多的是基于软件层次的标准,是 USB协议栈与 USB主机控制器硬件之间联系的接口,直接负责nts哈尔滨工程大学本科生毕业论文 21 主机控制器硬件的配置和管理,一般这部分软件厂商提供。 按照 USB的规定以及 USB系统的组成 的需要, USB主机完成的主要功能包括以下几个方面: 1、 检测 USB设备的连接和断开。通过 USB电缆信号线的电平变换来实现该功能,并得到主机控制器的处理。 2、 管理主机和设备之间标准的控制管道。以保证端点 0和缺损管道的正常通信。 3、 收集设备的状态,统计总线 的活动。 USB的 总线上最多可以同时挂接127个设备,这么多的设备都要正常的工作,就是靠主机来进行管理的,同时主机会根据收集到的各种设备和总线信息来执行某些操作。 4、 控制和管理主机控制器与设备之间的电器接口,包括为端口提供一点数量的电流 1。 2.8 本 章小结 在本章中, 简要的介绍了 相关的 USB1.0协议内容, 根据本次课题设计的要求,重点介绍了 USB体系,软硬件 组成 、编码方式与传输 类型、 总线协议以及 主机系统功能 等内容。它们是开发 USB设备, 进行 通信的应用的基础。实际应用中,这里的大部分工作由控制器完成 。 nts哈尔滨工程大学本科生毕业论文 22 第 3章 硬件特性及电路设计 3.1 单片机 8051介绍 本课题设计 USB系统 比较简单 ,单片机执行的功能 不 多, 在确保实验功能的情况下,为了降低成本,因此选用性价比高的 8051单片机 。 MCS-51是 Intel公司生产的一个单片机系列名称。属于这一系 列的单片机有多种。 8051便是其中一种性价比高的单片机。 8051单片机内部结构按其功能部件划分可以看出由 8大部分组成的。这 8大部分是 : 1、 一个 8位中央处理机 CPU。 2、 128个字节的片内数据存储器 RAM。 3、 4KB的片内程序只读存储器 ROM或 EPROM。 4、 18个特殊功能寄存器 SFR。 5、 4个 8位并行输入输出 I/O接口 : P0口、 P1口、 P2口、 P3口(共 32线) , 用于并行输入或输出数据。 6、 1个串行 I/O接口。 7、 2个 16位定时器 /计数器。 8、 1个具有 5个中断源 , 可编程为 2个优先级的中断系统。 它可以接收外部中断申请 , 定时器 /计数器中断申请和串行口中断申请。 本课题选用的 8051单片机芯片为 40个引脚 ,它是 HMOS工艺制造的芯片 ,采用双列直插( DIP)方式封装 。 1、 主电源引脚 Vcc和 Vss VCC( 40脚) : 接 +5V电源正端 ; VSS( 20脚) : 接 +5V电源地端。 2、 外接晶体引脚 XTAL1和 XTAL2 XTAL1( 19脚) : 接外部石英晶体的一端。在单片机内部 , 它是一个反相放大器的输入端 , 这个放大器构成了片内振荡器。当采用外 部时钟时 ,nts哈尔滨工程大学本科生毕业论文 23 对于 HMOS单片机 , 该引脚接地 ; XTAL2( 18脚) : 接外部晶体的另一端。在单片机内部 , 接至片内振荡器的反相放大器的输出端。当采用外部时钟时 , 对于 HMOS单片机 , 该引脚作为外部振荡信号的输入端 。 3、 控制信号或与其它电源复用引脚 4、 I/O口线引脚排列 ( 1) P0口 8位、漏极开路的双向 I/O口。 当使用片外储存器及外扩 I/O口时, P0口做为低字节地址 /数据复 线。在编程时, P0口可用于接收指令代码字节;在程序校检时, P0口可输出指令字节(这是需要外加上拉电阻)。 ( 2) P0口也可作为通用 I/O使用,变成准双向口。当作为普通输入时,应将输出锁存器置 1。 P0口可驱动 8个 TTL负载。 P1口 8位、准双口 I/O,具有内部上拉电阻。 P1口是为用户准备的 I/O双向口。在编程和校检时,可用做输入低 8位地址;用做输入时,应先将输出锁存器置 1; P1口可驱动 4个 TTL负载。 P1口的 P1.0和 P1.1具有替代功能。 ( 3) P2口 8位、准双向 I/O口,具有内部上拉电阻。 当使用片外储存器或外扩 I/O端口时, P2口输出高 8位地址;在编程 校检时, P2口可接收高字节地址和某些控制信号; P2口也 可作为 I/O口使用。用做输入时,应先将输出锁存器置 1; P2口可驱动 4个 TTL负载。 ( 4) P3口 8位、准双向 I/O口,具有内部上拉电阻。 P3口可作为普通 I/O口。用作输入时,应先将输出锁存器置 1;在编程校检时, P3口接收某些控制信号;可驱动 4个 TTL。 P3口还提供各种替代功能。 整个 PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持 ALE管脚处于低电平 10ms来完成。在芯片擦操作中,代码阵列全被写 “1”且在任何非空存储字节被重复编程以前,该操作必须被执行。 此外, 8051设有稳态逻辑,可 以在低到零频率的条件下静态逻辑,支持两种软件可选的掉nts哈尔滨工程大学本科生毕业论文 24 电模式。在闲置模式下, CPU停止工作。但 RAM,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存 RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止 6。 3.2 PDIUSBD12器件与微控制器的连接 3.2.1 PDIUSBD12功能描述 PHILIPS公 司推 出的 PDIUSBD12是一款性价比很高的 USB器件。它通常用做微控制器系统中实现与微控制器进行通信的高速通用并行接口,而且还 支持本地的 DMA传输。 PDIUSBD12完全符合 USB1.0协议 规范。 PDIUSBD12所具有的低挂起功耗连同 LazyClock输出可以满足使用 ACPI、 OnNOW和 USB电源管理的要求。低的操作功耗可以应用于使用总线供电的外设。 1、 PHILIPS串行接口引擎 PSIE实现了全部的 USB协议层,且完全由硬件实现而不需要固件的参与。该模块的功能包括:同步模式的识别,并行 /串行的转换,位填充 /解除填充, CRC校验 /产生, PID校验 /产生,地址识别和握手评估 /产生。 2、 SoftConnect技术 SoftConnect与 USB的连接是通过 1.5k上拉电阻将 D+设置为高电平实现的。 1.5k上拉电阻集成在 PDIUSBD12片内,默认状态下不与 电源 相连,其连接的建立是通过外部 /系统微控制器发送命令实现的。 3、 GoodLink技术 GoodLink技术可以提供良好的 USB连接指示。在枚举过程中, LED指示灯根据通信 状况间歇闪烁。配置完成并装安 驱动程序后 指示灯将一直亮 7。 3.2.2 PDIUSBD12管脚配置 PDIUSBD12的管脚排列如图 3.1所示 : nts哈尔滨工程大学本科生毕业论文 25 DAT(0)112324DAT(3)28 A07VOUT(3.)6D+25-GN5467DAT(5)864V3XTAL21G_N790 RESTALE1019OCS_NUPD213LKOT4IN_8DMACK_N 7 REQ16W5D_N图 3.1 PDIUSBD12管脚排列图 3.2.3 单片机与 PDIUSBD12的连接 单片机与 PDIUSBD12的连接如图 3.2所示: 对上图中的电路说明如下: 1、 电路中使用 A0作为命令数据选择位 2、 端点 2使用批量传输( Bulk),所以 DMACK_N和 EOT_N接上拉电阻,否则, PDIUSBD12将不能接受任何数据; 3、 单片机外接晶振,所以 PDIUSBD12的 CLKOUT脚空; 4、 从图上可以看出,当选择命令时, PDIUSBD12的地址为 0xf1ff;当选择数据时 PDIUSBD12的地址为 0xf0ff; 5、 单片机使用 P0口进行 输入输出,由于 P0是开漏的,所以,需要接上拉电阻,在电路中使用排阻; 6、 GL_N通过一个电阻和 LED串接到 VCC,在 USB设备枚举期间,灯一直闪烁,当 USB设备枚举成功后,灯会灭,安装完驱动程序后,灯一直亮着,传送数据期间,灯会闪烁; nts哈尔滨工程大学本科生毕业论文 26 图 3.2 PDIUSBD12与单片机连接图 7、 USB_D+, USB_D-线上的 1M上拉电阻下拉电阻对实际没有什么影响,它们主要在噪声比较大的情况下,起到抗干扰的作用 ; 8、 采用总线供电,总开关 S1负责电源的连接与断开, LED指示整个电路是否有电。在这种方式下,确保电路 的正确连接很重要,否则,容易损坏计算机 4。 在使用的同时,应注意一个问题。由于 PHILIPS公司生产的 PDIUSBD12芯片自身存在一个小小的问题,即当片选没有选中时它的第 14角仍然会输出低电平的中断信号,由于它接单片机的 P3.3,所以与矩阵键盘共用的 P3.3口有冲突,使用 PDIUSBD12芯片时请将该芯片左边的 INT1两线柱短接。在不使用该芯片时不用接。 3.3 系统硬件设计 3.3.1 单片机电路设计 单片机最小系统主要包括其供电系统,时钟电路和 复位电路。本次单片nts哈尔滨工程大学本科生毕业论文 27 机的系统供电电路和时钟电路都做了简化 处理,单片机的系统复位电路采用手动复位。 单片机电路如图 3.4所示 。 对电路说明如下: 1、单片机采用外接晶振的方法,是外接晶振,频率为 11.0592MHz; 2、复位电路采用按键复位; 3、 PDIUSBD12使用单片机的外部中断 0。在程序里将单片机和PDIUSBD12设置为相同的中断方式,即电平中断。然后由 PDIUSBD12自动清除中断脚上的低电平,以便接受下次中断 8。 3.3.2 外围电路设计 本次课题的外围硬硬件系统资源包括:串口通信、 6位动态数码显示、8位流水灯、蜂鸣器、 4*4矩阵键盘、温度传感器 、液晶显示器接口、PDIUSBD12芯片接口等。 每个元件与单片机都有单独的电路连接,他们均以单片机为控制核心。使单片机能独立的控制每个元件的正常工作。再通过 PDIUSBD12芯片 , USB接口,上位机能与单片机实现通信,上位机发送信息到单片机,单片机根据上位机信息控制外围电路的工作;外围设备发送信息到单片机,单片机反馈到上位机,在上位机的控制界面上显示状态信息。 其整体框图 如图 3.5所示。 根据整
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
提示  人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:毕业设计216以单片机原理,硬件资源的功能应用,PDIUSBD12芯片功能与接口设计
链接地址:https://www.renrendoc.com/p-544835.html

官方联系方式

2:不支持迅雷下载,请使用浏览器下载   
3:不支持QQ浏览器下载,请用其他浏览器   
4:下载后的文档和图纸-无水印   
5:文档经过压缩,下载后原文更清晰   
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

网站客服QQ:2881952447     

copyright@ 2020-2025  renrendoc.com 人人文库版权所有   联系电话:400-852-1180

备案号:蜀ICP备2022000484号-2       经营许可证: 川B2-20220663       公网安备川公网安备: 51019002004831号

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