一.轻触按键:向开关的操作方向施加压力使内部电路闭 合接通,当撤销压力时开关断开,其内部结构是靠金属弹片受力后发生形变来实现通断的;第二种是自锁按键,自锁按键第一次按下后保持接通,即自锁,第二次按下后,开关断开,同时开关按钮 弹出来.
实验任务:本节实验任务是使用底板上的 PL_KEY0 和 PL_KEY1 按键来控制底板上的 PL_LED0 和 PL_LED1 两个LED 的闪烁方式。没有按键按下时,两个 LED 保持常亮;如果按键 0 按下,则两个 LED 交替闪烁;如果 按键 1 按下,则两个 LED 同时闪烁
由原理图:key未按下为1,按下为0.
二.程序设计框图
设计思路:
计数器对 50MHz 时钟进行计数,从而达到计时的目的。计数器在每次计时到 0.5 秒的 时候,就改变 LED 的显示状态,然后清零并重新开始计数。然后根据两个按键(KEY0 和 KEY1)的状态,在不同的 LED 状态下,分别设置 LED 的显示模式(是 同时闪烁,或者交替闪烁)
led_flag 每隔0.5s改变状态,再根据按键状态给led赋值
三.代码 parameter CNT_MAX = 25'd2500_0000;//参数定义的用法。注意case语句的用法 led_flag的作用:计数0.5s作为状态切换
modelsim仿真出现的问题:
按键只有11 01两种状态,1丢失,但是在tb代码中按键变化2为11 10 11 01