verilog实现串口功能

内核的主要代码位于rtl子目录中。 uart_rx.v和uart_tx.v文件是实际的实现,uart.v只是实例化这两个模块并建立了两个内部连接。 UART发送器和接收器均使用单个发送或接收引脚。这些模块采用一个参数DATA_WIDTH,该参数指定数据总线的宽度和通信的实际数据字的长度。 8位接口的默认值为8。

预览截图

应用介绍

内核的主要代码位于rtl子目录中。 uart_rx.v和uart_tx.v文件是实际的实现,uart.v只是实例化这两个模块并建立了两个内部连接。

UART发送器和接收器均使用单个发送或接收引脚。这些模块采用一个参数DATA_WIDTH,该参数指定数据总线的宽度和通信的实际数据字的长度。 8位接口的默认值为8。预分频输入决定数据速率-应将其设置为Fclk /(波特* 8)。尽管它不是内部缓冲的,但它是输入而不是参数,因此可以在运行时更改它,因此应小心避免损坏数据。用户设计的主要接口是AXI4-Stream接口,由tdata,tvalid和tready信号组成。当tvalid为高时,tdata被视为有效。仅当tready信号为高时,目的地才会接受数据。仅当tvalid和tready都很高时,数据才从源传输到目标,否则总线将停止。

当进行操作时,两个接口都呈现高电平的“忙”信号。接收器还显示溢出错误和帧错误选通输出。如果在接收另一个字之前未读取当前tdata输出寄存器中的数据字,则将从overrun_error发出单个周期脉冲,并丢弃该字。如果接收器未获得正确电平的停止位,则将从frame_error输出中发出单个脉冲,并丢弃接收到的字。

文件列表(部分)

名称 大小 修改日期
vivado.mk1.19 KB2019-04-04
Makefile0.40 KB2019-04-04
fpga.xdc0.70 KB2019-04-04
uart0.01 KB2019-04-04
Makefile0.24 KB2019-04-04
debounce_switch.v1.14 KB2019-04-04
fpga.v1.69 KB2019-04-04
fpga_core.v1.48 KB2019-04-04
sync_reset.v0.93 KB2019-04-04
sync_signal.v0.98 KB2019-04-04
xilinx.mk2.23 KB2019-04-04
Makefile0.42 KB2019-04-04
fpga.ucf2.63 KB2019-04-04
uart0.01 KB2019-04-04
Makefile0.24 KB2019-04-04
debounce_switch.v1.14 KB2019-04-04
fpga.v1.66 KB2019-04-04
fpga_core.v1.48 KB2019-04-04
sync_reset.v0.93 KB2019-04-04
sync_signal.v0.98 KB2019-04-04
xilinx.mk2.23 KB2019-04-04
Makefile0.46 KB2019-04-04
fpga.ucf1.23 KB2019-04-04
uart0.01 KB2019-04-04
Makefile0.24 KB2019-04-04
debounce_switch.v1.14 KB2019-04-04
fpga.v1.96 KB2019-04-04
fpga_core.v1.54 KB2019-04-04
sync_reset.v0.93 KB2019-04-04
sync_signal.v0.98 KB2019-04-04

立即下载

相关下载

[verilog实现串口功能] 内核的主要代码位于rtl子目录中。 uart_rx.v和uart_tx.v文件是实际的实现,uart.v只是实例化这两个模块并建立了两个内部连接。 UART发送器和接收器均使用单个发送或接收引脚。这些模块采用一个参数DATA_WIDTH,该参数指定数据总线的宽度和通信的实际数据字的长度。 8位接口的默认值为8。
[Verilog UART模型] 此项目是Verilog UART模型。注意事项:波特率模块采样脉冲式分频;接收模块仅在一个时刻采样,若需要考虑误码率可在状态机里插入0-1计数器。本人只展示了一部分代码,如果想详细的了解,请点击下方链接下载。

评论列表 共有 0 条评论

暂无评论

微信捐赠

微信扫一扫体验

立即
上传
发表
评论
返回
顶部