wk979339689

串口接收模块

0
阅读(1196)

rx_module模块由detect_module,rx_bps_module,rx_control_module三个模块组成。detect_module模块链接RX_Pin_In 判断一帧数据的第0位,然后产生一个高脉冲H2L_Sig给模块rx_control_module表示一帧数据接收工作已经开始。rx_bps_module 模块是产生波特率定时的功能模块。当rx_control_module拉高Count_Sig, bps_module经BPS_Clk对 rx_control_module产生定时。rx_control_module是核心控制模块。针对串口的配置主要是1帧11位的数据,重视八位数据位,无视起始位,校验位和结束位。当RX_En_Sig 拉高,这个模块就开始工作,它将采集来自 RX_Pin_In 的数据,当完成一帧数据接收的时候,就会产生一个高脉冲给 RX_Done_Sig。


detect_module模块

该模块主要检测电平由高变低 当检测到电平由高变低输出一个高脉冲


rx_bps_module模块

传输一位数据的时间1/9600,n=(1/9600)/(1/50M)=5208



rx_control_noudle

rx_control_module1.jpg

rx_control_module2.png

rx_control_module_tb1.png

rx_control_module_tb2.jpg

RX_En_Sig 拉高,模块工作。 iscnt 标志寄存器,为了使能 rx_bps_module 输出采集定时信号。当 rx_control_module 模块被使能,该模块就会处于就绪状态,一旦 detect_module 检查到由高变低的电平变化,会使步骤cnt进入第0位采集,然而 iscnt 标志寄存器同时也会被设置为逻辑1, rx_bps_module 便会开始产生波特率的定时。

rx_control_module仿真波形.jpg



rx_module模块

rx_module .png


扩展图

扩展图.png


Baidu
map