打印

如何处理串口接收时的开始信号?疑惑中

[复制链接]
1988|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lxc806705|  楼主 | 2011-5-23 09:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
想用verilog做UART,看了网上的一些程序,发现对他们如何处理开始的第一个低电平还是很迷糊。我现在的想法是这样,大家帮看一下可行么?
input RX; //串口接收线
input RI; //串口忙信号指示
output start;//开始信号输出,指示串口数据即将到达,准备接收8位数据

RI是这样的,当串口处于空闲状态时,Ri为1;当串口开始接收数据时,RI为0,当接收到停止位时,RI置1,这样的话就保证了一帧的接收中start不会多次置1,而只在最开始到来的低电平置1,从而识别了串口传输的起始位。

但是这样的话RI相当于从后面的数据处理模块反馈到了start输出的这个模块,这2个模块都是时序逻辑的,这样会不会有问题?

或者根本就不需要这样处理,请高手指教

相关帖子

沙发
sxhhhjicbb| | 2011-5-23 19:59 | 只看该作者
状态机的问题,10位的UART共11个状态,平时处在idle中.起始位一来.就跳到第一个状态,等待BPS的定时时间到.

使用特权

评论回复
板凳
lxc806705|  楼主 | 2011-5-24 08:31 | 只看该作者
状态机的问题,10位的UART共11个状态,平时处在idle中.起始位一来.就跳到第一个状态,等待BPS的定时时间到.
sxhhhjicbb 发表于 2011-5-23 19:59

哦,职业我有些理解了

使用特权

评论回复
地板
vxxw| | 2011-7-13 09:54 | 只看该作者
用状态机

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

154

帖子

1

粉丝