module LED(
CLK50M,
LED
);
input CLK50M;
output LED;
reg [24:0] cnt= 25'h0;
reg LED = 1'b1;
always @ (posedge CLK50M)
begin
if(cnt == 25'h1FFFFFF)
cnt <= 25'h0;
else
cnt <= cnt + 1'b1;
end
always @ (posedge CLK50M)
begin
if(cnt ==25'hFFFFFF)
LED <= ~ LED ;
end
endmodule
一个简单的LED流水灯程序,控制一个LED 的亮灭,程序烧录到板子上,LED一直处于亮的状态,管脚输出2.3V电压,选用的是EP4CE6E22芯片,仅仅焊接了最小系统,包括JTAG与晶振,外接一个LED,下载神马的都是正常的,仅进行单独的亮灭,也就是管脚输出0或者1可以实现,设计CNT进行延时亮灭就无法实现,求大神指导
已退回3积分
2016-6-15 09:48:29
你这个灯是低电平亮还是高电平呢?看你的程序应该有问题
你这个灯是低电平亮还是高电平呢?看你的程序应该有问题
举报
2016-6-15 17:23:57
是不是时间短了啊, 把计数器的位宽设置的更大一点,达到s级的亮灭切换时间再看一下呢。
是不是时间短了啊, 把计数器的位宽设置的更大一点,达到s级的亮灭切换时间再看一下呢。
举报
2016-6-17 09:39:39
仿真是正确的,晶振应该是正确的,用万用表查过晶振的输出,是输入电压的一半,晶振有问题,下载应该不成功吧,回头用示波器查查晶振吧
仿真是正确的,晶振应该是正确的,用万用表查过晶振的输出,是输入电压的一半,晶振有问题,下载应该不成功吧,回头用示波器查查晶振吧
举报
2016-6-17 09:43:47
就是直接在FPGA的46引脚外面对地焊接了一个LED,单独让46管脚输出高电平跟低电平,LED是可以亮灭的,上面的这个程序运行起来一直是亮的,可能是REG LED的值无法改变吧,不太清楚什么原因
就是直接在FPGA的46引脚外面对地焊接了一个LED,单独让46管脚输出高电平跟低电平,LED是可以亮灭的,上面的这个程序运行起来一直是亮的,可能是REG LED的值无法改变吧,不太清楚什么原因
举报
2016-6-20 17:07:58
cnt == 25'h1FFFFFF 改成cnt >= 25'h1FFFFFF 两处都改 试试
cnt == 25'h1FFFFFF 改成cnt >= 25'h1FFFFFF 两处都改 试试
举报
2016-6-20 17:09:14
如果占空比是50% 用电压表测的电压肯定是一半,晶振没问题
如果占空比是50% 用电压表测的电压肯定是一半,晶振没问题
举报