UART
工程地址:https://github.com/HaHaHaHaHaGe/Planof2019_half/tree/master/Course_Project/FPGA/class05_UART
這是一個迴環測試項目,波特率115200 無校驗 1停止,傳入一個字節回自動回傳同樣的一個字節
硬件結構
開發板:AC620
整體框架
代碼部分
代碼過多更多代碼在github
頂層代碼
module top(
clk,
rst,
tx,
rx,
);
input clk,rst,rx;
output tx;
reg start;
wire busy;
wire [7:0]data;
reg [7:0]data2;
uart_tx uart_tx1(
.clk(clk),
.rst(rst),
.start(start),
.data(data2),
.busy(busy),
.tx(tx)
);
wire irq;
reg clr;
uart_rx uart_rx1(
.clk(clk),
.rst(rst),
.irq(irq),
.data(data),
.rx(rx)
);
reg flag;
always@(posedge clk,negedge rst)
if(!rst) begin
start <= 1'b0;
clr <= 0;
flag <= 0;
end
else
case(flag)
0:
if(irq) begin
flag <= 1;
data2 <= data;
end
else begin
start <= 0;
end
1: begin
start <= 1;
flag <= 0;
end
endcase
endmodule