FPGA模拟串口自收发-Verilog.docVIP

  • 2
  • 0
  • 约7.44千字
  • 约 7页
  • 2019-06-24 发布于河北
  • 举报
FPGA模拟串口自收发-Verilog

实现功能,FPGA里实现从PC串口接收数据,接着把接收到的数据发回去。波特率可选9600bps,可调 1bit起始位,8bit数据,1bit停止位,无校验位。 参考《VHDL硬件描述语言与和数字逻辑电路设计》 模块介绍如下 一、串口数据接收模块:特别注意一个数据位占4个clk_bps_4时钟周期。 串口数据接收控制 当数据接收端rxd出现起始位低电平,启动接收控制计数器rx_cnt,置位为8’b0111_00(28), 即rx_cnt[5:2]== 4’b0111(7),rx_cnt[1:0] == 2b00(0);一个计数周期开始,伴随clk_bps_4, rx_cnt加1(每一个数据位加4) 串口接收数据移位控制(关键采样点的选取) 每当rx_cnt[1:0] == 2b01,为了保证在rxd一位数据靠近中间位置采样;每4个clk_bps_4, rx_cnt[5:2]加1当rx_cnt[5:2] == 8,9,10….15,完成8位的数据采样,串并变换 置位标志位rxdF数据接收标志 rxd出现起始位低电平, rxdF置1,表示数据接收开始;当rx_cnt计数到8’b1111_11(63),数据接收完成, rxdF置0 置位标志位rdFULL;//接收锁存器满标志 空闲时rdFULL置0,当数据接收完成,数据锁存到do_latch,同时 rdFULL置1,向上层模块

文档评论(0)

1亿VIP精品文档

相关文档