心染红尘 发表于 2016-3-11 17:22:38

Verilog 怎么能接收4字节的数据,下面程序能接收一个字节

Verilog 怎么能接收4个字节的数据,下面程序只能接收一个字节的,如果接收四字节,可以怎样修改代码
always @(posedge clk or negedge rst_n)
if(!rst_n)begin
               stop<=0;
               cnt<=0;
               state<=0;
               data_temp<=0;
               data_r<=0;
          end
else if(clk_bps&RI)case (state)
                  0:begin
                      state<=1;
                      cnt<=0;
                      stop<=1;
                      end
                  1:begin
                      if(cnt!=8)
                           begin
                           cnt<=cnt+1'b1;
                           data_temp<=data_temp>>1;
                           data_temp<=rs232_rx;
                           end
                      else
                           begin
                           state<=0;
                           stop<=0;
                           cnt<=0;
                           data_r<=data_temp;
                           end               
                      end
                  default: begin
                           stop<=0;
                           cnt<=0;
                           state<=0;
                           data_temp<=0;
                           data_r<=0;
                           end
                endcase

                       
assign rx_data=data_r;

NJ8888 发表于 2016-3-11 19:02:55

写状态机,FPGA中开一个FIFO,串行输入的8位一个串转并写入FIFO

runapp 发表于 2016-3-11 20:45:26

8改32,7改31……这么简单

心染红尘 发表于 2016-3-11 21:10:25

runapp 发表于 2016-3-11 20:45
8改32,7改31……这么简单

每帧数据中有起始位,可能有奇偶校验位,停止位,这样做不对吧

runapp 发表于 2016-3-11 21:46:32

心染红尘 发表于 2016-3-11 21:10
每帧数据中有起始位,可能有奇偶校验位,停止位,这样做不对吧

0改0,8,16,24
页: [1]
查看完整版本: Verilog 怎么能接收4字节的数据,下面程序能接收一个字节