首页 > 代码库 > RS-232协议和RS-485协议
RS-232协议和RS-485协议
RS232
RS232是一种异步传输标准接口。通常 RS-232 接口以9个引脚 (DB-9) 或是25个引脚 (DB-25) 的型态出现 。RS232最常用的连接方式是三根线:一条发送线、一条接收线及一条地线。
电平信号:逻辑1(MARK)=-3V~-15V,逻辑0(SPACE)=+3~+15V
传输距离:RS-232-C标准规定,驱动器允许有2500pF的电容负载,通信距离将受此电容限制,例如,采用150pF/m的通信电缆时,最大通信距离为15m;若每米电缆的电容量减小,通信距离可以增加。传输距离短的另一原因是RS-232属单端信号传送,存在共地噪声和不能抑制共模干扰(两条传输线上的信号同时变大或变小)等问题,因此一般用于20m以内的通信。
RS232不能实现多机通信。
原因:RS232为全双工的通信方式,一般的连接方式都为TTL电平<--电平转换芯片-->RS232电平,线路空闲时发送和接收的TTL电平都是高电平,电平转换芯片之后得到的RS232电平总是低。现在假设A为主机,B和C为从机,那么A想给B发送信号的时候没有问题,因为A的TXD线连接在B和C的RXD线上面,此时B和C的RXD线都是正常的处于等待接收(空闲)的状态,但是如果B如果收到信号想给A回复的时候,B的TXD与C的TXD线都同A的RXD线连接在一起的,B此时处于发送数据的状态(B即想控制自己的TXD线高低电平之间变化),然而C此时处于空闲状态(C想保证自己的TXD线为低电平不变),这个时候B和C的TXD线之间就出现了通信冲突。所以RS232可以实现点对点的通信方式,但这种方式不能实现组网的功能。
传输速率:RS232的传输速率较慢,能够达到1Mbps的已经比较少。
RS485
RS485一般采用两线制传输:A、B两条传输线。
电平信号:-2V~-6V表示“0”,+2V~+6V表示“1”,电压为A-B的电压。
传输距离:一般1Km以内都没有问题。理论上,通信速率在100Kpbs及以下时,RS485的最长传输距离可达1200米,但在实际应用中传输的距离也因芯片及电缆的传输特性而所差异。在传输过程中可以采用增加中继的方法对信号进行放大,最多可以加八个中继,也就是说理论上RS485的最大传输距离可以达到9.6公里。如果真需要长距离传输,可以采用光纤为传播介质,收发两端各加一个光电转换器,多模光纤的传输距离是5~10公里,而采用单模光纤可达50公里的传播距离。
RS485可以实现多机通信。
原因:RS485为半双工通信方式,即分时实现收和发。总线空闲的状态下需要保证状态为逻辑1,也就是A-B的电压符合逻辑1的电平值。假设此时1为主机,2和3为从机,数据线的连接方式为1,2,3的A连接在一起,1,2,3的B也连接在一起,不存在RS232连接方式的问题。
补充:
同步传输是一种以数据块为传输单位的数据传输方式,该方式下数据块与数据块之间的时间间隔是固定的,必须严格地规定它们的时间关系。每个数据块的头部和尾部都要附加一个特殊的字符或比特序列,标记一个数据块的开始和结束,一般还要附加一个校验序列,以便对数据块进行差错控制。
异步传输(Asynchronous Transmission): 异步传输将比特分成小组进行传送,小组可以是8位的1个字符或更长。发送方可以在任何时刻发送这些比特组,而接收方从不知道它们会在什么时候到达。一个常见的例子是计算机键盘与主机的通信。
同步异步的区别主要就在于收发双方的时钟是否同步。
波特率计算:如果设置波特率为115200,数据位为8bit,起始位为1bit,结束位为1bit,校验位为1bit;
那1s钟不间断可传送的字符(1bit起始位+8bit数据位+1bit校验位+1bit结束位,共11bit)为115200/11=10472;10472/1024结果约为10.227所以速率约为10kB/ps。
RS232是一种异步传输标准接口。通常 RS-232 接口以9个引脚 (DB-9) 或是25个引脚 (DB-25) 的型态出现 。RS232最常用的连接方式是三根线:一条发送线、一条接收线及一条地线。
电平信号:逻辑1(MARK)=-3V~-15V,逻辑0(SPACE)=+3~+15V
传输距离:RS-232-C标准规定,驱动器允许有2500pF的电容负载,通信距离将受此电容限制,例如,采用150pF/m的通信电缆时,最大通信距离为15m;若每米电缆的电容量减小,通信距离可以增加。传输距离短的另一原因是RS-232属单端信号传送,存在共地噪声和不能抑制共模干扰(两条传输线上的信号同时变大或变小)等问题,因此一般用于20m以内的通信。
RS232不能实现多机通信。
原因:RS232为全双工的通信方式,一般的连接方式都为TTL电平<--电平转换芯片-->RS232电平,线路空闲时发送和接收的TTL电平都是高电平,电平转换芯片之后得到的RS232电平总是低。现在假设A为主机,B和C为从机,那么A想给B发送信号的时候没有问题,因为A的TXD线连接在B和C的RXD线上面,此时B和C的RXD线都是正常的处于等待接收(空闲)的状态,但是如果B如果收到信号想给A回复的时候,B的TXD与C的TXD线都同A的RXD线连接在一起的,B此时处于发送数据的状态(B即想控制自己的TXD线高低电平之间变化),然而C此时处于空闲状态(C想保证自己的TXD线为低电平不变),这个时候B和C的TXD线之间就出现了通信冲突。所以RS232可以实现点对点的通信方式,但这种方式不能实现组网的功能。
传输速率:RS232的传输速率较慢,能够达到1Mbps的已经比较少。
RS485
RS485一般采用两线制传输:A、B两条传输线。
电平信号:-2V~-6V表示“0”,+2V~+6V表示“1”,电压为A-B的电压。
传输距离:一般1Km以内都没有问题。理论上,通信速率在100Kpbs及以下时,RS485的最长传输距离可达1200米,但在实际应用中传输的距离也因芯片及电缆的传输特性而所差异。在传输过程中可以采用增加中继的方法对信号进行放大,最多可以加八个中继,也就是说理论上RS485的最大传输距离可以达到9.6公里。如果真需要长距离传输,可以采用光纤为传播介质,收发两端各加一个光电转换器,多模光纤的传输距离是5~10公里,而采用单模光纤可达50公里的传播距离。
RS485可以实现多机通信。
原因:RS485为半双工通信方式,即分时实现收和发。总线空闲的状态下需要保证状态为逻辑1,也就是A-B的电压符合逻辑1的电平值。假设此时1为主机,2和3为从机,数据线的连接方式为1,2,3的A连接在一起,1,2,3的B也连接在一起,不存在RS232连接方式的问题。
补充:
同步传输是一种以数据块为传输单位的数据传输方式,该方式下数据块与数据块之间的时间间隔是固定的,必须严格地规定它们的时间关系。每个数据块的头部和尾部都要附加一个特殊的字符或比特序列,标记一个数据块的开始和结束,一般还要附加一个校验序列,以便对数据块进行差错控制。
异步传输(Asynchronous Transmission): 异步传输将比特分成小组进行传送,小组可以是8位的1个字符或更长。发送方可以在任何时刻发送这些比特组,而接收方从不知道它们会在什么时候到达。一个常见的例子是计算机键盘与主机的通信。
同步异步的区别主要就在于收发双方的时钟是否同步。
波特率计算:如果设置波特率为115200,数据位为8bit,起始位为1bit,结束位为1bit,校验位为1bit;
那1s钟不间断可传送的字符(1bit起始位+8bit数据位+1bit校验位+1bit结束位,共11bit)为115200/11=10472;10472/1024结果约为10.227所以速率约为10kB/ps。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。