串口通信(UART)是一种用两线(RX、TX)实现的异步、全双工通信方式.串口协议是按位(bit)发送和接收字节,尽管比特字节(byte)的串行通信速度较慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据.这样可以节省通信电缆,进而节省设计空间,对于一些数据传输量不大且使用空间紧张的场合,仍广泛应用.串口通信协议规定了数据包的内容,包括起始位、有效数据位、奇偶校验位、停止位以及空闲位,通信双方需要约定一致的数据包格式才能正常收发数据.在串口通信中,常用的物理协议包括RS-232、RS-422和RS-485.在遥测系统中,数据编码器通常需要对多个设备的状态信息进行采集编码,被测设备输出形式多样,有模拟量、串口RS-422数字量等,同时由于数据编码器的体积受限,不能使用专用芯片实现多路信号通信功能,需要基于主控FPGA芯片,采用硬件编程方法实现多路信号的采集接收及编码.本文介绍一种基于FPGA实现多路串口协议数据接收的方法.
多路串口协议 PCM编码器 FPGA