有关状态机的uart通信问题

2019-07-16 00:22发布

                     
  1. if(clk_bps)        begin
  2.                                         num <= num+1'b1;
  3.                                         case (num)
  4.                                                 4'd0: rs232_tx_r <= 1'b0;         //<b>发送起始位</b>
  5.                                                 4'd1: rs232_tx_r <= tx_data[0];        //发送bit0
  6.                                                 4'd2: rs232_tx_r <= tx_data[1];        //发送bit1
  7.                                                 4'd3: rs232_tx_r <= tx_data[2];        //发送bit2
  8.                                                 4'd4: rs232_tx_r <= tx_data[3];        //发送bit3
  9.                                                 4'd5: rs232_tx_r <= tx_data[4];        //发送bit4
  10.                                                 4'd6: rs232_tx_r <= tx_data[5];        //发送bit5
  11.                                                 4'd7: rs232_tx_r <= tx_data[6];        //发送bit6
  12.                                                 4'd8: rs232_tx_r <= tx_data[7];        //发送bit7
  13.                                                 4'd9: rs232_tx_r <= 1'b1;        //发送结束位
  14.                                                  default: rs232_tx_r <= 1'b1;
  15.                                                 endcase
复制代码

这个特权同学的一段代码,看代码感觉没有发送起始位,但是仿真时通过的。哪位大神指导下
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
12条回答
小梅哥
1楼-- · 2019-07-16 03:44
 精彩回答 2  元偷偷看……
闪亮的马路
2楼-- · 2019-07-16 09:18
问题在这里,上面的程序是不会出现发送0的吧?begin...end里面顺序执行,应该是num++,直接跳过发送0了吧
闪亮的马路
3楼-- · 2019-07-16 12:50
小梅哥 发表于 2014-11-16 21:01
亲,第四行,当num==0的时候,发送了数据位0,那么根据UART的协议,该位即为起始位啊。特权在注释中也写得 ...

问题在这里,上面的程序是不会出现发送0的吧?begin...end里面顺序执行,应该是num++,直接跳过发送0了吧
小梅哥
4楼-- · 2019-07-16 18:07
这个就是时序逻辑的特点了,如果你不能理解,就请参看Verilog语法书中关于时序逻辑非阻塞赋值语句中的相关讲解。明确告诉你,这个是会执行的,这与C语言有本质的区别。
闪亮的马路
5楼-- · 2019-07-16 18:14
小梅哥 发表于 2014-11-16 22:09
这个就是时序逻辑的特点了,如果你不能理解,就请参看Verilog语法书中关于时序逻辑非阻塞赋值语句中的相关 ...

非阻塞赋值,已经明白了,谢了
bddukai
6楼-- · 2019-07-16 18:42
 精彩回答 2  元偷偷看……

一周热门 更多>