USB接口波形发生器解读.docx

上传人:b****8 文档编号:10506718 上传时间:2023-02-17 格式:DOCX 页数:27 大小:277.36KB
下载 相关 举报
USB接口波形发生器解读.docx_第1页
第1页 / 共27页
USB接口波形发生器解读.docx_第2页
第2页 / 共27页
USB接口波形发生器解读.docx_第3页
第3页 / 共27页
USB接口波形发生器解读.docx_第4页
第4页 / 共27页
USB接口波形发生器解读.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

USB接口波形发生器解读.docx

《USB接口波形发生器解读.docx》由会员分享,可在线阅读,更多相关《USB接口波形发生器解读.docx(27页珍藏版)》请在冰豆网上搜索。

USB接口波形发生器解读.docx

USB接口波形发生器解读

目录

1引言3

1.1课题背景及意义3

1.2课题的主要任务和技术指标4

2系统总体设计和工作原理5

2.1方案设计与论证5

2.2工作原理5

2.2.1USB主机5

2.2.2USB设备6

2.3USB接口芯片7

2.3.1USB主控制器芯片8

2.3.2USB集线器芯片8

2.3.3USB功能设备芯片8

2.4USB信号9

2.4.1USB信号的发送9

3系统硬件电路的设计11

3.1主控制器——单片机AN2131QC的特点11

3.1.1芯片结构11

3.2系统硬件模块电路的设计13

3.2.1电路总体方框图13

3.2.2USB接口单元14

3.2.3DDFS控制单元14

3.2.4波形输出单元15

4软件的设计与实现17

4.1软件功能及作用17

4.1.1主函数17

4.2上位机程序设计17

4.2.2上位机程序功能和界面18

4.3设备驱动程序19

4.3.1固件程序19

4.3.2波形功能程序19

结论21

参考文献22

附录1:

原理图23

附录2:

程序(主函数部分)26

致谢35

1引言

当今的计算机外部设备,都在追求高速度和高通用性。

为了满足用户的需求,以Intel为首的七家公司于1994年推出了USB(UniversalSerialBus,通用串行总线)总线协议,专用于低、中速的计算机外设。

目前,USB端口已成为了微机主板的标准端口;而在不久的将来,所有的微机外设,包括键盘、鼠标、显示器、打印机、数字相机、扫描仪和游戏柄等等,都将通过USB与主机相连。

这种连接较以往普通并口和串口的连接而言,主要的优点是速度高、功耗低、支持即插即用(Plug&Play)和维护方便。

1.1课题背景及意义

在USB产生之前,外设与PC机的通信主要是通过PC机主板所提供的各种接口来实现的,如ISA接口,PCI接口,PS/2接口、串行接口、并行接口等。

这些老式的接口最初是由IBM公司在20世纪80年代早期设计提出的,存在很多缺陷。

1.它们是非共享式接口。

只支持单个外设的连接,即在同一时刻一个接口只能连接一个外设;而当前PC机接口的数量是有限的,根本无法满足大量外设连接的需要。

这时,PC机的可用接口数就显得越来越紧张了。

2.这些接口的体积庞大。

它们几乎占用了PC机主板面积的一半,而硬件厂商不可能无限制地增加主板的面积来扩充这些老式的接口。

另外,大体积的接口不利于PC机外设的小型化。

3.这些接口的规格不一。

当用户需要把一些外设连接到PC机时,他们不得不面对种类繁多的I/O扩展槽和外部端口,这会使用户觉得很不方便。

4.这些接口采用传统的I/O模式。

外设被映射为CPU的I/O地址空间,并被分配一个指定的IRQ(中断请求),或是一个DMA通道。

这种模式会带来诸如I/O地址冲突、所指定的IRQ已被别的外设占用等诸多问题。

这时用户需要采用手工的方法来设置一些开关和跳线以重新配置这些设备,有些还必须打开机箱盖,而且在设置完毕后,用户必须重新启动计算机才能使这些新的配置生效。

不论对外设的开发者还是使用者来说,这个过程都是相当繁琐的。

为了克服老式接口的上述缺陷,PC机制造商和用户迫切需要一种新型的外设连接方式。

