【高云GW5AT-LV60 开发套件试用体验】点亮LED - FPGA开发者技术社区 - 电子技术论坛 - 广受欢迎的专业电子论坛
分享 收藏 返回

qiushi07 关注 私信
[文章]

【高云GW5AT-LV60 开发套件试用体验】点亮LED

  • 目标:控制核心板用户LED亮灭,LED进行闪烁交替。

代码的主要组成部分和功能:

  1. 时钟模块 :使用 PLL 将 25MHz 时钟转换为 100MHz 时钟
  2. 复位控制 :使用 PLL 的锁定信号作为系统复位
  3. 计数器模块 :使用 27 位计数器产生延时
  4. 输出控制 :将计数器的最高位输出到测试 IO

代码如下:

module FPGA_G60_Top

(

input clk_25M,

output test_io

);

wire reset = 1'b0;

wire lock;

wire clk_100M;

PLL_25_100 u_PLL_25_100

(

.clkin(clk_25M), //input clkin

.reset(reset), //input reset

.lock(lock), //output lock

.clkout0(clk_100M) //output clkout0

);

wire sys_rst_n = lock;

reg [26:0] delay_cnt;

always@(posedge clk_100M or negedge sys_rst_n)

begin

if(!sys_rst_n)

delay_cnt <= 0;

else

delay_cnt <= delay_cnt + 1'b1;

end

assign test_io = delay_cnt[26];

endmodule

这段代码实现了一个简单的功能,通过计数器产生一个低频信号,用于测试 FPGA 的基本功能。计数器的最高位(26 位)在 100MHz 时钟下的翻转频率约为:
100MHz/2^27 = 0.754Hz

即大约 1.34 秒翻转一次,测试 IO 会呈现约 1.34 秒的闪烁频率。

效果如下:

LED测试

更多回帖

×
发帖