Pjm2008 发表于 2022-11-3 10:14:11

用安陆TD软件编写的LED灯程序偶尔正常工作大家有无遇到

本帖最后由 Pjm2008 于 2022-11-3 10:18 编辑

1:LED灯 正常是1S闪烁,但不工作。

module LED_TYPE(
        input RESET,         //复位所有故障信号
        input GCLOCK,      //用于时钟锁存                  
        outputRUN_LED   //指示运行状态
   );
reg    counter;
reg          clk;
parameter    LED_SCK      = 28'd50_000_000;       

assignRUN_LED=clk;
//-----------------------------------------------------------------------
always@(posedge GCLOCK )
begin
   if(!RESET)
   begin
   counter<=0;
   clk<=1'b1;
   end

   if(counter>=(LED_SCK-28'd00_000_001))
   begin
   counter<=0;
   clk<=~clk;
   end
   else
   begin
   counter<=counter+1;
   end   
end   
//-----------------------------------------------------------------------                 
//-----------------------------------------------------------------------       
endmodule
2:我以为是复位出问题把复位信号引出到另一路LED灯上查看复位信号(复位信号为 FPGA的锁相环的锁定信号 我将时钟从50M升到100M   锁定信号1 表示锁定0表示未锁定)
3:这个时候 LED灯又可以正常的工作
这个只是简单还有一些更为奇特的现象 。

wye11083 发表于 2022-11-3 13:51:20

有个选项,io register什么的,关了。安路某些版本工具默认会使能,但是会造成芯片工作不符合预期。我也是有个led显示不正常,调了半天才发现。

Pjm2008 发表于 2022-11-3 15:53:22

看了一批没发现有IO register选项。

Pjm2008 发表于 2022-11-3 18:57:04

input   wire    clk   
input   wire    rst_n
直接在端口上加WIRE来操作 解决这个问题。

页: [1]
查看完整版本: 用安陆TD软件编写的LED灯程序偶尔正常工作大家有无遇到