收藏 分享(赏)

USBRS232接口转换器设计.doc

上传人:wo7103235 文档编号:6143992 上传时间:2019-03-30 格式:DOC 页数:40 大小:5.42MB
下载 相关 举报
USBRS232接口转换器设计.doc_第1页
第1页 / 共40页
USBRS232接口转换器设计.doc_第2页
第2页 / 共40页
USBRS232接口转换器设计.doc_第3页
第3页 / 共40页
USBRS232接口转换器设计.doc_第4页
第4页 / 共40页
USBRS232接口转换器设计.doc_第5页
第5页 / 共40页
点击查看更多>>
资源描述

1、第 1 页 共 40 页USB/RS232接口转换器设计摘要在过去的很长时间内,RS232 串行接口方式是诸多仪器仪表、控制终端、远程终端等设备的主流通讯方式之一,与现在流行的上位机(如 PC 等)的USB(UnivesralSerialBus)总线接口方式不相适应。为解决这一矛盾,本文设计了USB-RS232 接口转换器。在它的支持下,这些传统的设备能通过其原有的 RS232接口与上位机的 USB 总线接口实现双向数据传输。本文叙述了开发该 USB-RS232 接口转换器所涉及到的基础知识,硬件和软件设计,以及性能测试等内容:1.课题的背景介绍;2.与本课题相关 USB 接口规范介绍;3.U

2、SB-RS232 接口转换器硬件设计细节;4.USB-RS232 接口转换器软件设计细节;本课题附带的效益是,该 USB-RS232 接口转换器开发中所总结的技术资料以及开发经验.关键词:USB,RS232,EZ-USBFX2 芯片,HID,接口转换USB/RS232 Interface Converter第 2 页 共 40 页ABSTRACTAs one of main eornrnunication modes,RS232 serial interface has been aPPlied in many types of equiPments,such as insurtments,c

3、onrtollers aad remotetemrinals,for long time.For these equipmengts could be used in thefuture,this status mangy not match with the popular USB(Universal Serial Bus) bus interface well.In this dissertation,an USB-RS232 conunutator is designed and realized to solve this problem.By using this commutato

4、r.those traditional equipments can realize bidirectinal data transmition with USB bus interface through theri existing RS232 interface.This dissertation fucsed on the toPics as:the related knowledges of USB interface specification,hdarware and sotfware desing of the USB-RS232 commutator,and its pero

5、fmrnacetests.The dissertation presents the fllowing aspects:1.ntroduction for the bakcground of this task;2.Introduetion forthe USB interafce specification related with this task;3.Detail of the hadrware design of the USB-RS232 commutator;4.Detail of the software design of the Host and Slave;From th

6、e Perofomance tests,it is knowm that the design achieves the anticipated objectives.Those technique results and developing experiences,summarized from this USB-RS232 commutator desing,are valubale benefits,such that could be helpful todevelop some new instruments wiht USB interface in the future.Key

7、wards: USB,RS232,EZ-USB FX2 chip,HID,interface transform第 3 页 共 40 页1 诸论1.1 USB及其应用国内外的研究现状USB 是由 Compaq、DEC、IBM、Intel、Mcriosotf、NEC 和 Nohrten Telecom等七家赞助商联合 1996 年 1 月提出的计算机串行接口总线标准-USB1.1。1997 年开始出现了真正符合 USB 技术标准的外设。1999 年初在 Intel 的开发者论坛大会上,与会者介绍了 USB2.0 规范,该规范的支持者除了原有的 Compaq、Intel、Mcriosotf 和 N

8、EC 四个成员外,还有惠普、朗讯和飞利浦三个新成员。USB2.0 向下兼容 USB1.1,数据的传输率将达到 12OMbps-240Mbps,还支持宽带宽数字摄像设备及下一代扫描仪、打印机及存储设备。现在,支持 USB 的 PC 及外设越来越多,在软件上 USB 也已成为 Windows98及以上等高版本操作系统的一个关键部件,并很快在 Windows2000 中得到支持。Apple 的操作平台早己提供对 USB 的支持,预计今后 Sun 和 Digital 的平台也将会提供对这一技术的支持。USB2.0 是目前推出的支持 USB 计算机与外设上普遍采用的标准。USB 同时又是一种通信协议,负

