USB基本知识及通信协议.docx

上传人:b****3 文档编号:24777744 上传时间:2023-06-01 格式:DOCX 页数:24 大小:36.43KB
下载 相关 举报
USB基本知识及通信协议.docx_第1页
第1页 / 共24页
USB基本知识及通信协议.docx_第2页
第2页 / 共24页
USB基本知识及通信协议.docx_第3页
第3页 / 共24页
USB基本知识及通信协议.docx_第4页
第4页 / 共24页
USB基本知识及通信协议.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

USB基本知识及通信协议.docx

《USB基本知识及通信协议.docx》由会员分享,可在线阅读,更多相关《USB基本知识及通信协议.docx(24页珍藏版)》请在冰豆网上搜索。

USB基本知识及通信协议.docx

USB基本知识及通信协议

串口通信协议

什么是串口

  串口是计算机上一种非常通用设备通信的协议〔不要与通用串行总线UniversalSerialBus或者USB混淆〕。

大多数计算机包含两个基于RS232的串口。

串口同时也是仪器仪表设备通用的通信协议;很多GPIB兼容的设备也带有RS-232口。

同时,串口通信协议也可以用于获取远程采集设备的数据。

  串口通信的概念非常简单,串口按位〔bit〕发送和接收字节。

尽管比按字节〔byte〕的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。

它很简单并且能够实现远距离通信。

比方IEEE488定义并行通行状态时,规定设备线总常不得超过20米,并且任意两个设备间的长度不得超过2米;而对于串口而言,长度可达1200米。

  典型地,串口用于ASCII码字符的传输。

通信使用3根线完成:

〔1〕地线,〔2〕发送,〔3〕接收。

由于串口通信是异步的,端口能够在一根线上发送数据同时在另一根线上接收数据。

其他线用于握手,但是不是必须的。

串口通信最重要的参数是波特率、数据位、停止位和奇偶校验。

对于两个进行通行的端口,这些参数必须匹配:

  a,波特率:

这是一个衡量通信速度的参数。

它表示每秒钟传送的bit的个数。

例如300波特表示每秒钟发送300个bit。

当我们提到时钟周期时,我们就是指波特率例如如果协议需要4800波特率,那么时钟是4800Hz。

这意味着串口通信在数据线上的采样率为4800Hz。

通常线的波特率为14400,28800和36600。

波特率可以远远大于这些值,但是波特率和距离成反比。

高波特率常常用于放置的很近的仪器间的通信,典型的例子就是GPIB设备的通信。

  b,数据位:

这是衡量通信中实际数据位的参数。

当计算机发送一个信息包,实际的数据不会是8位的,标准的值是5、7和8位。

如何设置取决于你想传送的信息。

比方,标准的ASCII码是0~127〔7位〕。

扩展的ASCII码是0~255〔8位〕。

如果数据使用简单的文本〔标准ASCII码〕,那么每个数据包使用7位数据。

每个包是指一个字节,包括开始/停止位,数据位和奇偶校验位。

由于实际数据位取决于通信协议的选取,术语“包〞指任何通信的情况。

  c,停止位:

用于表示单个包的最后一位。

典型的值为1,1.5和2位。

由于数据是在传输线上定时的,并且每一个设备有其自己的时钟,很可能在通信中两台设备间出现了小小的不同步。

因此停止位不仅仅是表示传输的结束,并且提供计算机校正时钟同步的时机。

适用于停止位的位数越多,不同时钟同步的容忍程度越大,但是数据传输率同时也越慢。

  d,奇偶校验位:

在串口通信中一种简单的检错方式。

有四种检错方式:

偶、奇、高和低。

当然没有校验位也是可以的。

对于偶和奇校验的情况,串口会设置校验位〔数据位后面的一位〕,用一个值确保传输的数据有偶个或者奇个逻辑高位。

例如,如果数据是011,那么对于偶校验,校验位为0,保证逻辑高的位数是偶数个。

如果是奇校验,校验位位1,这样就有3个逻辑高位。

高位和低位不真正的检查数据,简单置位逻辑高或者逻辑低校验。

