uart(串口)可以用于数据通信,软硬件调试和print调试信息,但是它的传输速率比较慢,原因是它的通信原理和通信介质共同所致,虽然它的缺点很多,但是也不影响它被使用,它是比较常见的外设,尤其是在SOC设计中,本节介绍它的设计过程中的模块。本节的图片均来自本人的亲自截取。
方法/步骤
1
接口部分,中定义一些寄存器,如控制寄存器(control_reg),包括波特率的设置、奇偶校验位设置,bits数目的设置,停止位的设置等;状态寄存器(status_reg)包括奇偶校验错误状态,中断状态,发送接收fifo空满状态,CRC错误状态等;数据寄存器(data_reg)包括发送数据和接收数据。
2
输出缓存部分,用于缓存待发送的数据,关于它的大小,要根据发送端的吞吐率和uart的速率进行计算,然后给出一个比较合理的值;
3
输入缓存部分,用于缓存uart_rx接收的的数据,关于它的大小,要根据接收端的吞吐率和uart的速率进行计算,然后给出一个比较合理的值
4
发送状态机部分,用于中取一个字节,然后按照格式{开始位,数据位(位数可变),奇偶校验位,停止位}(有些位可以选择),在uart_baud的控制下一个一个bit的发送出去。
5
接收状态机,用于接收一个一个bit,然后剥去起始位,奇偶校验位停止位,组成一个字节,然后存入缓存部分。
上一篇:吃火锅容易饱怎么办
下一篇:DCS通讯网络的构成部分及其特性