其他分享
首页 > 其他分享> > FPGA 学习笔记一: 检测边沿触发

FPGA 学习笔记一: 检测边沿触发

作者:互联网

  本文主要涉及Xilinx版的FPGA的边沿触发检测,通过锁存一个时钟节拍, 比较前后两个检测状态, 判定是否产生上升沿或者下降沿,可用于按键检测等,具体如下:

  检测上升沿:

  reg KEY_SCAN;          

       reg KEY_SCAN_REG;

       always@(posedge CLK)       // 锁存一个时钟节拍,KEY_SCAN_REG是KEY_SCAN的上一个状态

          KEY_SCAN_REG <= KEY_SCAN;

   wire FLAG =(~KEY_SCAN_REG) & KEY_SCAN; 

//  真值表:

~KEY_SCAN_REG

KEY_SCAN

FLAG

0

0

0

0

1

0

1

0

0

1

1

1

 

  检测下降沿:

  reg KEY_SCAN;          

       reg KEY_SCAN_REG;

       always@(posedge CLK)       // 锁存一个时钟节拍,KEY_SCAN_REG是KEY_SCAN的上一个状态

          KEY_SCAN_REG <= KEY_SCAN;

  wire FLAG = KEY_SCAN_REG & (~KEY_SCAN); 

//  真值表:

KEY_SCAN_REG

~KEY_SCAN

FLAG

0

0

0

0

1

0

1

0

0

1

1

1

 

  其中,检测到边沿触发, FLAG=1为有效,作为后期操作的标志位。

 

标签:边沿,FPGA,SCAN,检测,笔记,reg,FLAG,KEY,REG
来源: https://www.cnblogs.com/fireber/p/15852167.html