这样使得接收设备能够知道一个位的状态,有时机判断是否有噪声干扰了通信或者是否传输和接收数据是否不同步。

什么是RS-232

  RS-232〔ANSI/EIA-232标准〕是IBM-PC及其兼容机上的串行连接标准。

可用于许多用途,比方连接鼠标、打印机或者Modem,同时也可以接工业仪器仪表。

用于驱动和连线的改良,实际应用中RS-232的传输长度或者速度常常超过标准的值。

RS-232只限于PC串口和设备间点对点的通信。

RS-232串口通信最远距离是50英尺。

  DB-9针连接头

  -------------

  \12345/

  \6789/

  -------

  从计算机连出的线的截面。

  RS-232针脚的功能:

  数据:

  TXD〔pin3〕:

串口数据输出(TransmitData)

  RXD〔pin2〕:

串口数据输入(ReceiveData)

  握手:

  RTS〔pin7〕:

发送数据请求(RequesttoSend)

  CTS〔pin8〕:

去除发送(CleartoSend)

  DSR〔pin6〕:

数据发送就绪(DataSendReady)

  DCD〔pin1〕:

数据载波检测(DataCarrierDetect)

  DTR〔pin4〕:

数据终端就绪(DataTerminalReady)

  地线:

  GND〔pin5〕:

地线

  其他

  RI〔pin9〕:

铃声指示

什么是RS-422

  RS-422〔EIARS-422-AStandard〕是Apple的Macintosh计算机的串口连接标准。

RS-422使用差分信号,RS-232使用非平衡参考地的信号。

差分传输使用两根线发送和接收信号,比照RS-232,它能更好的抗噪声和有更远的传输距离。

在工业环境中更好的抗噪性和更远的传输距离是一个很大的优点。

什么是RS-485

  RS-485〔EIA-485标准〕是RS-422的改良,因为它增加了设备的个数,从10个增加到32个,同时定义了在最大设备个数情况下的电气特性,以保证足够的信号电压。

有了多个设备的能力,你可以使用一个单个RS-422口建立设备网络。

出色抗噪和多设备能力,在工业应用中建立连向PC机的分布式设备网络、其他数据收集控制器、HMI或者其他操作时,串行连接会选择RS-485。

RS-485是RS-422的超集,因此所有的RS-422设备可以被RS-485控制。

RS-485可以用超过4000英尺的线进行串行通行。

  DB-9引脚连接

  -------------

  \12345/

  \6789/

  -------

  从计算机连出的线的截面。

  RS-485和RS-422的引脚的功能

  数据:

TXD+〔pin8〕,TXD-〔pin9〕,RXD+〔pin4〕,RXD-〔pin5〕

  握手:

RTS+〔pin3〕,RTS-〔pin7〕,CTS+〔pin2〕,CTS-〔pin6〕

  地线:

GND〔pin1〕

什么是握手

  RS-232通行方式允许简单连接三线:

Tx、Rx和地线。

但是对于数据传输,双方必须对数据定时采用使用相同的波特率。

尽管这种方法对于大多数应用已经足够,但是对于接收方过载的情况这种使用受到限制。

这时需要串口的握手功能。

在这一局部,我们讨论三种最常用的RS-232握手形式:

软件握手、硬件握手和Xmodem。

  a,软件握手:

我们讨论的第一种握手是软件握手。

通常用在实际数据是控制字符的情况,类似于GPIB使用命令字符串的方式。

必须的线仍然是三根:

Tx,Rx和地线,因为控制字符在传输线上和普通字符没有区别,函数SetXModem允许用户使能或者禁止用户使用两个控制字符XON和OXFF。

这些字符在通信中由接收方发送,使发送方暂停。

  例如:

假设发送方以高波特率发送数据。

在传输中,接收方发现由于CPU忙于其他工作,输入buffer已经满了。

为了暂时停止传输,接收方发送XOFF,典型的值是十进制19,即十六进制13,直到输入buffer空了。

一旦接收方准备好接收,它发送XON,典型的值是十进制17,即十六进制11,继续通信。

输入buffer半满时,LabWindows发送XOFF。

