文件名称:FPGA-UART实验例程.rar
文件大小:379KB
文件格式:RAR
更新时间:2022-11-18 04:57:33
FPGA Verilog 串口
ACTEL FPGA上的Verilog程序实现了底层的串口程序,如果你用其他品牌的FPGA可以借鉴Source\Fusion_UART下的三个.V文件,实际使用只需要更改驶入时钟频率就行,代码没有用IP核,都是Verilog实现的,对初学者非常适合,如下部分代码。 always@(posedge clk) begin if(clk_equ) begin if(!StartF) //是否处于接收状态 begin if(!RXD) begin count = 4'b0; //复位计数器 count_bit = 4'b0; RI = 1'b0; StartF = 1'b1; end else RI = 1'b1; end else begin count = count+1'b1; //位接收状态加1 if(count==4'd6) bit_collect[0] = RXD; //数据采集 if(count==4'd7) bit_collect[1] = RXD; //数据采集 if(count==4'd8) begin bit_collect[2] = RXD; //数据采集 UartBuff[count_bit] = bit4; count_bit = count_bit+1'b1; //位计数器加1 if((count_bit==4'd1)&&(UartBuff[0]==1'b1)) //判断开始位是否为0 begin StartF = 1'b0; //标志开始接收 end RI = 1'b0; //中断标志位低 end if(count_bit>4'd9) //检测是否接收结束 begin RI = 1'b1; //中断标志为高标志转换结束 StartF = 1'b0; end end end end
【文件预览】:
UART实验例程
----Project()
--------Fusion_UART()
----Source()
--------Fusion_UART()