9、责主机和 USB 的外围设备之间的数据传输。全速模式12Mbps,用于连接打印机、扫描仪、交换机和电话等设备;低速模式 1.5MbPs,用于连接键盘、鼠标和调制解调器等设备。USB2.0 版本规范于 2000 年 4 月 27 日由Compaq、Intel、Mcriosotf、NEC 和 Philips 正式对外发布。USB2.0 除兼容 UsB1.1外,新增主要规范内容:数据速率可达 480Mbps。支持高清晰数字会议系统设备、高速高密存储设备、新一代更高速高分辨率的彩色打印机及扫描仪、宽带 ADSL和 Cable Modem 等。除了需要极高数据量和一些实时性要求特别高的控制设备外,第 4

10、 页 共 40 页几乎所有的 PC 外设都可以移植到 USB 上来。而事实上现在已经做到了这一点。USB(通用串行总线)自问世到协议规范20版本,USB在不断自我完善,并走向成熟。从普通计算机用户,计算机工程师,到硬件芯片生产厂商,都已经完全认可了USB。厂商对于USB的硬件和软件支持的也越来越完备,现在开发一个USB外设产品,所需要投入的成本和时间大大降低了。但是,这些产品都需要PC的参与。在USB的拓扑结构中居于核心地位的是USB主机,任何一次USB数据的通信都必须由主机来发起和控制,所有的USB设备都只能和主机建立连接。目前,我们日常使用的USB产品,如U盘、USB摄像头等,都是USB设

11、备;绝大多数USB主机功能都集成在各种类型的PC机上,比如台式机,笔记本电脑,服务器等。随着USB应用领域的逐渐扩大,人们对于USB的期望也越来越高,希望USB能应用在各种计算机领域中,尤其是在工业场合中工业接口和USB接口数据通信的实现。常用的工业接口,如RS232,这些接口都是上个世纪七、八十年代设计的。随着USB设备的普及,如何方便的实现RS232接口到USB接口的转换,实现USB到RS232的双向数据通信,就成为当前急需解决的问题。要解决上述问题,首先就需要解决USB主机,因为USB主机是USB系统的核心。在工业场合中,考虑到易用性和成本因素,不可能为每个RS232接口配置一台电脑实现

12、RS232到USB的转换。这种情况下,USB只能应用在没有PC的领域中,这也正是目前USB的一个弱点。解决这一根本问题的办法就是在嵌入式系统中集成USB主机功能,使之能够和USB设备通信;同时系统还要有RS232模块,使系统成为连接USB和RS232的桥梁。1.2 USB技术的产生和发展当今PC上使用的绝大多数设备都是基于接口实现的。在USB出现之前,PC上的接口基本上是20世纪七、八十年代设计的。随着计算机技术的迅猛发展,这些接口已经不能满足PC与外设之间不断提高的传输速度、稳定型和易用性。这一现象,已经大大限制了计算机技术的发展,成为计算机功能扩展的桎梏。为了解决旧接口的缺陷,1994年,

13、Intel,Compaq等七家软硬件全球知名企业为了突破当时PC使用串口和并口传输速度的限制,成立了通用串行总线开发者论坛(USB Implementers Forum,USB IF),并在1994年11月提出了USB 0.7版,到了1998年开始出现了支持USB 1.1的设备,他的高速性(USBl.1支持1.5 Mb/s和12 Mb/s两种速度)。和易用性迅速使之成为PC外设的宠儿。为了对抗1394速度的优势第 5 页 共 40 页(1394可以达到400 Mb/s),1999年提出了USB 2.0规范的思想,2000年4月USB IF推出USB 2.0,USB 2.0向下兼容1.1,提供3

14、种速度,最高可以达到480 Mb/s。为了增强USB的可移动性,又于2001年12月发布了USB On-The-Go 1.0版本协议作为USB20协议的补充USB OTG协议基本符合USB2.0的规范,所不同的是USB PTG完全抛开了PC,既可以作为Host,也可以作为Slave,而与另一个OTG设备直接实现点对点通信。目前无线USB(WUSB)10版本已经发布这个技术以多频段OFDM(正交频分复用)技术为基础,融合了WiMedia联盟确定的通用超宽带无线电平台技术。目前这项技术还处于早期的定义阶段,并不完善。但是其速度非常惊人,其标准速度可以达到2000Mbps,是目前USB2.0极限速度