此外,如果XOFF传输被打断,LabWindows会在buffer到达75%和90%时发送XOFF。

显然,发送方必须遵循此守那么以保证传输继续。

  b,硬件握手:

第二种是使用硬件线握手。

和Tx和Rx线一样,RTS/CTS和DTR/DSR一起工作,一个作为输出,另一个作为输入。

第一组线是RTS〔RequesttoSend〕和CTS〔CleartoSend〕。

当接收方准备好接收数据,它置高RTS线表示它准备好了,如果发送方也就绪,它置高CTS,表示它即将发送数据。

另一组线是DTR〔DataTerminalReady〕和DSR〔DataSetReady〕。

这些现主要用于Modem通信。

使得串口和Modem通信他们的状态。

例如:

当Modem已经准备好接收来自PC的数据,它置高DTR线,表示和线的连接已经建立。

读取DSR线置高,PC机开始发送数据。

一个简单的规那么是DTR/DSR用于表示系统通信就绪,而RTS/CTS用于单个数据包的传输。

  在LabWindows,函数SetCTSMode使能或者禁止使用硬件握手。

如果CTS模式使能,LabWindows使用如下规那么:

  当PC发送数据:

  RS-232库必须检测CTS线高后才能发送数据。

  当PC接收数据:

  如果端口翻开,且输入队列有空接收数据,库函数置高RTS和DTR。

  如果输入队列90%满,库函数置低RTS,但使DTR维持高电平。

  如果端口队列近乎空了,库函数置高RTS,但使DRT维持高电平。

  如果端口关闭,库函数置低RTS和DTR。

  c,XModem握手:

最后讨论的握手叫做XModem文件传输协议。

这个协议在Modem通信中非常通用。

尽管它通常使用在Modem通信中,XModem协议能够直接在其他遵循这个协议的设备通信中使用。

在LabWindows中,实际的XModem应用对用户隐藏了。

只要PC和其他设备使用XModem协议,在文件传输中就使用LabWindows的XModem函数。

函数是XModemConfig,XModemSend和XModemReceive。

  XModem使用介于如下参数的协议:

start_of_data、end_of_data、neg_ack、wait_delay、start_delay、max_tries、packet_size。

这些参数需要通信双方认定,标准的XModem有一个标准的定义:

然而,可以通过XModemConfig函数修改,以满足具体需要。

这些参数的使用方法由接收方发送的字符neg_ack确定。

这通知发送方其准备接收数据。

它开始尝试发送,有一个超时参数start_delay;当超时的尝试超过max_ties次数,或者收到接收方发送的start_of_data,发送方停止尝试。

如果从发送方收到start_of_data,接收方将读取后继信息数据包。

包中含有包的数目、包数目的补码作为错误校验、packet_size字节大小的实际数据包,和进一步错误检查的求和校验值。

在读取数据后,接收方会调用wait_delay,然后想发送方发送响应。

如果发送方没有收到响应,它会重新发送数据包,直到收到响应或者超过重发次数的最大值max_tries。

如果一直没有收到响应,发送方通知用户传输数据失败。

  由于数据必须以pack_size个字节按包发送,当最后一个数据包发送时,如果数据不够放满一个数据包,后面会填充ASCII码NULL〔0〕字节。

这导致接收的数据比原数据多。

在XModem情况下一定不要使用XON/XOFF,因为XModem发送方发出包的数目很可能增加到XON/OFF控制字符的值,从而导致通信故障。

【USB的简述】

  USB是英文UniversalSerialBUS的缩写,中文含义是“通用串行总线〞。

它不是一种新的总线标准,而是应用在PC领域的接口技术。

USB是在1994年底由英特尔、康柏、IBM、Microsoft等多家公司联合提出的。

不过直到近期,它才得到广泛地应用。

从1994年11月11日发表了USBV0.7版本以后,USB版本经历了多年的开展,到现在已经开展为2.0版本,成为目前电脑中的标准扩展接口。

目前主板中主要是采用USB1.1和USB2.0,各USB版本间能很好的兼容。

