购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.7.2 RS-232

1.概述

RS-232通信协议一开始是为调制解调器设计的,所有与之连接的设备可以粗略分为数据终端设备(DTE,Data Terminal Equipment)和数据通信设备(DCE,Data Communication Equipment)两种。接口部分也有几种不同的级别,目前最常见的是9个引脚的DB-9,如图1-50和表1-10所示,计算机后面的COM1和COM2就是RS-232的标准接口。由于线路的损耗与噪声干扰,RS-232传输距离的建议值约为十多米。

图1-50 DB-9引脚示意图

表1-10 RS-232引脚定义(以DB-9为例)

数字信号皆是以0和1组合而成的,对于硬件电路来说,就是电位的切换;对于计算机来说,电压的变化是±15V;对于单片机嵌入式系统而言,则是0~3V或0~5V,这取决于单片机的驱动电压,所以在做RS-232的通信时,千万要小心这样的不同之处,一个疏忽可能会让单片机受到严伤害!而为解决转换信号电压的问题,最简单的方法是使用以晶体管为主的简单电路,其优点是组件采购方便,多见于评估板或自行测试的面包板,Arduino 的专属版本中也有这样的使用。市面上也有专用于电位转换的IC,如HIN232、MAX232等,这些类型的芯片可以满足大部分场合的基本需求,只是需要考虑使用时的系统电压、需要的转换数、芯片封装方式等。

2.RS-232通信协议

有时候虽然一样是RS-232的接口,但是两样设备连接起来却得到正确的数据,很好奇是不是买错了?别担心!不是买错,而是我们自己搞错了!RS-232通信有一定的通信格式,如图1-51所示。

在1组数据中(通常指的是1B),会先有起始位,接着是8个数据位(低位在前、高位在后),最后一位是奇、偶同位,接着是以高电位表示的停止位。这样的格式让RS-232在传输时只需要一条线路便可以将数据一个一个地传送出去。

图1-51 数据格式

(1)起始位(START BIT):表示之后的位为数据位,以图1-49的例子可知,起始位为0(低电位)。

(2)数据位(DATA BIT):可以选择数据大小为7或8位。

(3)(奇偶)同位检查(PARITY BIT):这是一个比较有意思的设定,意思是指包含在起始位和停止位中间的数据必须要有偶数个或奇数个1。举个例子:如果数据 D0~D7为0110100,这时共有3个1,如果是偶数位,则P为1,这样才可以凑成偶数个1;如果为奇数位,则P为0。

(4)停止位(STOP BIT):停止位数有1个和2个两种选择,通常设定为1个。因此,在进行信号交换之前,双方设备需采用相同的格式设定和数据传输速率(Baud Rate,或称速率),这些必须在系统初始化时就设定完成。

(5)速率:数据传输速率常见为1200的倍数,如1200、2400、4800、9600、38 400、57 600、115 200等,单位是bps。请记住,在传送数据时,英文和数字等标准ASCII码,1字节是1B,等于8bit,这样的传输速率在现在来说相当慢,USB、1394等新一代的接口速度皆远大于此,不过在一般的工业设备或感测模块中,RS-232还是相当普通的,全球定位系统GPS模块也采用232协议。

如果使用计算机连接设备来做测试或数据传输,那么目前WindowsXP有内建超级终端(“开始—程序—附件—通信”,见图1-52,可以在设定(见图1-53)完成后与硬件设备测试使用。

不过在Windows VISTA之后的版本中已经把超级终端从系统中移除,无法使用。解决的方法有两种:一种是从XP将超级终端机的程序复制到BISTA中使用;另一种是在网络中寻找相关的免费软件,不过这种类型的程序有的因为功能不是很完善,从而导致使用上的不便,有的甚至在处理比较大速率的庞大数据时,会有数据延迟现象,因此在网络上寻找相关程序时,还是看看其他使用者的反馈信息,或是在刚开始测试时,先观察是否能实时显示信息。

ComMonitor 串口调试软件是一款功能强大的串口测试程序,其具有全中文界面和各种串口测试功能,并且还支持在计算机上监控某个串口的功能,可以随时监测在这个COM内进出的所有数据,ComMonitor串口调试软件的主界面如图1-54所示。

图1-52 超级终端界面

图1-53 超级终端设定

图1-54 ComMonitor串口调试软件的主界面 HB6YUWy6I3tAS2r+I4rWv1AH0o1544CAfWlqU5on1xFnx8tXXHA8s2CQXY1HSNrK

点击中间区域
呼出菜单
上一章
目录
下一章
×