这时USB应运而生,它是一种快速、双向、同步、廉价,并支持热插拔功能的串行接口。

随着USB2.0版本的发布,USB越来越流行,它已经成为一个标准接口,目前市场上出售的所有PC机都完全支持USB,而且很多外设只推出了USB版本,如移动硬盘和电子盘等。

可以预见,USB的应用肯定会越来越广泛,其传输速率也越来越高。

1.2课题的主要任务和技术指标

本系统采用直接数字频率合成(DDFS)技术,实时将USB接收到的数据转换成各种频率的波形输出,所使用的USB传输方式为全速同步传输。

可以输出5种波形:

正锯齿波、反锯齿波、三角波、方波和正弦波。

本课题的主要工作任务为:

1.采用USB总线或外部+5V电源供电,并具有供电指示灯。

2.采用TLC7524完成波形数据的DA转换,并具有DA转换指示灯。

3.采用DAC0832完成波形幅度峰峰值的调节,范围是0V~+5V,步进值为20mV.

4.采用DDFS技术完成波形频率调节,范围是0.5Hz~15999.5Hz,步进值为0.5Hz。

5.采用全速同步端点8、9、10米传输系统控制命令和波形数据。

6.可读取该USB设备的各种描述符和USB总线的当前帧号。

 

2系统总体设计和工作原理

2.1方案设计与论证

方案1:

采用模拟分立元件或单片机控制函数发生器MAX8038,可产生正弦波、方波、三角波,通过外部元件可改变输出频率,但采用模拟器件由于元件分散性太大,即使用单片机控制函数发生器,参数也与外部元件有关,外接的电阻电容对参数影响很大,应而产生的频率稳定度较差、精度低、抗干扰能力低、成本高而且灵活性较差,不能实现任意波形及波形运算输出等智能化的功能。

方案2:

采用传统的直接频率合成器。

这种方法能快速实现频率变换,具有低相位噪声以及所有方法中最高的工作频率。

但由于采用大量的倍频、分频、混频和滤波环节,导致直接频率合成器的结构复杂,体积庞大,成本高,难以达到较高的频谱纯度。

更重要的是,这种方法只能实现正弦波,或者进行积分,微分等方法实现方波,三角波等标准波形,而对于我们所要求的任意波形却无法实现。

方案3:

USB接口波形发生器。

采用直接频率合成技术,它可以实时将USB接收到的数据转换成各种频率的波形输出,所使用的USB传输方式为全速同步传输。

这种方法产生的频率稳定度较好,精度高,抗干扰能力强,成本低且灵活性好。

综合考虑各种因素,选择方案3。

2.2工作原理

2.2.1USB主机

在终端用户看来,USB系统就是外设通过一根USB电缆和PC机连接起来。

USB在外设和PC机之间提供通信服务,通常把外设称为USB设备,把其所连接的PC机称为USB主机,且把指向USB主机的数据传输称为上行通信,把指向USB设备的传输称为下行通信。

在USB主机内部含有USB主控制器,负责完成主机和USB设备之间的物理数据传输。

目前,USB主控制器分为两种类型:

开放型主控制器(OHC)和通用性主控制器(UHC),这两种主控制器执行相同的操作,只是在处理方式上稍有差异。

主控制器内部包含一个USB根集线器,用于给USB系统提供一个或多个连接点(端口),现在PC机箱后面的那两个USB端口就是由集线器提供的。

进入Windows操作系统的“设备管理器”,并选择“按类型查看设备”,其中的“通用串行总线控制器”项列出了PC机所使用USB主控器和根集线器。

USB主机中还有客户软件:

USB设备驱动程序和界面应用程序,用于和指定的USB设备进行通信,以实现其特殊功能,如传输文件、播放声音等。

客户软件是专用的,根据具体设备的不同而不同,且一般需开发人员自行编写。

2.2.2USB设备

按USB设备功能的不同,可以把其分为两大类:

集线器和功能设备。

其中,集线器为USB系统提供额外的连接点,它使得一个USB端口可以连接多个设备;功能设备为主机提供额外的功能,如USB键盘、数码相机等。

1.集线器

集线器(Hub)在USB结构中是一个关键,它提供了附加的USB节点,这些节点被称为端口。