15、的近5倍。1.3 开发 USB-RS232接口转换器的意义多年来个人计算机的串口与并口的功能和结构并没有什么变化。串口的出现是在 1980 年前后,数据传输率是 115kbPs-230kbPs,串口一般用来连接鼠标和外置 Modem;并口的数据传输率比串口快 8 倍,标准并口的数据传输率为 1Mbps,一般用来连接打印机、扫描仪等。原则上每一个外设必须插在一个接口上,如果所有的接口均被用上了就只能通过添加插卡来追加接口了。串、并口不仅速度有限,而且在使用上很不方便。传统计算机的外围接口因 IRQ、DMA 等 I/O 资源的不足使计算机扩展性受到很大限制。当某数据采集系统采集的数据由采集卡传送到

16、主机中进行存储时,若采用传统的 RS-232 与主机通讯,由于 PC 机的限制,RS-232C 最高数据传输率不超过 115KbPs(基于串口芯片 16550,如基于 8250,则最高仅有 9.6Kbit/s),同时传输的距离也不会超过 15 米。对于中高速、高精度连续采样系统,其每秒的数据传输量最小为(100Hz 采样率,10 位采样精度):100Kx10=1000K,若 RS-232C以 115Kbps 与采样系统交换数据,则需约 1000K/115K=8.7s 的传输时间,采样系统与 PC 接口速度的瓶颈作用会导致一部分数据的丢失,失去连续采样的意义。而采用并口传输,则由于接口复杂以及主

17、机接口个数有限等一些原因,也不是很理第 6 页 共 40 页想的解决办法。USB 的出现为解决这一问题提供了良好的解决方案。同传统的接口技术相比,USB 总线具有以下的优点:USB 是中、低速外设连接的串行总线。它优于已有各种总线的最大特点就是它被设计成即插即拔(热插拔)。USB 设备所有的事物处理都是由在主机方的主控制器管理而无需占用系统的内存空间或 I/O 地址空间。USB 是一种新的 PC 外设总线,USB1.0 协议的传输率最高达 12Mbps,比标准串口快 100 倍,比标准并口快10 倍,USB2.0 协议则更快,最高数据传输率高达 480Mbps。USB 实现的成本低廉,可用于实

18、现许多价格便宜的外设。功率不大的外围设备可以直接通过 USB 数据线供电,而不必外接电源。USB 总线最大可以提供5V/500mA 电流,并提供节约能源的挂机和唤醒模式。USB 用于上行和下行的连接头的机械特性不同还可以防止非法连接。根据 USB 协议,理论上最多可以同时将 127 个外设(含 HUB)连接在同一台 PC 机上。基于 USB 的数据通信系统,使得采集系统与计算机之间的数据交换具备广泛的适用性。USB 是目前计算机的标准配置,采用此方案使得任何一台计算机都可以作为系统使用的计算机。目前,仍然有许多使用 RS232 串行接口的控制设备、仪器仪表、远程终端等运行或即将运行在诸多应用领

19、域中。立即将其改造为 USB 方式显然存在成本及实施方面的问题。为适应 USB 广泛流行的现实,有必要开发 USB-RS232 接口转换器。在它的支持下,这些传统的设备无须改造,即可通过其原有的 RS232 接口与USB 总线接口实现双向数据传输。这是实施-“USB-RS232 接口转换器设计”的意义之一。另一方面,USB 接口式毫无疑问是今后相当长时间内嵌入式系统的主流通讯接口方式之一。显然,本项目开发中所总结的技术资料以及开发经验,可以作为开发其他需配备 USB 接口的新型仪器仪表、控制终端、远程终端等设备的参考。第 7 页 共 40 页1.4 USB 的特点USB技术能够得到众多厂家的支

20、持和青睐,是和其本身的优点分不开的。1.即插即用(PnP)。USB支持热拔插和操作系统自动配置。2.低功耗。USB有一套独特的电气机制来保证其低功耗。此外USB总线如果连续3ms没有活动USB就会进入自动挂起状态。3.多种速度模式可供选择。USB提供了3种速度模式。低速为1.5Mbps,全速为12Mbps,高速为480Mbps。满足了不同速度的外设需求。4.硬件结构简单而且标准化。USB协议定义了2种插头:A型和B型。不论A型还是B型,其引线只有4根:2根数据线,一根电源线,一根地线。5.总线拓扑结构完备。USB星型总线结构最多可支持127个设备。6.支持的设备种类多。USB 支持多达 8 个

