部分代码如下:
reg[3:0] key_v1;
定义了寄存器key_v1[0]、key_v1[1]、key_v1[2]、key_v1[3]
reg[3:0] key_v2;
定义了寄存器key_v2[0]、key_v2[1]、key_v2[2]、key_v2[3]
always@(posedge sys_clk) begin key_v1 <= ~key_in; end
always@(posedge sys_clk) begin key_v2 <= key_v1; end assign led = key_v2;
代码中key_in定义为4路按钮(input [3:0] key_in),led定义为4路LED指示灯。
以上代码执行原理:
实时把按键的状态通过反相器(非门)取反后,通过两路寄存器送给LED指示灯。即按键值为0,LED引脚输出1;按键值为1,LED引脚输出0。
以上寄存器reg[3:0] key_v1和reg[3:0] key_v2,在FPGA中用触发器来实现:
如下图所示:
其中引脚C为时钟引脚。引脚CE为使能引脚。引脚D为数据输入引脚。引脚Q为数据输出引脚。引脚R接GND,引脚CE接电源。
FPGA之从按键程序到寄存器
最新推荐文章于 2024-07-23 17:20:24 发布