USB用一个4针插头作为标准插头,采用菊花链形式可以把所有的外设连接起来,最多可以连接127个外部设备,并且不会损失带宽。

USB需要主机硬件、操作系统和外设三个方面的支持才能工作。

目前的主板一般都采用支持USB功能的控制芯片组,主板上也安装有USB接口插座,而且除了背板的插座之外,主板上还预留有USB插针,可以通过连线接到机箱前面作为前置USB接口以方便使用〔注意,在接线时要仔细阅读主板说明书并按图连接,千万不可接错而使设备损坏〕。

而且USB接口还可以通过专门的USB连机线实现双机互连,并可以通过Hub扩展出更多的接口。

USB具有传输速度快〔USB1.1是12Mbps,USB2.0是480Mbps,USB3.0是5Gbps〕,使用方便,支持热插拔,连接灵活,独立供电等优点,可以连接鼠标、键盘、打印机、扫描仪、摄像头、闪存盘、MP3机、、数码相机、移动硬盘、外置光软驱、USB网卡、ADSLModem、CableModem等,几乎所有的外部设备。

  USB是一个外部总线标准,用于标准电脑与外部设备的连接和通讯。

USB接口支持设备的即插即用和热插拔功能。

  USB接口可用于连接多达127种外设,如鼠标、调制解调器和键盘等。

USB自从1996年推出后,已成功替代串口和并口,并成为当今个人电脑和大量智能设备的必配的接口之一。

  USB的版本

  第一代:

USB1.0/1.1的最大传输速率为12Mbps。

1996年推出。

  第二代:

USB2.0的最大传输速率高达480Mbps。

USB1.0/1.1与USB2.0的接口是相互兼容的。

  usb的应用:

  随着计算机硬件飞速开展,外围设备日益增多,键盘、鼠标、调制解调器、打印机、扫描仪早已为人所共知,数码相机、MP3随身听接踵而至,这么多的设备,如何接入个人计算机?

USB就是基于这个目的产生的。

USB是一个使计算机周边设备连接标准化、单一化的接口,其规格是由Intel、NEC、Compaq、DEC、IBM、Microsoft、NorthernTelecom联系制定的。

  USB1.1标准接口传输速率为12Mbps,但是一个USB设备最多只可以得到6Mbps的传输频宽。

因此假设要外接光驱,至多能接六倍速光驱,无法再高。

而假设要即时播放MPEG-1的VCD影片,至少要1.5Mbps的传输频宽,这点USB办得到,但是要完成数据量大四倍的MPEG-2的DVD影片播放,USB可能就很吃力了,假设再加上AC-3音频数据,USB设备就很难实现即时播放了。

  一个USB接口理论上可以支持127个装置,但是目前还无法到达这个数字。

其实,对于一台计算机,所接的周边外设很少有超过10个的,因此这个数字是足够我们使用的。

  USB还有一个显著优点就是支持热插拔,也就是说在开机的情况下,你也可以平安地连接或断开USB设备,到达真正的即插即用。

  不过,并非所有的Windows系统都支持USB。

目前,Windows系统中有许多不同的版本,在这些版本中,只有Windows98以上版本的系统对USB的支持较好,而其他的Windows版本并不能完整支持USB。

例如Windows95的零售版是不支持USB的,只有后来与PC捆绑销售的Windows95版本才支持USB。

  目前USB设备虽已被广泛应用,但比拟普遍的却是USB1.1接口,它的传输速度仅为12Mbps。

举个例子说,当你用USB1.1的扫描仪扫一张大小为4M的图片,需要四秒钟之久。

这样的速度,让用户觉得非常不方便,如果有好几张图片要扫的话,就得要有很好的耐心来等待了。

  用户的需求,是促进科技开展的动力,厂商也同样认识到了这个瓶颈。

这时,COMPAQ、HewlettPackard、Intel、Lucent、Microsoft、NEC和PHILIPS这7家厂商联合制定了USB2.0接口标准。