Hub可以检测出每一个下行端口的状态,并且可以给下端的设备提供电源。

2-1是一个典型的Hub。

 

图2-1USB集线器示意图

对于USB2.0集线器,其上行端口既可采用高速传输速率又可采用全速传输速率,下行端口支持高速、全速和低速USB设备的连接,也就是说,它可以做为高速、全速和低速集线器。

当做为高速集线器时(上行端口采用高速传输),不论其下行端口连接的是高速、全速还是低速USB设备,其上行通信都是高速的,这样可以减少低速和全速传输对高速USB总线带宽造成的影响。

对于USB1.1集线器,其上行端口采用全速传输速率,下行端口支持全速和低速USB设备的连接,即它可以做为全速和低速集线器。

2.功能设备

功能设备可以和USB主机进行数据和控制信息的交互,并为主机提供额外的功能。

在每个功能设备内部都含有描述其功能和资源需求的配置,如USB带宽、接口种类等。

在它们能够被使用前,主机必须对其进行配置。

功能设备通常是一个独立的外围设备,具有单一的功能。

但有的USB设备实现了两个或多个不同的功能,如具有键盘和音效功能的传真机,这时称其为合成设备。

对主机而言,合成设备是一个单独的USB设备,其只有一个设备地址。

对某些特殊应用,有时需要将一个或多个功能设备嵌入到一个集线器中,并通过一根USB电缆进行连接,这被称为复合设备,如集成了集线器的USB键盘。

对主机而言,一个复合设备就是一个永远连接有一个或多个USB功能设备的集线器。

3.USB的连接

USB物理连接是指一个集线器下行端口和另一个集线器上行端口或USB功能设备之间通过USB电缆的连接。

USB高速(480Mb/s)和全速(12Mb/s)传输需要使用外壳屏蔽,而且数据线双绞的USB电缆;而低速(1.5Mb/s)电缆不需要屏蔽和双绞。

所有USB电缆都是支持热插拔的,其插头上USB图标的触角指明了正确连接的方向。

USB采用层次星型的拓扑连接结构。

通过USB集线器,一台含有一个USB主控制器的PC机最多可以连接126个外设。

连接器

USB定义了两种类型的连接器:

A系列和B系列,A系列连接器包括A型插头和A型插座,它们相互匹配;A型插座总是作为USB主机或集线器的下行端口,所以A型插头总是指向上行USB主机。

B系列连接器也包括B型插头和B型插座,它们相互匹配;B型插座总是作为USB设备或集线器的上行端口,所以B型插头总是指向下行USB设备或集线器。

电缆

USB电缆线内部含有4根导线:

VBUS、GND、D+和D-。

其中,VBUS是+5V电源线,GND是地线,D+和D-是差分数据线对。

在USB连接器上也有4个管脚,分别对应这四根导线,而且电源管脚比数据管脚长,以保证电源信号先于数据信号到达USB设备。

这些管脚都有编号,其对应导线的颜色也不相同。

见表2-1:

表2-1USB连接器的四个管脚

管脚编号

导线名称

导线颜色

管脚编号

导线名称

导线颜色

1

VBUS

3

D+

绿

2

D-

4

GND

为了保证数据能在USB电缆中无错误的传输,USB规范规定全速/高速电缆必须具有外层屏蔽和铜漏线,且差分数据线必须双绞,对低速电缆来说,其传输速率较低,所以不需要以上特殊处理,且其一般不含B型插头,而需要与USB设备永久连接。

低速电缆不能传输高速和全速信号,只是可以使用全速/高速电缆来传输低速信号,只是要注意其长度不能超过低速电缆所允许的最大长度。

另外,全速/高速电缆既可以是束缚电缆也可以是分离电缆,而低速电缆必须是束缚电缆。

2.3USB接口芯片

USB接口芯片(或称USB芯片)是一个集成了USB协议的微处理器,它能自动对各种USB事件做出响应,以处理USB总线上的数据传输。

按其功能,可以分为USB主控制器芯片、USB集线器芯片和USB功能设备芯片。

所有的主机和设备上都至少含有一块实现其功能的USB芯片。

