请问如何用fpga读取外部传来的信号,控制小灯点亮?

2019-07-15 20:41发布

最近学校进行项目设计,我们的设计中有一部分是利用小型的光电传感器(样式如下图),
利用学校所发的开发板上外接端口的3.3v和gnd端口作为传感器的电源,信号引脚接到另一个外接端口上,用来读取传感器发出的信号。当有障碍物接近时,信号输出为低,反之则高。当信号为高时,板子上的一个led小灯点亮。


问题是,无论信号如何变化,小灯始终没有反应,我的代码如下:

使用的软件是vivado(学校硬性要求),百度了很多帖子,没有找到类似的代码,

请各位大神指教,是我的代码本身就有问题还是其他的原因,谢谢!
  1. module gm(
  2.     input clk,
  3.     input cgq,
  4.     output reg led
  5.     );
  6.     reg cgq_dly;
  7.     wire cgq_vld;
  8.    
  9.     always @(posedge clk)
  10.         cgq_dly <= cgq;
  11.     assign cgq_vld = cgq & ~cgq_dly;  //捕捉尖端脉冲信号
  12.    
  13.     always @(posedge clk)
  14.         if(cgq_vld)    //信号为高时,小灯点亮,反之则灭
  15.             led <= 1'b1;
  16.         else led <= 1'b0;
  17. endmodule
复制代码
超级截屏_20181222_084745.png
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。