什么是RS232
RS232 是美国电子工业联盟 指定的串行通信的接口标准。
原始编号全称是EIA-RS-232(简称232,RS232)。他被广泛用于计算机串行接口外设连接。
RS232 标准的全称是EIA-RS-232C标准,其中EIA代表美国电子工业联盟,RS(Rrcommand Standard)代表推荐标准,232是标识号,C代表232的第三次修改。
RS232的传输方式
在rs232标准中,字符是以一串行的比特串来一个接一个断点以串列(serial)的方式传输的(所以又叫串口)。
- 优点
传输线少,配线简单,发送距离可以较远
最常见的编码格式是异步起停(Asynchronous Start-stop)格式,它使用一个起始比特后面紧跟7个或8个数据比特(bit),然后是奇偶校验比特,最后是一个或两个停止比特。所以发送一个字符至少需要10比特,带来的效果是使全部的传输速率,发送信号的速率以10划分。
一个最平常的代替异步起停的方式是使用高级数据链路控制协议(HDLC)。
RS232在设计之初就是用来连接调制解调器做传输之用的,也因此它的脚位意义通常和调制解调器传输有关。
RS232的分类
根据不同的线路用来发送和接受信号的不同,妇女为
数据终端设备:DTE(Data Terminal Equipment)
计算和终端设备有DTE连接器
数据通信设备:DCE:Data Communication Equipment
调制解调器和打印机有DCE连接器
不是很准确, 但是可以大概分为这两类
常见的管脚接口和脚位的意义
发展
RS232接口标准指定了20个不同的信号连接,最初使用的是25个D-sub(微型D类)管脚构成的DB-25连接器,但很多设备只是用了其中的一小部分管脚,出于节省资金和空间的考虑,不少机器采用较小的连机器,特别是9管脚的D-sub或者是DB-9型连接器被广泛使用在绝大多数字IBM的AT机之后的PC和其他设备上。
下图为近几年常见的RJ-45接口的DB-9 console 接口的console线:
RJ-45接口和DB-9 Console 及DB-9 Modem接口的对应关系
RJ-45 | 信号 | 数据流向 | DB9(MODEM) | DB9(CONSOLE) |
---|---|---|---|---|
1 | RTS | → | 7 | 8 |
2 | DTR | → | 4 | 6 |
3 | TXD | → | 3 | 2 |
4 | DCD | ← | 1 | 5 |
5 | GND | - | 5 | 5 |
6 | RXD | ← | 2 | 3 |
7 | DSR | ← | 6 | 4 |
8 | CTS | ← | 8 | 7 |
- TXD:发送数据
- RXD:接受数据
- DTR:数据终端准备
- DSR:数据准备好
- RTS:请求发送
- CTS:清除发送
- DCD:数据载波检测
9针串口
下图为9针串口指示图:
各脚位的意义
脚位(Pin) | 简写 | 意义 | 说明 |
---|---|---|---|
1 | CD | Carrier Detect | 调制解调器通知电脑有载波被检测到2 |
2 | RXD | Receiver | 接受数据 |
3 | TXD | Transmit | 发送数据 |
4 | DTR | Data Terminal Ready | 电脑告诉调制解调器可以进行数据传播 |
5 | GND | Ground | 底线 |
6 | DSR | Data Set Ready | 调制解调器告诉电脑一切准备就绪 |
7 | RTS | Request To Send | 电脑要求调制解调器将数据提交 |
8 | CTS | Clear To Send | 调制解调器通知电脑可以传数据过来 |
9 | RI | Ring Indicator | 调制解调器通知电脑又电话进来 |
常见的串口设置
最常见的设置包括波特率(Baud Rate),数据位(Data bits),奇偶校验(Parity Check)和停止位(Stop bits);
Mac下SecureCRT的串口设置界面(只有Mac):
波特率(Bps)
这是一个衡量通信速度的参数
它表示每秒传送的比特的个数。例如:300波特表示每秒发送300个bit。当我们提到时钟周期时候,就是指波特率。例如:如果协议需要4800波特率,那么时钟是4800Hz。这意味着串口通信在数据线行的采样率为4800H在。通常电话线的波特率为14400bit/s,28800bit/s和36600bits/s。波特率可以源大于这些值,但是波特率和距离成反比。高波特率通常用于放置的很近的仪器间的通信,典型的例子就是GPIB设备的通信。
数据位(Data Bits)
这是衡量通信中数据位的参数
当计算机发送一个信息包时,实际的数据不会是8位的,标准的值是5位,7位和8位。如何设置取决于你想传送的信息。
例如,标准的ASCII码是0~127位(7位),扩展的ASCII码是0~255位(8位)。如何数据使用简单的文本(标准ascii)码,那么每个数据包使用7位数据。每个包是指一个字节,包括开始/停止位,数据位和奇偶校验位。实际数据位取决于通信协议的选取。
奇偶校验(Parity)
用来验证数据的正确性
奇偶校验一般不使用,如果使用,那么既可以做奇校验(Odd Parity)也可以做偶校验(Even Parity)。奇偶校验是通过修改每一发送的字节(也可以限制发送的字节)来工作的。如果不做奇偶校验,那么数据是不会改变的。在偶校验中,因为奇偶校验为会被响应的置1或0(一般是最高位或最低位),所以数据数据会被改变,使得所有的传送的位数(含字符的各位数和校验位)中“1”的个数为偶数;在奇校验中,所有的传送的位数(含字符的各位数和校验位)中“1”的个数为奇数。
奇偶校验可以用于接收方检查传输是否发生错误:如果某一个字节汇中“1”的个数发生了错误,那么这个字节在传输中一定有错误发生。
如果选择的数据长度是8位,这个时候就没有多余的比特用来做校验了,此时只能选非奇偶校验了。
停止位(Stop Bits)
用于表示单个包的最后一位
典型的值为1位,1.5位和2位。由于数据线是在传输线上定时的,并且每一个设备都有自己的时钟,所有很有可能在通信中两台设备出现小小的不同步。因此停止位不仅仅表示传输的结束,并且提供计算机校正时钟同步的机会。
适用于停止位的位数越多,不同时钟同步的容忍程度越大,数据传输速率也就越慢。
串口的通常都是8/N/1,也就是8位数据,无校验,停止位1。
在串行通信软件设置中,D/P/S是常规的符号标号。
其中,数据为可以设置为5位,6位,7位或者8位,奇偶可以设置无,奇,偶,而且如果有奇偶校验的话是要占压数据位的。
流量控制
当需要发送握手信号或数据完整性检测时需要指定其他设置
公用的组合有RTS/CTS,DTR/DSR或者XON/XOFF.
接收方吧XON/XOFF信号发给发送方来控制发送方何时发送数据,这些信号是与发送数据的传输方向相反的。XON信号告诉发送方接受方准备好接收更多的数据,XOFF信号告诉发送方停止发送数据直到接收方再次准备好。一般不赞成使用XON/COFF,推荐使用RTS/CTS控制流。
The post RS232 学习笔记 appeared first on cole.
https://ift.tt/2u2jpWN IoT, eia, iot, rs232, serial July 07, 2018 at 11:25AM
评论
发表评论