数据在单条传输线上,一位接一位地按顺序传送的方式称为串行通信。串行通信有两种方式:异步方式和同步方式。实现串行通信的接口叫串行接口,它主要的功能就是实现CPU与输入输出设备之间的串并行转换。把从CPU传送过来的并行数据转换成串行从输出设备输出,以及把从输入设备输入的串行数据转换成并行数据送给CPU。串行通信中,因为数据是一位一位地传输,所以为了是接收端能够识别接收到的每位数据的具体意思,收发双方就需要遵守相同的约定,即串口通信协议,它用来保证接收方知晓数据传输的开始及结束,以及判断接收数据的正确性。在异步串行通信中,在发送数据之前会先发送一个开始位,表示数据传输的开始,在发送完所有的数据后,会再多发送一个结束位,表示整个传输过程结束。为了保证数据的正确性,通常会采用奇偶校验法来验证接收到的数据,所以在传输的原始数据后面会再加上奇偶校验位。在同步串行通信中,收发双方采用同一个时钟源来双方的同步,所以传输数据时无需起始位和停止位。同步的方法有外同步和内同步两种,外同步法是在发送数据之前向接收端发送一串时钟脉冲,接收端按这个时钟频率调整自己的时序,是接收时钟频率锁定在接收到的时钟频率上,内同步法是接收端从接收到的数据信息波形本身提取同步的方法。
RS-232C定义了串行通信的物理接口,主要包括机械指标和电气指标。RS-232C标准的连接器有DB25和DB9两种,目前PC上常见的COM口就是DB9类型的连接器。DB9包含9个信号Pin,分别是TxD/RxD,RTS/CTS,DTR/DSR,SG/DCD/RI。TxD/RxD是用来发送和接收数据的,RTS/CTS是用来实现硬件流量控制的,当数据终端设备准备好数据时