名稱:MiniZed開發(fā)板實(shí)現(xiàn)串口發(fā)送和接收(代碼在文末付費(fèi)下載)
軟件:VIVADO
語言:Verilog
頂層代碼
module uart_test(
input? ? ? ? ? ? ? ? ? ? ? ? clk,
input? ? ? ? ? ? ? ? ? ? ? ? rst_n,
input? ? ? ? ? ? ? ? ? ? ? ? uart_rx,
input[7:0]? ? ? ? ? ? ? ? ? ?tx_data,
output[7:0]? ? ? ? ? ? ? ? ? rx_data,
output? ? ? ? ? ? ? ? ? ? ? ?uart_tx
);
parameter? ? ? ? ? ? ? ? ? ? ? ? CLK_FRE = 50;//Mhz
wire? ? ? ? ? ? ? ? ? ? ? ? ? ? ?tx_data_valid;
wire? ? ? ? ? ? ? ? ? ? ? ? ? ? ?tx_data_ready;
wire? ? ? ? ? ? ? ? ? ? ? ? ? ? ?rx_data_valid;
wire? ? ? ? ? ? ? ? ? ? ? ? ? ? ?rx_data_ready;
assign rx_data_ready = 1'b1;//always can receive data
assign tx_data_valid = 1'b1;
uart_rx#
(
.CLK_FRE(CLK_FRE),
.BAUD_RATE(9600)
) uart_rx_inst
(
.clk? ? ? ? ? ? ? ? ? ? ? ? (clk? ? ? ? ? ? ? ? ? ? ? ),
.rst_n? ? ? ? ? ? ? ? ? ? ? (rst_n? ? ? ? ? ? ? ? ? ? ),
.rx_data? ? ? ? ? ? ? ? ? ? (rx_data? ? ? ? ? ? ? ? ? ),
.rx_data_valid? ? ? ? ? ? ? (rx_data_valid? ? ? ? ? ? ),
.rx_data_ready? ? ? ? ? ? ? (rx_data_ready? ? ? ? ? ? ),
.rx_pin? ? ? ? ? ? ? ? ? ? ?(uart_rx? ? ? ? ? ? ? ? ? )
);
uart_tx#
(
.CLK_FRE(CLK_FRE),
.BAUD_RATE(9600)
) uart_tx_inst
(
.clk? ? ? ? ? ? ? ? ? ? ? ? (clk? ? ? ? ? ? ? ? ? ? ? ),
.rst_n? ? ? ? ? ? ? ? ? ? ? (rst_n? ? ? ? ? ? ? ? ? ? ),
.tx_data? ? ? ? ? ? ? ? ? ? (tx_data? ? ? ? ? ? ? ? ? ),
.tx_data_valid? ? ? ? ? ? ? (tx_data_valid? ? ? ? ? ? ),
.tx_data_ready? ? ? ? ? ? ? (tx_data_ready? ? ? ? ? ? ),
.tx_pin? ? ? ? ? ? ? ? ? ? ?(uart_tx? ? ? ? ? ? ? ? ? )
);
endmodule
開發(fā)板資料:
constraint.docx
[PRJ-MI1DEV,1-01-04]_Schematic Prints.pdf
MiniZed-HW-UG-v1-0-V1_0.pdf
代碼文件:
點(diǎn)擊鏈接獲取代碼文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=135