21、设备类。1.5 论文的研究内容本课题主要完成的是USB主机的设计,实现USB主机和设备功能;其次是设计串口模块,实现USB到RS232的双向数据通信。设计目标:1.具有独立的USB主机功能,实现USB和RS232之间的数据通信。包括构建USB协议,实现Mass Storage类协议及子命令,构成USB Host。从而完成U盘状态检测,读、写和删除文件等简单的文件操作。2.具有USB设备功能,即有其他USB主机(如PC)参与下的RS232到USB的接口转换,实现USB和RS232之间的数据通信。论文主要结构:第一章介绍本课题的背景、意义,以及USB接口的国内外研究状况和预期目标。第二章主要介绍了

22、与本课题相关的协议的内容。主要介绍了USB通信模型、传输类型。第三章分析了系统的需要,介绍了系统的总体设计方案。第四章介绍了系统硬件电路设计。第五章介绍了系统的软件设计。第 8 页 共 40 页第六章是本文的结论和展望。第 9 页 共 40 页2 USB总线规范概述USB 是一种电缆总线,支持在主机和各式各样的即插即用的外设之间进行数据传输,由主机预定的标准的协议使各种设备分享 USB 带宽,当其它设备和机在运行时,总线允许添加、设置、使用以及拆除外设。2.1 USB系统的描述一个 USB 系统主要被定义为三个部分:USB 的互连;USB 的设备;USB 的主机。USB 的互连是指 USB 设

23、备与主机之间进行连接和通信的操作,主要包括以下几方面:总线的拓扑结构:USB 设备与主机之间的各种连接方式;内部层次关系:根据性能叠置,USB 的任务被分配到系统的每一个层次;数据流模式:描述数据在系统中通过 USB 从产生方到使用方的流动方式:2.2 USB 数据通信结构 数据通信内容是USB协议中最复杂的部分,本节将详细研究这部分内容。USB是以差模串行信号为载体传送二进制代码来传输信号的,而USB的事务处理是主机和USB设备之间数据传输的基本单位,由一系列具有特定格式的信息包组成。根据信息包的种类,可以将一个事务处理分为三个阶段:令牌阶段、数据阶段和握手阶段,如图21所示。各个阶段功能如

24、下:1.令牌阶段:表示事务处理的开始,并定义传输类型。2.数据阶段:负责传输相关的数据,长度最大为1024字节。3.握手阶段:用于报告事务处理的状态,以表明数据接收是否成功。并不是所有的事务处理都必须有这三个阶段,在某些具体情况下(如数据传输失败),事务处理也可能不包含数据包和握手包,但无论如何,所有的事务处理都必须以令牌包开始。2.2.1字段的格式信息包是USB总线上数据传输的最小单位,包含了进行USB通信所需的全部信息。它由一系列字段组成:同步字段、包标识字段、地址字段、端点字段、帧号字段、数据字段和循环冗余检验(CRC)字段。数据在USB总线上世纪传输时,首先第 10 页 共 40 页是

25、数据的最低有效位(LSB),最后是最高有效位(MSB)。1.同步字段 同步字段(Synchronization Sequence简写为SYNC)也称同步序列域。在USB系统中,主机和设备不是共享一个时钟的,所有的信息包都必须以一个同步字符开始以保证主机和设备的同步。对于低速/全速传输,同步字段长度为8位,数据原型为7个连续的“O”和1个“1”,经NRZI编码后,以“KJKJKJKK”的形式出现在总线上。高速传输同步字段的长度为32位,数据原型为31个连续的“0”和1个“l” ,经NRZI编码后, 以“KJKJKJKJKJKJKJKJKJKJKJKJKJKJKJKK(15KJ对个2个KK)的形式

26、出现在总线上。USB集线器中继某个信息包时,最多可丢失同步字段的前4位,且不能破坏同步字段中的其他数据位。也就是说同步字段在经过5个集线器的中继后,可能只剩下12位。2.包标识字段 包标识字段(Packet Identifier Field简写为PID),也称为包标识域。在USB信息包中,包标识字段紧跟在同步字段之后,并指明该信息包的类型、格式和所采用的差错控制机制。它由4位类型字段和4位校验字段组成。其中校验字段是类型字段的二进制补码,用于保证PID字段译码的可靠性,使信息包的其余部分都能被正确接收。按PID字段的功能可分为4类:令牌(10b)、数据(1lb)、握手(01b)、和专用(00b

27、),并有其字段的前2位(PID)来指明。主机和USB设备都要对接收到的PID字段进行正确的译码。如果校验字段有错误或者得到为定义的值,则认为该PID字段己被破坏,且应忽略信息包的其余部分。如果USB设备接收到一个其不支持的PID字段,则不予应答,例如IN端点会忽略所有的OUT令牌。 3.地址字段 地址字段(Address Field简写为ADDR),也称地址域。地址字段用于指定USB系统中的一个USB设备,具有唯一性,并且由主机分配地址。其格式包含6个数据位,最多可指定128个设备,其中地址0只能用作缺省地址,不能分配给USB设备。至于USB设备是数据的发送方还是接收方则取决于PID字段的值。

