完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
第一个问题:EN使能信号连哪个端口好
第二个问题:SF-CY3外接端口怎么使用 第三个问题:程序是否有问题 这是verilog程序: module traffic(CLK,EN,LAMPA,LAMPB,ACOUNT,BCOUNT);output[7:0] ACOUNT,BCOUNT; output[3:0] LAMPA,LAMPB; input CLK,EN; reg[7:0] numa,numb; reg tempa,tempb; reg[2:0] counta,countb; reg[7:0] ared,ayellow,agreen,aleft,bred,byellow,bgreen,bleft; reg[3:0] LAMPA,LAMPB; always @(EN) if(EN) begin //设置各种灯的计数器的预置数 ared <=8'd55; //55 秒 ayellow <=8'd5; //5 秒 agreen <=8'd40; //40 秒 aleft <=8'd5; //15 秒 bred <=8'd65; //65 秒 byellow <=8'd5; //5 秒 bleft <=8'd5; //15 秒 bgreen <=8'd30; //30 秒 end assign ACOUNT=numa; assign BCOUNT=numb; always @(posedge CLK) //该进程控制 A 方向的四种灯 begin if(EN) begin if(!tempa) begin tempa<=1; case(counta) //控制亮灯的顺序 3'b000: begin numa<=agreen; LAMPA<=LAMPA[1]; counta<=3'b001; end 3'b001: begin numa<=ayellow; LAMPA<=LAMPA[2]; counta<=3'b010; end 3'b010: begin numa<=aleft; LAMPA<=LAMPA[0]; counta<=3'b011; end 3'b011: begin numa<=ayellow; LAMPA<=LAMPA[2]; counta<=3'b100; end 3'b100: begin numa<=ared; LAMPA<=LAMPA[3]; counta<=3'b000; end default: LAMPA<=LAMPA[3]; endcase end else begin //倒计时 if(numa>1) if(numa[3:0]==0) begin numa[3:0]<=4'b1001; numa[7:4]<=numa[7:4]-1; end else numa[3:0]<=numa[3:0]-1; if (numa==2) tempa<=0; end end else begin LAMPA<=LAMPA[3]; counta<=0; tempa<=0; end end always @(posedge CLK) //该进程控制 B 方向的四种灯 begin if (EN) begin if(!tempb) begin tempb<=1; case (countb) //控制亮灯的顺序 3'b000: begin numb<=bred; LAMPB<=LAMPA[3]; countb<=3'b001; end 3'b001: begin numb<=bgreen; LAMPB<=LAMPA[1]; countb<=3'b010; end 3'b010: begin numb<=byellow; LAMPB<=LAMPA[2]; countb<=3'b011; end 3'b011: begin numb<=bleft; LAMPB<=LAMPA[0]; countb<=3'b100; end 3'b100: begin numb<=byellow; LAMPB<=LAMPA[2]; countb<=3'b000; end default: LAMPB<=LAMPA[3]; endcase end else begin //倒计时 if(numb>1) if(numb[3:0]==0) begin numb[3:0]<=3'b1001; numb[7:4]<=numb[7:4]-1; end else numb[3:0]<=numb[3:0]-1; if(numb==2) tempb<=0; end end else begin LAMPB<=LAMPB[3]; tempb<=0; countb<=0; end end endmodule |
|
相关推荐
8个回答
|
|
首先设置各种灯的计数器的预置数,你这样设置有什么意思???直接参数化不好吗???
然后你的EN信号怎么接,这个就是一个使能信号,看你设计需求,可以外接按键控制,也可以内部控制。 还有你的开发板不一定人人都用过,外部端口怎么用这个需要你自己解决吧 程序有没有问题?你也应该说一下你调试的现象吧,没人会给你看代码的 还有建议楼主先从点亮一个LED灯开始
最佳答案
|
|
|
|
|
|
|
|
已经编译成功了,不存在语言的错误,但不知道是不是逻辑问题,计数器没有工作 |
|
|
|
小**道 发表于 2016-5-18 13:39 请问, 预置数怎么参数化,能举个例子么 板子的现象就是只是红灯亮一下,就结束了,计数器和初始值好像都有问题 |
|
|
|
哪一个红灯亮一下啊,参数化你百度一下就行了,parameter用法 |
|
|
|
算了,你的程序有问题,是在做毕设吗,如果是,建议你百度一下这个工程,网上有原码,你状态机有问题 |
|
|
|
是在做,很着急,网上找了很多程序,现在很迷茫。。 |
|
|
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
1367 浏览 1 评论
助力AIoT应用:在米尔FPGA开发板上实现Tiny YOLO V4
1046 浏览 0 评论
2442 浏览 1 评论
2146 浏览 0 评论
矩阵4x4个按键,如何把识别结果按编号01-16(十进制)显示在两个七段数码管上?
2408 浏览 0 评论
1898 浏览 50 评论
6018 浏览 113 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-24 02:47 , Processed in 0.640537 second(s), Total 55, Slave 48 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号