shockware.txt

来自「VHDL 波形防止抖动程序,学习试验材料」· 文本 代码 · 共 27 行

TXT
27 行
字号
这是一个防斗程序,可以详细解释下吗,我看不懂
library ieee;
use ieee.std_logic_1164.all;

entity dou is
port(din,clk:in std_logic;
        doutut std_logic);
end dou;

architecture beha of dou is
signal x,y:std_logic;
begin
process(clk)
begin
  if clk'event and clk='1' then
         x<=din;
         y<=x;
end if;
dout<=x and (not y);
end process;
end beha; 

这实际上是一个滤波器,也有防抖的作用,通过两级的移位寄存器实现
假设din输入的信号中间有跳变的时候
则x和y的值会不一样,
如果x=0,y = 1,则dout= 0,也就是把din上的高电平毛刺滤除了;
如果x=1,y=0,则dout=1,也就是把din上的低电平毛刺滤出了。

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?