28、在IN、OUT、SETUP、SPLIT和PING令牌包中都必须含有该地址字段,以指明与其通信的USB设备。如果指定的设备不存在,则该令牌包将被忽略。在USB设备上电和复位时,其将使用缺省地址0来与主机通信。每个设备会由主机给其分配一个唯一的设备地址。第 11 页 共 40 页4.端点字符 端点字符(Endpoint Field简写为ENDP),也称为端点域。其用于指定USB设备中的一个端点。高速/全速设备最多可含有16个端点,低速设备最多只能含有3个端点。所有的USB设备都必须含有一个0号控制端点,一完成与主机间的配置通信,除了0号端点外,其余的端点都是具体USB设备所特有的。在IN、OUT、

29、SETUP、SPLIT和PING令牌包中都必须是以该端点字段,以指明与其进行数据传输的USB设备端点。如果指定的端点不存在,则该令牌包被忽略;另外,在端点初始化之前就访问该段的令牌包也将被忽略。5.帧号字段 帧号字段(Frame Field简写为FRAM),也称为帧号域。USB协议中,1帧就是lms。在USB总线上1帧是一个独立的单元,包含了一系列总线动作。帧字段用于指出当前的帧号,每一个帧都有特定的帧号,它仅在每帧/d,帧开始的SOF令牌包中被发送。它的长度为11位,每传1帧,主机就将其内容加1,当达到最大值7FFH时归零。6.数据字段 数据字段(Data Field简写为DATA),也称为

30、数据域。数据字段包含主机和USB设备间需要传输的数据,其以字节为单位,最大长度为1024字节。在不同的传输类型中,数据字段的长度各不相同,但是必须为整数个字节,每个字节都是最低有效位(LSB)被传输。7.循环冗余检验字段 循环冗余检验字段(Cyclic Redundancy Checks简写为CRC),也称为循环冗余检验域。为保证数据传输的可靠性,USB在令牌包和数据包中都使用了循环冗余检验,它可以百分之百识别出信息包中的一位或者两位错误。CRC检验失败标识在被保护的信息包中至少有一个字段出错,这时接收方将忽略该字段,但是在大多数情况下是忽略整个信息包。图2-1 事物处理的3个阶段2.2.2数

31、据传输类型USB的传输,是USB面向用户的、最高级的数据结构,USB定义了4中数据传输第 12 页 共 40 页的类型:批量传输、中断传输、同步传输和控制传输。传输由一系列事务组成,任何传输都由:IN、OUT和SETUP 3种事务组成,不同的只是这3种事务的搭配方式。1.批量传输批量传输由IN事务和OUT事务2种最基本的事务组成,适用于传输大量的、且对传输时间和传输速率均无要求的数据。当USB总线带宽紧张时,他会为其他传输类型让出自己所占用帧/小帧的时间,而其本身将被延迟,这时批量传输的速率很低、占用的传输时间也很长。当USB总线空闲时,他的传输速率很快、占用时间也很短。所以批量传输可以发送大

32、量数据而不会堵塞USB总线,但是其传输时间和速率不能得到保证。批量传输只能用于高速或全速USB设备,且高速或全速设备可以选择不支持批量传输。适用于硬盘驱动器的接口、光盘刻录机及数码相机等等。2.中断传输中断传输由IN事务和OUT事务2种最基本的事务组成,适用于传输少量或中量的且对服务周期有要求的数据。USB为中断传输保留了总线带宽,以保证其能在规定的周期内得到服务。中断传输没有固定的传输速率,低速、全速和高速设备均支持中断传输,只是对传送的数据包的大小要求不同。另外,USB还采用差错控制和重试机制来保证中断传输的正确性。总体来说,中断控制特别适合键盘、鼠标等HID设备的数据传输。3.同步传输同

