1. UART串口简介
串口是“串行接口”的简称,即选用串行通讯方法的接口。串行通讯将数据字节分红一位一位的方法在一条数据线上逐一传送,其特点是通讯线路简略,但传输速度较慢。
因而串口广泛运用于嵌入式、工业操控等范畴中对数据传输速度要求不高的场合。本试验咱们将运用FPGA开发板上的UART串口完结上位机与FPGA的通讯。
串行通讯分为两种方法:同步串行通讯和异步串行通讯。
同步串行通讯需求通讯两边在同一时钟的操控下,同步传输数据;
异步串行通讯是指通讯两边运用各自的时钟操控数据的发送和接纳进程。
UART是一种选用异步串行通讯方法的通用异步收发传输器(universal asynchronous receiver-transmitter),它在发送数据时将并行数据转化成串行数据来传输,在接纳数据时将接纳到的串行数据转化成并行数据。
UART串口通讯需求两根信号线来完结,一根用于串口发送,别的一根担任串口接纳。
UART在发送或接纳进程中的一帧数据由4部分组成,开端位、数据位、奇偶校验位和中止位,如图所示。
其间,开端位标志着一帧数据的开端,中止位标志着一帧数据的完毕,数据位是一帧数据中的有用数据。
校验位分为奇校验和偶校验,用于查验数据在传输进程中是否犯错。
奇校验时,发送方应使数据位中1的个数与校验位中1的个数之和为奇数;
接纳方在接纳数据时,对1的个数进行查看,若不为奇数,则阐明数据在传输进程中出了过失。
相同,偶校验则查看1的个数是否为偶数。
异步串行通讯数据格式
UART通讯进程中的数据格式及传输速率是可设置的,为了正确的通讯,收发两边应约好并遵从相同的设置。
数据位可挑选为5、6、7、8位,其间8位数据位是最常用的,在实践运用中一般都挑选8位数据位;
校验位可挑选奇校验、偶校验或许无校验位;
中止位可挑选1位(默许),1.5或2位。
串口通讯的速率用波特率表明,它表明每秒传输二进制数据的位数,单位是bps(位/秒),常用的波特率有9600、19200、38400、57600以及115200等。
在设置好数据格式及传输速率之后,UART担任完结数据的串并转化,而信号的传输则由外部驱动电路完结。
电信号的传输进程有着不同的电平规范和接口规范,针对异步串行通讯的接口规范有RS232、RS422、RS485等,它们界说了接口不同的电气特性,如RS-232是单端输入输出,而RS-422/485为差分输入输出等。
RS232接口规范呈现较早,可完结全双工工作方法,即数据发送和接纳能够一起进行。
在传输间隔较短时(不超越15m),RS232是串行通讯最常用的接口规范,本章首要介绍针对RS-232规范的UART串口通讯。
RS-232规范的串口最常见的接口类型为DB9,款式如图所示,工业操控范畴中用到的工控机一般都装备多个串口,许多旧式台式机也都配有串口。
可是笔记本电脑以及较新一点的台式机都没有串口,它们一般经过USB转串口线来完结与外部设备的串口通讯。
DB9接口
USB串口线
DB9接口界说以及各引脚功用阐明如下图所示,咱们一般只用到其间的2(RXD)、3(TXD)、5(GND)引脚,其他引脚在一般串口形式下一般不运用,假如我们想了解,能够自行百度下。
DB9接口界说
2. 试验使命
上位机经过串口调试帮手发送数据给FPGA,FPGA经过串口接纳数据并将接纳到的数据发送给上位机,完结串口数据环回。