第32节:串口编程流程
串口通信一次传一个通信位,一个bit一个bit的发送数据,串口通信有8位的也有7位的,但是在物理传送的时候使用bit进行传送。
什么是串口
以太网和USB等等,这些都是以串行发送数据,串口的标准是RS232。
什么是RS232
RS232是EIA定义的,串行通信的这种电器的接口。现在最广泛使用的是RS232C。
RS232C有效信号和无效信号
信号有效(接通,ON状态,正电压)=+3V~+15V
信号无效(断开,OFF状态,负电压)=-3V~-15V
RS232的针脚定义
一种是25针的定义,另一种是8针的定义。绝大多数使用的是TX和RX进行传输和接收数据。
什么是流控
两个串行的接口数据进行传送,必须两者协调一致才行,这个是由于通信的某个串行接口的限制造成的。对于异步的传输有两种方法:一个是软流控,硬件的流控。
什么是硬件流控:
里面有个RTS和CTS这两个信号,就是请求发送/允许发送协议,相当于一种握手协议,主要用来解决"隐藏终端"问题。
什么是软件流控:
软件流控一般采取一些特殊的字符开始进行传送,你必须先接收0xF或者0xFE等等,接收一长串后,后面的数据才是有效,否则在接收端直接把这些数据直接去掉了。(这块可以参考串口蓝牙的指令)
2、编程流程分析步骤
串口编程步骤:
开始--->打开串口--->初始化串口--->发送接收数据--->关闭
1、概念
什么是串口通信
在Linux串口通信在系统内核中是写好的,不需要再次编写。串口通信一次传一个通信位,一个bit一个bit的发送数据,串口通信有8位的也有7位的,但是在物理传送的时候使用bit进行传送。
什么是串口
以太网和USB等等,这些都是以串行发送数据,串口的标准是RS232。
什么是RS232
RS232是EIA定义的,串行通信的这种电器的接口。现在最广泛使用的是RS232C。
RS232C有效信号和无效信号
信号有效(接通,ON状态,正电压)=+3V~+15V
信号无效(断开,OFF状态,负电压)=-3V~-15V
RS232的针脚定义
一种是25针的定义,另一种是8针的定义。绝大多数使用的是TX和RX进行传输和接收数据。
什么是流控
两个串行的接口数据进行传送,必须两者协调一致才行,这个是由于通信的某个串行接口的限制造成的。对于异步的传输有两种方法:一个是软流控,硬件的流控。
什么是硬件流控:
里面有个RTS和CTS这两个信号,就是请求发送/允许发送协议,相当于一种握手协议,主要用来解决"隐藏终端"问题。
什么是软件流控:
软件流控一般采取一些特殊的字符开始进行传送,你必须先接收0xF或者0xFE等等,接收一长串后,后面的数据才是有效,否则在接收端直接把这些数据直接去掉了。(这块可以参考串口蓝牙的指令)
2、编程流程分析步骤
串口编程步骤:
开始--->打开串口--->初始化串口--->发送接收数据--->关闭