电子文章 | 电子资料下载 | 家电维修 | 维修资料下载 | 加入收藏 | 全站地图
您现在所在位置:电子爱好者电子文章EDA/PLD基于串口通讯的Verilog设计

基于串口通讯的Verilog设计

11-20 00:27:19 | http://www.5idzw.com | EDA/PLD | 人气:382
标签:eda技术,eda技术实用教程,http://www.5idzw.com 基于串口通讯的Verilog设计,http://www.5idzw.com
  end

  //***********发送数据模块

  reg[3:0] state_tx=0;

  always@(posedge txclk or posedge rst)

  begin

  if(rst)

  begin

  dout_ser<=1'bz;

  state_tx<=0;

  txdone=1;

  end

  else

  case(state_tx)

  0:begin

  dout_ser<=dout_buf[0];state_tx<=state_tx+1;txdone=1'b0;end

  1:begin

  dout_ser<=dout_buf[1];state_tx<=state_tx+1;end

  2:begin

  dout_ser<=dout_buf[2];state_tx<=state_tx+1;end

  3:begin

  dout_ser<=dout_buf[3];state_tx<=state_tx+1;end

  4:begin

  dout_ser<=dout_buf[4];state_tx<=state_tx+1;end

  5:begin

  dout_ser<=dout_buf[5];state_tx<=state_tx+1;end

  6:begin

  dout_ser<=dout_buf[6];state_tx<=state_tx+1;end

  7:begin

  dout_ser<=dout_buf[7];state_tx<=state_tx+1;end

  8:begin

  dout_ser<=dout_buf[8];state_tx<=state_tx+1;end

  9:begin

  dout_ser<=dout_buf[9];state_tx<=state_tx+1;end

  endcase

  end

  endmodule

  注:两个频率信号nclk、txclk由相应的分频程序产生。由于篇幅所限未在文中列出。

  FPGA模块接收从RS-485发送过来的串行数据。25位为一个字符。数据的传输速率是700kbps,用四倍于波特率的速率进行采样,这样可以大大降低系统的噪声。数据的串行输出波特率选为11200bps。

  由输入输出波形图可以看出:本段程序实现了对输入数据的有效数据位的提取,并按照一定的波特率进行串行输出。程序中,波特率可以根据需要通过分频程序进行改动。硬件电路搭建简单,程序代码书写容易。数据传输稳定可靠,可以满足串口通信的要求。


上一页  [1] [2] 

,基于串口通讯的Verilog设计
关于《基于串口通讯的Verilog设计》的更多文章