本帖最后由 forgot 于 2023-3-31 14:42 编辑
RS-232是最常见的串行通信接口标准之一,早期传统的RS-232-C接口标准是有22根线,采用的是DB-25的连接器,后来经过简化成为了DB-9连接器,现在的工业RS-232口一般只使用RXD、TXD、GND三条线,分别为数据接收、数据发送和共地线,也就是我们现在常见到的用法。
RS-232通讯接口是将微机的TTL电平转换为RS-232C电平,逻辑“1”的高电平为-3V~-15 V,逻辑“0”的低电平为+3 V~+15 V,非法状态为-3 ~ +3V,这样相对于直接采用TTL电平,大大提高了传送距离,可达30m,但是RS-232采用的并不是差分信号线结构,所以在传输的距离上面相比较RS485通信要近很多,因为共地模式抗干扰性能比较弱。除了常用的RXD、TXD、GND三条线以外,标准的9线RS-232-C还有RSD、DTR、DSR、RTS、CTS和RING六根线,其中RSD为接收线路信号检测,用来指示DCE已经连接了通信链路,并告诉DTE它已准备好接收数据,DTR与DSR分别别是数据终端与数据装置准备好,可以进行使用,RTS和CTS为请求发送信号与对请求发送信的响应信号,一般称为串口的数据流控,RING为振铃呼叫信号接口,这些都是不常用的信号线,甚至很多做过RS-232项目的人,都不知道RS-232还有这些线的存在。
不过虽然只用三根线,但是除了用三位的接线端子作为通讯口之外,还有很多设备上仍然采用的是DB9的端子,这时候一定要对DB9的公座和母座的管脚对应信号线的位置进行区分,针头为公座,孔头为母座,在对应的针或者孔的位置都有号码标识,按照接口定义标准,2号脚对应的是数据接收RXD脚,3号脚为数据发送TXD脚,5脚为信号地GND脚。而在很多轻量化或者是小型化的设备上,已经有很多采用USB口转串口的设计,比如现在的很多笔记本,为了更薄,取消了DB9的端子接口,改用多个USB口,这时候如果要连接DB9接口的设备就需要用到USB-RS232的转接线。
RS232的传输波特率有9600bps、38400bps、115200bps等,一般9600bps和115200bps用的比较多,数据可以按照1bit开始位,8bit数据位,1bit停止位格式进行传输。不管是接收端按照发送端进行波特率和数据格式设计,还是发送端按照接收端的要求设计,都是可以的,只需要两边一致就可以完成数据的正确传输,否则会出现数据错误,如发送端采用的是9600bps进行数据发送,如果这时采用PC机上的串口调试工具,采用115200进行数据接收打印,往往也可以收到数据显示,但是实际数据的内容是完全错误的,这里在进行串口调试的时候需要注意,保证波特率的一致性。 在嵌入式系统中将单片机的串口USART转为RS232通讯最常用的芯片有MAX3232、MAX232等,这个芯片的工作原理是采用四个0.1uF的外部电荷泵电容,产生V+和V-的电压用于RS232的逻辑电平,MAX232是用于5V的供电系统,功耗一般比3.3V系统用的MAX3232要大一些,选用时应该根据自己的单片机系统电源类型进行选择。
|