33、步传输同前面叙述的2种传输一样由IN事务和OUT事务2种最基本的事务组成,适用于传输大量的、速率恒定的、且对服务周期有要求的数据。USB为同步传输保留了总线带宽,以保证其能在每帧/小帧中都能得到服务。即同步传输将一直使用准确的传输速率,因此其传输时间是可以预测的。由于同步传输讲究的是数据传输速率的恒定,而对数据的准确性的要求不如批量传输严格。所以,同步传输中没有握手包,不对发送错误的数据进行重试。需要说明的是,与中断传输和批量传输不同的是,对于全速设备,同步传输不支持数据包的交替触发机制,只能以DATA0发送。而高速设备在一定条件下支持触发机制,由于情况复杂,不予讨论。低速设备不支持同步传输,

34、只有全速和高速设备才支持同步传输,但是全速和高速设备可以选择不支持同步传输。总体来说,同步传输特别适用于音频和视频类第 13 页 共 40 页设备,如CD播放机、扬声器等。4.控制传输控制传输是最为复杂的传输类型,也是最重要的传输类型,是USB枚举阶段最主要的数据交换方式。当USB设备除此连接到主机之后,就通过控制传输来交换信息、设备地址和读取设备的描述符,这样其他3种传输方式才可以使用。其核心事务是SETUP事务,适用于传输少量的,且对传输时间和传输速率均无要求,但必须保证传输的数据的场合。USB为控制传输保留了总线带宽,且主机系统软件可以为它动态地调整其所需要的帧/小帧时间,以确保其能够尽

35、快的被传输。控制传输可用于低速、全速或高速设备,并且所以USB设备都必须支持控制传输。具体来说,任何USB设备都必须在其O号端点的缺省管道中支持控制传输,除O号端点外,USB设备还可以拥有其他控制端点。2.3 USB 协议栈设备框架1.USB描述符USB设备采用设备构架的概念来描述一个USB设备,它把USB设备看成是一个配置、接口和端点的集合,并采用标准USB描述符来说明它们,其中包括设备描述符、配置描述符、接口描述符、端点描述符和字符串描述符;对于高速设备,还可以包含设备限定描述符和其他速率配置描述符(因本文未研究高速设备,这里将不叙述)。这些设备描述符适用于所以的USB设备,它们都包含有特

36、定功能的字段,以指出USB设备的特性。除了这些标准USB描述符之外,设备类和供应商也可以自己定义其设备专用的描述符,分别称为设备类定义描述符和供应商自定义描述符,它们可以在标准描述符的格式上进行扩展,也可以使用其他非标准的格式。以上几种描述符,主机都可以用GetDescriptor请求来读取它们。2.4 USB Mass Storage类协议为了简化USB总线的开发流程,USB-IF将常用的具有相同或者相似功能的设备归为一类。并指定了相关的设备类规范。到目前为止,USB-IF指定的标准类型第 14 页 共 40 页规范包括:音频设备、芯片/智能卡接口设备、通信设备、人机接口设备(HID)、存储

37、设备、打印设备等等。根据本文的研究内容,这里着重介绍USB大容量存储设备,也就是MassStorage类协议大容量存储类主要用于软磁盘接口、ATA接口、IDE硬盘接口以及FLASH存储设备建立的USB接口,类代码(bInterface Class字段的值)为0x08。这一类的特点是数据交换量大,有可能直接涉及文件的各种操作,并且支持不同的数据存数载体接口本身的一些操作命令。因此不同的数据存储载体接口就构成了Mass Storage类的子类。2.5 大容量存储设备类支持两个传输协议:批量单独传送(Bulk-only transport) 控制/批量/中断传输(Control/bulk/inter

38、rupt transport,CBI transport)传输协议用来决定主机与设备用来传输数据、命令与状态信息的传输类型。2.6 RS232协议简介RS-232C标准是美国EIA(电子工业联合会)与BELL等公司一起开发的1969年公布的通信协议。它适合于数据传输速率在0-20000b/s范围内的通信。这个标准对串行通信接口的有关问题,如信号线功能、电器特性都作了明确规定。由于通行设备厂商都生产与RS-232C制式兼容的通信设备,因此,它作为一种标准,目前已在微机通信接口中广泛采用。RS-232C标准(协议)的全称是EIA-RS-232C标准,其中EIA(Electronic Industr

39、y Association)代表美国电子工业协会,RS(Recommended standard)代表推荐标准,232是标识号,C代表RS232的最新一次修改(1969),在这之前,有RS232B、RS232A。RS-232采取不平衡传输方式,即所谓单端通讯。RS-232C总线标准设有25条信号线,包括一个主通道和一个辅助通道,在多数情况下主要使用主通道,对于一般双工通信,仅需几条信号线就可实现,如一条发送线、一条接收线及一条地线。RS-232-C标准规定的数据传输速率为每秒50、75、100、150、300、600、1200、2400、4800、9600、19200波特。RS232C标准规定

