c语言sscanf函数的用法是什么
360
2022-11-17
基于FPGA的UART串口通信实验
串行通信分为两种方式:同步串行通信和异步串行通信。
同步串行通信需要通信双方在同一时钟的控制下,同步传输数据;
UART在发送或接收过程中的一帧数据由4部分组成,起始位、数据位、奇偶校验位和停止位,如图所示。
其中,起始位标志着一帧数据的开始,停止位标志着一帧数据的结束,数据位是一帧数据中的有效数据。
奇校验时,发送方应使数据位中1的个数与校验位中1的个数之和为奇数;
接收方在接收数据时,对1的个数进行检查,若不为奇数,则说明数据在传输过程中出了差错。
同样,偶校验则检查1的个数是否为偶数。
异步串行通信数据格式
UART通信过程中的数据格式及传输速率是可设置的,为了正确的通信,收发双方应约定并遵循同样的设置。
数据位可选择为5、6、7、8位,其中8位数据位是最常用的,在实际应用中一般都选择8位数据位;
校验位可选择奇校验、偶校验或者无校验位;
停止位可选择1位(默认),1.5或2位。
串口通信的速率用波特率表示,它表示每秒传输二进制数据的位数,单位是bps(位/秒),常用的波特率有9600、19200、38400、57600以及115200等。
RS232接口标准出现较早,可实现全双工工作方式,即数据发送和接收可以同时进行。
在传输距离较短时(不超过15m),RS232是串行通信最常用的接口标准,本章主要介绍针对RS-232标准的UART串口通信。
RS-232标准的串口最常见的接口类型为DB9,样式如图所示,工业控制领域中用到的工控机一般都配备多个串口,很多老式台式机也都配有串口。
DB9接口
USB串口线
DB9接口定义以及各引脚功能说明如下图所示,我们一般只用到其中的2(RXD)、3(TXD)、5(GND)引脚,其他引脚在普通串口模式下一般不使用,如果大家想了解,可以自行百度下。
DB9接口定义
2. 实验任务
上位机通过串口调试助手发送数据给FPGA,FPGA通过串口接收数据并将接收到的数据发送给上位机,完成串口数据环回。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~