1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > Verilog实现UART串口收发器数字电路

Verilog实现UART串口收发器数字电路

时间:2018-12-30 06:44:16

相关推荐

Verilog实现UART串口收发器数字电路

阿群的笔记

Verilog实现串口的思路:

节拍生成器:开发板自带晶振频率50MHz,串口波特率≈115200比特/秒,设计一个节拍生成器=16拍/比特,计算节拍生成器的计数最大值=50MHz÷(115200×16)≈27.1;默认不需要奇偶校验位,有限状态机只设计四个状态,分别是:空闲idle、起始位start、数据位data和停止位stop;可以支持n字节硬件收发缓冲区;

参考材料1

《FPGA-Prototyping-By-Verilog-Examples》第8章

代码:

/liuqun/verilog_code_tips/tree/uart/rtl

PDF文件: /downloads735/ebook/2935095/FPGA%20Prototyping%20By%20Verilog%20Examples.pdf

参考材料2

参考材料3

(1)在信号线上共有两种状态,可分别用逻辑1(高电平)和逻辑0(低电平)来区分。在发送器空闲时,数据线应该保持在逻辑高电平状态。(2)起始位(Start Bit):发送器是通过发送起始位而开始一个字符传送,起始位使数据线处于逻辑0状态,提示接受器数据传输即将开始。(3)数据位(Data Bits):起始位之后就是传送数据位。数据位一般为8位一个字节的数据(也有6位、7位的情况),低位(LSB)在前,高位(MSB)在后。(4)校验位(parity Bit):可以认为是一个特殊的数据位。校验位一般用来判断接收的数据位有无错误,一般是奇偶校验。在使用中,该位常常取消。(5)停止位:停止位在最后,用以标志一个字符传送的结束,它对应于逻辑1状态。(6)位时间:即每个位的时间宽度。起始位、数据位、校验位的位宽度是一致的,停止位有0.5位、1位、1.5位格式,一般为1位。(7)帧:从起始位开始到停止位结束的时间间隔称之为一帧。(8)波特率:UART的传送速率,用于说明数据传送的快慢。在串行通信中,数据是按位进行传送的,因此传送速率用每秒钟传送数据位的数目来表示,称之为波特率。如波特率9600=9600bps(位/秒)。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。