扫一扫,分享给好友
一、实验目的
由 USER_BUTTON1 按键输入,切换 USER_LED1~ USER_LED8 的输出效果。
二、实验原理
实现框架如下:
(1)顶层实现按键切换 LED 的流水灯状态;
(2)需要设计一个输入控制模块及一个输出控制模块;
这个实验带大家将多个模块整合成为一个工程,涉及到的知识点有子模块设计、模块例化;子模块的设计主要是依据功能定位,确定输入输出,再做具体的设计;
模块例化方式如下:
*按键控制模块功能
接收按键输入信号。统计按键按下次数,由于流水灯模式是 3 种,计数统计范围是 0~2 循环,将计数结果传递给 LED 控制模块;
根据需求输入信号有:时钟,按键;输出信号有:流水灯控制信号;
内部功能处理:
<1>内部需要对按键信号做消抖处理;
<2>按键触发计数器(计数值输出)改变继而调整流水灯的状态;
*按键消抖模块
前后抖动时间约为 5~10ms,取按键抖动区间开始标识,持续 10-20ms 后标识归零,在抖动区间内输出保持,非消抖区间,按键状态输出。
*LED控制模块功能
3 种流水灯模式有按键传递过来的计数控制切换,每一个 LED 的显示状态完整后进入下一 模式初始化。根据需求可得到如下信息:
输入信号:时钟,流水灯模式控制信号;出信号:8bit 位宽的 LED 控制信号;功能处理注意事项:流水灯状态切换点,不同状态的切换时如何初始化;
三、实验源码设计
*顶层文件源码
*按键控制模块
*LED控制模块
四、实验现象
每按下一次 KEY1,LED 灯状态切换一次,总共三种 LED 模式供循环切换;
LED 模式一:从高位到低位的 LED 流水灯;
LED 模式二:隔一亮一交替点亮;LED 模式三:从高位到低位暗灯流水;
更多实验教程敬请关注!
发布
FPGA紫光同创fpga
【开源FPGA硬件】硬件黑客集结:开源FPGA开发板测评活动全网火热招募中......
JEDSD204B标准verilog实现-协议演进
NVMe高速传输之摆脱XDMA设计16:TLP优化
RDMA over RoCE V2设计1:通用,稳定及高性能!
【高云GW5AT-LV60 开发套件试用体验】三、LED灯控制实验
【高云GW5AT-LV60 开发套件试用体验】基于开发板进行深度学习实践,并尽量实现皮肤病理图片的识别,第四阶段
【RK3568+PG2L50H开发板实验例程】FPGA部分 | 光纤通信测试实验例程
【RK3568+PG2L50H开发板实验例程】FPGA部分 | DDR3 读写实验例程
【RK3568+PG2L50H开发板实验例程】FPGA部分 | ROM、RAM、FIFO 的使用
【RK3568+PG2L50H开发板实验例程】FPGA部分 | Pango 的时钟资源——锁相环
电子发烧友网
电子发烧友论坛