完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
|
module led1(clk,rst,led,c1,c2);
input clk; input rst; input c1,c2; output [7:0]led; reg [7:0]led; reg [24:0]count; reg flag1,flag2; wire count_clk; assign count_clk=(count==25'd24999999)?1:0; always@(negedge clk) begin if(!rst) count<=0; else if(count<25'd24999999) count<=count+1'd1; else count<=0; end always@(c2 or c1) begin flag1<=~c1; flag2<=~c2; end always@(negedge clk) begin if(!rst) led<=8'b1111_1110; else if(count_clk) begin if(flag1) led<={led[6:0],led[7]}; else if(flag2) led<={led[0],led[7:1]}; else led<=8'b1111_1110; end end endmodule 以上是我写的代码,但是板上的现象是我必须要一直按着按键才可以使其左移或右移,我分析原因是当我松手的时候,按键上升沿触发,这样又会使flag为零,这样流水灯就不动了,所以我想请教下各位高手如何修改程序是我只要按一下就可以改变流水灯流向,谢谢大家! |
|
相关推荐
4个回答
|
|
|
你的程序输入信号一变化状态就取反了,根据读取按键值的实际情况设置移动方向就好了
|
|
|
|
|
|
你好,请问能否说的再详细一点,谢谢 |
|
|
|
|
|
问题已解决,这么简单。。。我二了,谢谢 |
|
|
|
|
|
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
NVMe高速传输之摆脱XDMA设计50:主要功能测试结果与分析2 nvmePCIe高速存储
252 浏览 0 评论
NVMe高速传输之摆脱XDMA设计49:主要功能测试结果与分析1
1501 浏览 0 评论
907 浏览 0 评论
855 浏览 0 评论
658 浏览 0 评论
4427 浏览 63 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 06:57 , Processed in 0.748881 second(s), Total 79, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
3411