2.3.1USB主控制器芯片

USB主控制器芯片负责实现主机和USB设备间的物理数据传输,它是构成USB主机的必须部件。

Intel公司在1996年2月首次推出了支持USB1.0功能的440Hx和440VxPCI芯片组,其实现USB主控制器接口的模块为82371SB。

它标志着USB主控制器芯片的正式诞生,但它是集成在PCI控制器中的。

世界上第一块单片USB2.0主控制器是2001年6月NEC公司发布的Upd720100,它具有5个USB端口,并支持PCI总线。

随着嵌入式技术的飞速发展,USB主机已不再局限于单纯的PC机,其可以是含有USB主控制器的任何设备,如PDA,MP3播放机等

2.3.2USB集线器芯片

USB集线器芯片负责将一个USB上行端口转化为多个下行端口,它是构成USB集线器的必需部件。

也有一些集线器芯片提供了驱动外围电路的I/O口,可构成USB复合设备,如Intel公司在1996年11月推出的世界上第一块USB集成芯片;8x930Hx,就是一块提供32个外部I/O口的USB1.0集线器芯片。

世界上第一块USB2.0集线器芯片是NEC公司于2001年8月发布的uPD720110,它支持4个下行端口。

2.3.3USB功能设备芯片

USB功能设备芯片负责实现功能设备和USB主机间的物理数据传输,它是构成USB功能设备的必需部件。

按其所支持的传输速率,可以分为低速设备芯片、全速设备芯片和高速设备芯片。

通常这些USB芯片都含有多个驱动外围电路的I/O口,以实现USB设备的特殊功能。

一般来说,USB功能设备的组成结构如下:

1.CPU:

负责执行存储在芯片程序存储的代码,以控制整个USB芯片的活动。

CPU可以是通用的微控制器,如8051单片机;也可以是专用的CPU,如RISC。

2.程序存储器:

负责保存CPU执行的程序代码(或称固件)。

类型通常为ROM、EPROM、EEPROM、FlashEPROM、RAM中的一种,存储容量一般在几千字节左右。

3.数据存储器:

负责保护芯片固件执行时产生临时数据。

其类型通常为RAM,存储容量一般在1KB以下。

4.寄存器:

用于存储有特殊功能的、临时性的数据。

按其功能,可分为状态寄存器、数据寄存器和控制寄存器。

访问速度通常比数据存储器快,但数量较少,一般为几十个。

5.USB接口:

负责发送和接收USB总线上的数据,完成位填充、NRZI(反向非归零)编解码等工作,也可以称为(串行接口引擎)。

6.USB缓冲器:

负责存储在USB总线上发送和接收的USB数据,可分为发送缓冲器和接收缓冲器。

它们可以是数据存储器的一部分,也可以是单独的一块存储器,如FIFO等。

7.外部I/O:

每种USB功能设备芯片都含有驱动其外围电路的I/O口,如数据总线、地址总线、I2C总线、SPI接口等。

8.其他部件:

有些USB功能设备芯片中还含有诸如定时器、看门狗、UART等特殊功能模块。

世界上第一块支持USB1.0的功能设备芯片是Intel公司在1996年11月推出的8x930Ax,采用增强型8051CPU,并提供32个外部I/O口。

Cypress公司在2000年11月推出的CY7C68013是世界上第一块USB2.0功能设备芯片,其采用增强型8051CPU,最多可提供40个外部I/O口。

2.4USB信号

数据在USB总线上实际传输时,使用的是NRZI编码的差分信号,这种USB信号有利于保证数据的完整性和消除噪声干扰。

USB根据数据的传输方向和传输类型,对USB信号在D+和D-线上的电压(或电压差)提出了具体要求,以完成主机和USB设备间的物理通信。

2.4.1USB信号的发送

USB使用差分驱动器把USB信号发送到总线上,但具体实现方式根据USB信号传输速率的不同而不同。

但是,差分驱动器必须支持三态(高电平、低电平和高阻),以满足USB双向数据和半双工数据传输的需要。

1.低速/全速信号的发送

对于低速/全速传输,其D+和D-线上输出低电位的电压必须小于VOL(max):

0.3V;输出高电位时的电压必须大于VOH(min):

