• 方案介紹
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

Basys3開發(fā)板實現(xiàn)UART串口發(fā)送和接收verilog

加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

Basys3開發(fā)板實現(xiàn)串口發(fā)送和接收verilog

名稱:Basys3開發(fā)板實現(xiàn)串口發(fā)送和接收(代碼在文末付費下載)

軟件:VIVADO

語言:Verilog

要求:Basys3開發(fā)板實現(xiàn)串口發(fā)送和接收,內(nèi)部實現(xiàn)數(shù)據(jù)自動遞增發(fā)送和接收

FPGA代碼Verilog/VHDL代碼資源下載:www.hdlcode.com

本代碼已在Basys3開發(fā)板驗證,開發(fā)板如下,其他開發(fā)板可以修改管腳適配:

basys3開發(fā)板.png

工程文件

2a320e01-3cc1-471a-b679-85e7ec18fd1d.png

程序文件

ac1ed9c4-97b4-485c-9d41-7b9c29b50c0d.png

程序編譯

80d5f70c-a26e-4b41-9c95-d163a24b952e.png

RTL圖

4d5ea1a3-143a-4f5f-b78c-a4f5a2b6221a.png

管腳分配

f53be627-6284-4e5c-a6a7-e90b6e705423.png

頂層模塊

module uart_top

(

input clk_100m,

input UART_rx,//串口輸入

input reset,? ?//復(fù)位信號 高有效

output UART_tx//串口輸出

);

wire data_receive_en;? ? ? ?//接收完成指示位

wire [7:0] data_receive;? ? //接收到的數(shù)據(jù)

wire [7:0]uart_tx_data;? ? ?//要發(fā)送的數(shù)據(jù)

wire uart_tx_en;? ? ? ? ? ? //發(fā)送使能指示位

 

//計算模塊

num_adder num_adder_top(

.clk(clk_100m),

.rst(reset),

.adder_en(data_receive_en),? ? ?//計算使能信號

.data_in(data_receive),

.data_out(uart_tx_data),

. adder_done(uart_tx_en)? ?//計算結(jié)束信號

);

//串口接收模塊

uart_rx_module uart_rx_module_top

(

.clk(clk_100m),

.rst_p(reset),

.uart_rx(UART_rx),

.data_receive_en(data_receive_en),

.data_receive(data_receive)

);

//串口發(fā)送模塊

uart_tx_module uart_tx_module_top(

.clk(clk_100m),

.rst_p(reset),

.send_en_data(uart_tx_data),

.send_en(uart_tx_en),

.uart_tx(UART_tx)

);

點擊鏈接獲取代碼文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=134

相關(guān)推薦