USB2.0将设备之间的数据传输速度增加到了480Mbps,比USB1.1标准快40倍左右,速度的提高对于用户的最大好处就是意味着用户可以使用到更高效的外部设备,而且具有多种速度的周边设备都可以被连接到USB2.0的线路上,而且无需担忧数据传输时发生瓶颈效应。

  所以,如果你用USB2.0的扫描仪,就完全不同了,扫一张4M的图片只需半秒钟左右的时间,一眨眼就过去了,效率大大提高。

  而且,USB2.0可以使用原来USB定义中同样规格的电缆,接头的规格也完全相同,在高速的前提下一样保持了USB1.1的优秀特色,并且,USB2.0的设备不会和USB1.X设备在共同使用的时候发生任何冲突。

  USB2.0兼容USB1.1,也就是说USB1.1设备可以和USB2.0设备通用,但是这时USB2.0设备只能工作在全速状态下(12Mbit/s)。

USB2.0有高速、全速和低速三种工作速度,高速是480Mbit/s,全速是12Mbit/s,低速是1.5Mbit/s。

其中全速和低速是为兼容USB1.1和USB1.0而设计的,因此选购USB产品时不能只听商家宣传USB2.0,还要搞清楚是高速、全速还是低速设备。

USB总线是一种单向总线,主控制器在PC机上,USB设备不能主动与PC机通信。

为解决USB设备互通信问题,有关厂商又开发了USBOTG标准,允许嵌入式系统通过USB接口互相通信,从而甩掉了PC机。

  新USB2.0标准重新命名了USB标准将原先的USB1.1改成了USB2.0FullSpeed〔全速版〕,同时将原有的USB2.0改成了USB2.0High-Speed〔高速版〕,并同时公布了新的标识。

不言而喻,高速版的USB2.0速度当然超过全速版的USB2.0。

【USBvsIEEE1394】

一、USB与IEEE1394的相同点主要有哪些?

  两者都是一种通用外接设备接口。

  两者都可以快速传输大量数据。

  两者都能连接多个不同设备。

  两者都支持热插拨。

  两者都可以不用外部电源。

  二、USB与IEEE1394的不同点有哪些?

  两者的传输速率不同。

USB的传输速率与IEEE1394的速率比起来真是小巫见大巫了。

USB的传输速率现在只有480Mbps,只能连接键盘、鼠标与麦克风等低速设备,而IEEE1394可以使用3.2Gbps,可以用来连接数码相机、扫描仪和信息家电等需要高速率的设备。

  两者的结构不同。

USB在连接时必须至少有一台电脑,并且必须需要HUB来实现互连,整个网络中最多可连接127台设备。

IEEE1394并不需要电脑来控制所有设备,也不需要HUB,IEEE1394可以用网桥连接多个IEEE1394网络,也就是说在用IEEE1394实现了63台IEEE1394设备之后也可以用网桥将其他的IEEE1394网络连接起来,到达无限制连接。

  两者的智能化不同。

IEEE1394网络可以在其设备进行增减时自动重设网络。

USB是以HUB来判断连接设备的增减了。

  两者的应用程度不同。

现在USB已经被广泛应用于各个方面,几乎每台PC主板都设置了USB接口,USB2.0也会进一步加大USB应用的范围。

IEEE1394现在只被应用于音频、视频等多媒体方面。

【前置USB接口】

  前置USB接口是位于机箱前面板上的USB扩展接口。

目前,使用USB接口的各种外部设备越来越多,例如移动硬盘、闪存盘、数码相机等等,但在使用这些设备〔特别是经常使用的移动存储设备〕时每次都要钻到机箱后面去使用主板板载USB接口显然是不方便的。

前置USB接口在这方面就给用户提供了很好的易用性。

目前,前置USB接口几乎已经成为机箱的标准配置,没有前置USB接口的机箱已经非常少见了。

  前置USB接口要使用机箱所附带的USB连接线连接到主板上所相应的前置USB插针〔一般是8针、9针或10针,两个USB成对,其中每个USB使用4针传输信号和供电〕上才能使用。

在连接前置USB接口时一定要事先仔细阅读主板说明书和机箱说明书中与其相关的内容,千万不可将连线接错,不然会造成USB设备或主板的损坏。

  另外,由于USB2.0接口输出电压为5V,输出电流为500mA。

