【发布时间】:2015-09-04 20:58:43
【问题描述】:
我的 Lattice iCE40-HX8K 板有以下 verilog 代码:
uart.v:
module uart(input clk, output TXD);
reg [3:0] count;
reg [9:0] data;
reg z;
initial begin
data[9:0] = 10'b1000000000; // Startbit = 1, Stopbit = 0
z = 0;
end
always@(posedge clk)
begin
if(count == 1250) //9600x per Second (1250) = Baudrate
begin
count <= 0;
TXD = data[z];
z = z + 1;
if(z == 10)
begin
z = 0;
end
else
begin
end
end
else
begin
count <= count + 1;
end
end
endmodule
为了接收 UART 数据,我在 Ubuntu 14.04 下使用 gtkterm。 我已将 gtkterm 中的波特率设置为 9600。 如果我现在用每次编程时收到的代码对我的 FPGA 进行编程 十六进制“00”(与 8 个使用位无关)。
谁能告诉我哪里出了问题?
感谢您的支持。
【问题讨论】: