永发信息网

EDA语句解释(交通灯黄灯模块,求全注释,谢谢)

答案:1  悬赏:80  手机版
解决时间 2021-12-01 09:38
  • 提问者网友:动次大次蹦擦擦
  • 2021-11-30 17:43
EDA语句解释(交通灯黄灯模块,求全注释,谢谢)
最佳答案
  • 五星知识达人网友:骨子里都是戏
  • 2021-11-30 18:47
module ylight(flag,clk,clrn,q1,q2,LED_h);

input[7:0] q1,q2; //输入信号

input clk,clrn; //输入信号

input [1:0] flag; //输入信号

output reg[3:0] LED_h; //输出信号

always @(posedge clk or negedge clrn) //此进程在clk上升沿或clrn下降沿被触发

begin

if(~clrn) //若clrn=‘0’,则将LED_h清零,将黄灯关闭

LED_h='b0000;

else

begin

if(flag==0)//用flag来标记黄灯处于那种工作方式(具体要结合整体电路来看,可能是
//红灯亮或者绿灯亮,此处假设flag为零代表红灯亮的情况)

begin

if(q1=='h03&&q2=='h03) //若q1=3并且q2=3,LED_h='b1010,打开黄灯
LED_h='b1010;

if(q1=='h02&&q2=='h02) //若q1=2并且q2=2,LED_h='b0000,关闭黄灯,
LED_h='b0000; //实现闪烁功能

if(q1=='h01&&q2=='h01) //打开黄灯
LED_h='b1010;

if(q1=='h00&&q2=='h00) //关闭黄灯,最后三秒钟实现让黄灯闪烁
LED_h='b0000;

end

if(flag==1) //假设为绿灯亮的情况

begin

if(q1=='h03&&q2=='h03) //若q1=3并且q2=3,LED_h='b0101,打开黄灯
LED_h='b0101;

if(q1=='h02&&q2=='h02) //若q1=2并且q2=2,LED_h='b0000,关闭黄灯,
LED_h='b0000;

if(q1=='h01&&q2=='h01) //打开黄灯
LED_h='b0101;

if(q1=='h00&&q2=='h00) //关闭黄灯,最后三秒钟实现让黄灯闪烁LED_h='b0000;

end

end

end

endmodule
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