2.8V。

为尽量减少信号失真,高低电位之间的输出摆动应被很好平衡,这要求在差分驱动器中使用摆动比率控制机制。

表2-2列出了低速/全速信号的输出电平。

其中,交叉电平表示高低电位交叉点的电压值;SE1状态表示D+和D-线上的电压都大于VOSE1(min):

0.8V,它不是差分驱动器自动产生的。

低速USB设备在连接时一般使用束缚型低速电缆,它不需要外层屏蔽和数据双绞,最大传输延时为18ns。

在低速电缆与USB设备的连接处,其D+和D-线上通常

表2-2低速/全速信号的输出电平

状态

符号

最小值/V

最大值/V

低电位

VOL

0.0

0.3

高电位

VOH

2.8

3.6

SE1

VOSE1

0.8

----

交叉电平

VCRS

1.3

2.0

各需要一个200pF~450pF的电容接地。

全速USB设备在连接时必须使用具有外层屏蔽和数据线双绞的全速电缆,其差分特征阻抗为90(1±15%),共模阻抗为30(1±30%),单向最大传输延时为26ns。

通常,全速差分驱动器的输出阻抗为28Ω~44Ω;但当它是高速设备的一部分时,其输出阻抗必须大于40.5Ω而小于49.5Ω。

2.高速信号的发送

对于高速传输,其D+和D-线上的输出低电位时的电压(VHSOL)必须为0V±10mV;输出高电位时的电压(VHSOH)必须为400(1±10%)mV。

但实质上,高速差分驱动器使用的是差分电压。

高速USB设备在连接时必须使用具有外层屏蔽和数据线双绞的高速电缆,其差分特征阻抗为90(1±15%),共模阻抗为30(1±30%),单向最大传输延时为26ns。

通常,高速差分驱动器的输出阻抗为90(1±10%)Ω;但当它工作在全速和低速一部分时,其输出阻抗为45(1±10%)Ω。

 

3系统硬件电路的设计

3.1主控制器——单片机AN2131QC的特点

EZ-USB系列USB接口芯片是Anchor公司最早的产品(从1999年开始Anchor成为Cypress公司的一个销售部门),它支持12Mb/s的全速传输,可使用4种USB传输模式:

控制传输、中断传输、块传输和同步传输,完成兼容USB1.1协议。

该系列芯片的典型应用是MP3播放机、扫描仪、打印机和数码相机等设备。

3.1.1芯片结构

EZ-USB系列芯片的显著特点是固件升级容易,它是在主机上而不是在芯片内部存储固件。

当连接并接通电源时,设备驱动程序会发送这些固件到芯片的RAM中,所以在升级固件时,不需替换芯片或使用特殊的程序。

这样做的不利之处是增加了固件代码和设备驱动的复杂性,但Cypress公司为用户提供了很多范例代码和一个可用的设备驱动程序,并为该系列芯片提供了开发装置AN2131-DK001,以缩短产品的开发周期。

EZ-USB为块传输、控制传输和中断传输提供了16个端点:

EP0IN~EP7IN和EP0OUT~EP7OUT,它们的数据长度均为64字节;为同步传输提供了16个端点:

EP8IN~EP15IN和EP8OUT~EP15OUT,它们的最大数据长度为1024字节。

其中,EP0用于控制端点,EP1~EP7均可用于块端点,EP1IN~EP7IN用于中断端点,EP8~EP15均为同步端点。

EZ-USB系列芯片的上述特性决定了它具有一种非常独特的结构,以80管脚的AN2131QC为例,其主要包括USB收发器、AnchorCore、增强型8051、8KB的片内RAM、2KB的FIFO存储器、I/O口、数据总线、地址总线和I2C接口。

图3-1是EZ-USB系列芯片的结构图。

1.AnchorCore

在EZ-USB系列芯片内部有一个AnchorCore,它由串行接口引擎(SIE)和USB接口两部分组成。

SIE负责和USB收发器、USB接口进行数据交换,以完成串行数据的编解码、差错控制、位填充等与USB协议有关的功能。

这样,客户在编写8051固件代码时就不用过多考虑USB的传输协议了。

