UART(串口)收发模块设计
UART(串口)收发模块设计- 02
整体架构回顾
整体结构如下图,整个UART有两个大模块,一个接收模块,一个发送模块。
具体大家可以回顾文章《UART(串口)收发模块设计- 01》。
波特率时钟产生模块
收发模块里面都有一个波特率时钟产生模块BuadRate_set,用于将系统时钟clk进行分频,得到波特率时钟Buad_clk,以控制数据的收发。
端口如下,通过CLK_Period指定当前的clk时钟频率,比如50M,则为50000000。
Buad_Rate为设定的波特率。
主要设计代码如下,通过localparam DIV_PEREM指定分频计数值。
分频计数器为cnt,当enable为高时,cnt开始循环的从0递增到DIV_PEREM。