FPGA之UART(一)

UART( Universal Asynchronous Receiver/Transmitter)指通用异步收发器。UART电平有TTL电平和RS232电平。TTL电平一般以3.3V居多。RS232是负电平逻辑,+5V—+12V为低电平,而-12V—-5V为高电平。然而FPGA引脚电平一般为TTL电平或者COMS电平,UART外接电平为RS232电平,这就需要将TTL转换为RS232电平的电平转换芯片,如MAX3232,MAX232等。有的电路还用UART转USB芯片,如CP2102、CH340等。
UART通讯协议分析如下:
UART通讯协议一般包括起始位、数据位、校验位和停止位。如下图所示:
在这里插入图片描述
一帧数据从一个低位起始位开始。数据位可以是7位也可以是8位。有一个可用的数据位,一个或者几个高位停止位。
如下分析uart_tx.v代码:
module uart_tx
#(
parameter CLK_FRE = 50,
parameter BAUD_RATE = 115200
)
(
input clk,
input rst_n,
input[7:0] tx_data,
input tx_data_valid,
output reg
tx_data_ready,
output tx_pin
);
模块uart_tx说明如下:
CLK_FRE 代表系统设置时钟。
BAUD_RATE表示UART通讯波特率。
clk表示输入时钟引脚。
rst_n表示复位

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值