当EZ-USB上电时,先由AnchorCore完成USB设备的列举,它把8051的固件代码下载至芯片内部的RAM中,并启动8051。

之后,8051运行该固件程序,并进行USB设备的重列举。

完成后,用户就可以使用该设备了。

 

图3-1EZ-USB系列芯片的结构

2.增强型8051

EZ-USB系列芯片采用增强型8051内核,其性能是标准8051的5倍,负责控制芯片的外围连接,以使它们可以和AnchorCore完成USB数据交换。

简单的说,可以认为EZ-USB是一个具有USB功能的增强型8051单片机,用户必须编写8051固件程序对它进行控制,其指令集和标准8051完全兼容。

增强型8051内核给用户开发带来了很大的方便,如果熟悉8051,那么就很容易掌握EZ-USB,即便以前不了解8051,用户也可以很容易得到其相关资料和编程工具。

为了进一步节省产品的开发周期,还可以使用Keil公司提供的C编译器C51,其比原有汇编语言要简单得多,不足之处是它的代码冗余度较高,不如汇编语言精简。

3.RAM

EZ-USB系列芯片内部具有4KB或8KB的RAM,它们兼做程序存储器和数据存储器,增强型8051的固件代码就存储在该区域中。

RAM在断电后不能保存数据,同样,EZ-USB断电后存储在RAM中的固件也会消失。

为了解决这个问题,EZ-USB在每一次上电时,将自动从主机或外部的EEPROM中自动加载8051固件代码。

用户也可以自己加载8051固件代码,并可以多次加载、随时加载。

这给开发人员带来了极大的方便,他们可以随时更改或升级固件代码,而不需使用额外的编程器和其它的开发装置。

这种机制的不利之处是延长了USB设备的列举时间,增加了驱动程序的复杂性。

4.其它组件

EZ-USB系列芯片内部还包含I2C总线,以便其能从外部EEPROM中下载8051的固件代码。

如果芯片支持USB同步输出,其内部还会包含有容量为2KB的FIFO缓冲区,该系列芯片采用3.3V供电,且可使用USB总线电源,它们具有44脚、48脚和80脚三种封装形式,最多可支持24个I/O口,16根地址总线和8根数据总线,芯片最小面积只有1英寸2,占用很少的电路板空间。

5.应用范围

EZ-USB系列芯片的典型应用是MP3播放机、扫描仪、打印机和数码相机等设备。

为了满足不同用户的需要,Cypress公司为EZ-USB提供了多种不同的类型芯片,如设备只需使用USB块传输且需8位数据总线和较高数据传输速率,就可选用AN2131SC。

图3-2是80脚AN2131QC的封装形式,它是该系列芯片中引脚最多、功能最强的一款,其它型号都是它的简化。

 

图3-280脚AN2131QC的封装形式

3.2系统硬件模块电路的设计

3.2.1电路总体方框图

图3-3是电路总体方框图。

 

图3-3硬件原理框图

3.2.2USB接口单元

USB接口单元的主要实现芯片为Cypress公司的AN2131QC,负责完成硬件系统和PC机之间的数据传输。

其中,AN2131QC的DISCON#和USBD+管脚间接有1.5K

电阻,以选择全速USB传输:

PC1用于控制TLC7524的工作状态,以决定是否输出波形;数据总线D0~D7负责将主机发出的数据输出到IDT7202,以供TLC7524进行DA转换;PC4~PC7用于向EPM7064发出DDFS频率控制字,以选择波形输出的频率;PB0~PB7用于向DAC0832提供数据,以控制波形输出的幅度;PA6和PA7用于控制发光二极管LED1与LED2的点亮和熄灭,以指示硬件系统是否正在工作。

图3-4是USB接口原理图。

 

图3-4USB接口单元部分

3.2.3DDFS控制单元

DDFS控制单元的主要芯片为Altera公司的EPM7064,负责控制系统输出波

型的频率。

图3-5是DDFS控制单元。

 

图3-5DDFS控制单元

其中,EPM7064的CLOCK和DATA管脚负责以串行数据方式接收AN2131QC发出的频率控制字(设为M),共15位,高位在前,低位在后。

因系统波形采样点数为64点,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 农学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1