使用前置USB接口时要注意前置USB接口供电缺乏的问题,在使用耗电较大的USB设备时,要使用外接电源或直接使用机箱后部的主板板载USB接口,以防止USB设备不能正常使用或被损坏。

【USB口硬盘盒】

  目前的主流,其最大优点是使用方便,支持热插拔和即插即用。

USB有两种标准:

一种是USB1.1接口,其传输速度只有12Mbps,一种是USB2.0接口,其传输速度高达480Mbps。

目前的主板上的USB都支持USB1.1,但USB2.0只有较新的主板才能支持,购置时根据个人情况选择产品,虽然USB2.0向下兼容USB1.1,但支持USB2.0接口的移动硬盘盒比USB1.1的要贵一些。

【无线USB】

  USB开发者论坛的主席兼英特尔公司的技术策略官JeffRavencraft表示,无线USB技术将帮助用户在使用个人电脑连接打印机、数码相机、音乐播放器和外置磁盘驱动器等设备时,从纷繁复杂的电缆连线中解放出来。

无线USB标准的数据传输速率与目前的有线USB2.0标准是一样的,均为每秒480M,两者的区别在于无线USB要求在个人电脑或外设中装备无线收发装置以代替电缆连线。

  在英特尔开发者论坛举办的前夕,Ravencraft称,首先采用这一标准的将是外置磁盘驱动器、数码相机和打印机。

而越来越多的产品将在今年第三季度开始推向市场。

  为了使无线USB标准得以实用,必须改善这一技术的一些缺乏。

在星期一,USB标准小组宣布了无线联盟标准,以确保只有经过认证才能让电脑和外设通过无线USB连接起来。

  Ravencraft补充,一直以来USB标准已经广泛的用于将数码相机、扫描仪、、PDA、DVD刻录机和其他设备与个人电脑的连接。

而无线联盟标准那么详细规定了个人电脑和外设如何通过无线USB进行连接,一台电脑最多可以同时连接127个外设。

  无线联盟标准规定了两种建立连接的方法。

第一种方法是电脑和外设先用电缆连接起来,然后再建立无线连接以供以后使用。

第二种方法是外设可以提供一串数字,用户在建立连接的时候输入到电脑里面。

  无线USB采用超宽带技术进行通信。

目前无线局域网的802.11g协议采用位于2.4GHz附近的一小段频带进行通信,而超宽带技术那么采用从3.1GHz到10.6GHz的频带进行通信。

超宽带的信号水平足够低,因此对于其他无线通信技术来说,超宽带信号的影响类似于噪声。

  无线网络目前广泛使用的技术是IEEE的802.11标准,也就是英特尔所推动的Wi-Fi。

这一技术广泛的使用在笔记本电脑上,甚至局部尼康公司和佳能公司的数码相机也采用这一技术。

而无线USB技术那么是一个完全不同的技术,由于这一技术实现上相对简单同时功耗只有802.11的一半,因此不少厂商都更愿意采用无线USB技术。

  Ravencraft表示,在高端的和数码相机上采用802.11技术,关键是要解决电池寿命问题。

而厂商们发现超宽带技术是解决这一问题的最好的方法。

  在距离电脑10英尺范围内,无线USB设备的传输速率将保持每秒480M。

如果在30英尺范围内,传输速率将下降到每秒110M。

然而随着技术的开展,无线USB的传输速率将会超过每秒1G甚至更快。

  目前超宽带技术不仅可以用于无线USB连接中,还可以在蓝牙和IEEE的1394火线连接甚至WiNet短距离连接中使用。

【USB的不同接口与数据线】

  随着各种数码设备的大量普及,特别是MP3和数码相机的普及,我们周围的USB设备渐渐多了起来。

然而这些设备虽然都是采用了USB接口,但是这些设备的数据线并不完全相同。

这些数据线在连接PC的一端都是相同的,但是在连接设备端的时候,通常出于体积的考虑而采用了各种不同的接口。

  绝大局部数码产品连接

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

当前位置:首页 > 工程科技 > 信息与通信

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

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