国产FPGA安路 高集成低功耗SF1系列FPSoC新品测评【使用SF1 uart IP 核通信】
[复制链接]
上期我们使用了mcu中的uart通信,本期我们使用SF1的uart ip核进行电脑与fpga的通信实验。
首先新建TD工程,在ip generator中选择uart,修改输入时钟频率为25MHz,波特率115200,数据位8位,停止位1位,如下图所示
顶层代码如下,功能是当fpga接收的数据为8‘h32时,向电脑串口发送8’hf0:
module uart_top(
input clk,
input rst_n,
input rxd,
output txd
);
wire [7:0] tx_data;
wire [7:0] rx_data;
wire rx_vld;
wire tx_en;
uart_interface uart_interface_u1(
.clk(clk),
.rst_n(rst_n),
.rxd(rxd),
.tx_data(tx_data),
.tx_en(tx_en),
.rx_data(rx_data),
.rx_err(),
.rx_vld(),
.tx_rdy(),
.txd(txd)
);
assign tx_data = 8'hf0;
assign tx_en = rx_data==8'h32 ? 1'b1 : 1'b0;
endmodule
结果如下:
但是在实验中遇到一个问题,就是不管fpga发送的8位数据的最高位是0还是1,在电脑接收到的8位数据的最高位总是1,比如发送8‘h01,电脑显示接收到的数据为 81(16进制)。
希望得到同行点播。
|