40、了一个25个脚的DB25连接器,对连接器的每个引脚的信号内容加以规定,还对各种信号的电平加以规定。DB25的串口一般用到的管脚只有2(RXD)、3(TXD)、第 15 页 共 40 页7(QND)这三个,随着设备的不断改进,现在DB25针很少看到了,代替他的是DB9的接口,DB9所用到的管脚比DB25有所变化,是2(RXD)、3(TXD)、5(GND)这三个。因此现在都把RS232接口叫做DB9。在后面的叙述中,所有的RS232接口指的都是DB9。典型的RS232信号在正负电平之间摆动,在发送数据时,发送端驱动器输出正电平在+5+15V,负电平在-5-15V电平。当无数据传输时,线上为TTL,

41、从开始传送数据到结束,线上电平从TTL电平到RS-232电平再返回TTL电平。接收器典型的工作电平在+3+12V与-3-12V。RS-232-C标准规定,驱动器允许有2500pF的电容负载,通信距离将受此电容限制,例如,采用150pF/m的通电缆时,最大通信距离为15m;若每米电缆的电容量减小,通信距离可以增加。传输距离短的另一原因是RS-232属单端信号传送,发送电平与接收电平的差仅为2V至3V左右,存在共地噪声和不能抑制共模干扰等问题,因此一般用于20m以内的通信。同时RS-232是为点对点(即只用一对收、发设备)通讯而设计的,所以RS-232适合本地设备之间的通信。2.7 本章小结本章首

42、先就USB技术的特点、系统模型和拓扑结构进行了简单的介绍,给出对USB技术的一个总体认识然后,较为详细的介绍了与课题密切相关的部分:USB数据通信结构、USB协议栈框架、USB设备类中的Mass Storage类,并且简要介绍了RS232协议。第 16 页 共 40 页3 系统的总体设计3.1 USB主机系统结构USB主机系统总体来说,包括硬件和软件两部分。硬件主要完成物理上的接口和实体功能;软件则管理硬件,实现数据传输和各项功能。PC上的USB主机系统大致构架如图31。图 31 PC 体系 USB 主机系统 根据PC体系上的USB主机系统和USB主机协议,总结得出USB主机系统都可以分为3个

43、层次:USB总线接口、USB系统层和USB用户层。USB总线接口层(USB Bus Interface)主要是指以主机控制器为核心的硬件部分,一般是由USB主控制器芯片,USB HUB控制器芯片,USB端口连接硬件及控制器外围电路等组成。USB主控制器芯片提供USB的收发物理层,实现USB电缆上差模信号与数字信号的转换并提供端点PC 主机系统用户软件和 USB 设备驱动程序USB 系统软件(USB核心和主控制驱动程序)USB 主控器 HUB(硬件)第 17 页 共 40 页的物理存储机制,还能根据USB的传输机制,自动管理各个端点存储自和数据交换。此外,USB主控制器还需提供与外围控制CPU的

44、接口电路,通过并行或串行的方式连接到CPU的总线上。USB系统层(USB System)是USB主机软件核心驱动程序和USB主控制器功能驱动程序组成。USB核心驱动程序,是整个软件体系的核心部分,也起到了一个中间桥梁的作用,在PC中,它被捆绑到操作系统中,解释USB设备类驱动程序发来的命令并将其划分为一系列的USB事务,然后发送给USB主机控制器以驱动程序。这里,USB核心驱动程序不与USB主控制器硬件直接打交道,而是通过USB主机控制驱动程序这个媒介来与USB主控制器硬件进行通信。USB主控制器驱动程序就负责最底层的驱动任务,控制和管理硬件底层,负责将USB事务发送给USB主控制器芯片,并将

45、串行数据发送到电缆上。USB用户层(USB User)也是基于软件层次的USB主机的组成部分,包括USB设备类驱动程序和用户软件(用户软件是可选的)。综合以上,整个USB的驱动程序分为三个层次,分别是USB设备类驱动程序,USB核心驱动程序和USB主控制器功能驱动程序。USB设备类驱动程序,也叫做用户驱动程序,它把用户要求的USB命令发送给USB的主控制器硬件,同时初始化内存缓冲区,用于存储所有USB通信中的数据。每一种USB类设备都需要设计相应的设备类驱动程序。目前,Windows操作系统对于HID类和Mass Storage类设备的支持比较完备,直接提供了设备类驱动程序。而对大部分的USB

46、设备类,用户和厂商还需自己开发类驱动程序。3.2 系统设计要求及方案选择3.2.1 系统设计要求本系统要实现2种功能。第一:实现USB主机功能,系统的USB HOST口接U盘或者USB口的移动硬盘,系统的RS232接口接RS232设备(如PC上的RS232口),实现RS232设备和USB设备的数据通信。用户能够通过本系统将RS232端的数据以文件的形式存储到移动存储器中,如U盘、移动硬盘等;也可以将U盘中的资料通过RS232接口读出来。其功能如图32所示。第二:实现USB设备功能,系统的USB SLAVE口接USB主机(如PC上的USB口),RS232接口接RS232设备。实现传统意义上的RS

47、232第 18 页 共 40 页到USB口的转换。用户可以将RS232设备当作成普通USB设备进行操作。RS 232 接口USB 接口图 32 系统主机功能示意图具体设计考虑的要素有:1.良好的兼容性;模块要完全遵守USB1.1协议,使之具有良好的兼容性,全面兼容大部分遵守USB规范的移动存储器(包括基于FLASH的,基于SmartMedia等的移动存储器和USB接口的移动硬盘等)。2.实现USB主机和设备功能当模块作为USB主机时,要保证其完全实现USB主机功能。包括实现设备的总线枚举和实现大容量存储协议等。模块作为设备使用时,能够完成主机的传输请求。USB 主机系统USB HOST协议栈R

48、S232 设备如 PC 上的RS232 接口USB 接口移动存储设备第 19 页 共 40 页3.实现USB-RS232的接口转换本系统主要是完成USB-RS232接口的转换,因此要实现模块作为USB主机和作为USB设备2种模式下的USB协议到RS232协议的转换。4.要方便用户扩展系统要留有用户接口,如数据VI、读写控制线、芯片选通线等,方便用户扩展5.低功耗要求模块在保证驱动能力的情况下要尽量减少功耗以节省能源6.成本要求在保证功能的情况下,尽可能降低成本3.2.2方案选择目前USB主机系统的方案主要有以下几种:l.传统的USB接口转换芯片通过采用USB接口转换芯片,如CYGNAL公司的C

49、P2101等,实现传统接与USB接口的转换,但是这需要利用微处理器开发针对所用接口的相应驱动程序和所要支持的类协议,由专用USB控制芯片转换为相应的USB接口的驱动程序,从而驱动相应的USB嵌入式设备,实现USB主机功能。这样的方案严格意义上说并不是USB主机系统,在传输速度以及拓扑结构等方面,根本无法发挥USB的诸多特点,本质上还是传统的总线接口。2.利用集成USB模块的微处理器此种方案的主要优点是嵌入式系统的硬件和软件设计的可靠性得到保证,实现底层协议栈,应用系统设计工程师只需考虑具体应用需求,完成特定的功能。但缺点是成本比较高,适用于高端应用。3.利用单片机+USB主机控制器这种实现的方案,可选用多种型号的微控制器来实现协议栈,并可根据具体要求选用不同速度的单片机作为核心芯片,基本硬件结构大致相同。只是应当考虑到单片机速度是否足够快和内存是否足够大,要想一些办法对协议栈及其设备类协议进行简化和保持最基本的东西,即嵌入式系统加上USB协议栈及其设备类协议转变为具体的系统。该方案的优点,一是不依赖PC机,利用单片机系统直接实第 20 页 共 40 页现主机,整个系统完全自给自足;二是外围器件可以灵活配置,需要什么可以在基本配置上加上相应的模块就可以了。3.3 USB接口常用芯片由于 USB 被设计成可以用简便有效的方法来与多种类

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

当前位置:首页 > 学术论文 > 毕业论文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报