数字电子技术课程设计交通灯控制电路设计内容摘要:

r2,y2,g2,fangxiang,shijian,k2,k,p)。 input clk1k,clk2,fangxiang,k2。 input[4:0] shijian。 input[3:0] k。 output r1,y1,g1,r2,y2,g2,p。 reg r1,y1,g1,r2,y2,g2,p。 always @( k2) begin if(k2==0) //自动控制 begin if(fangxiang==0amp。 amp。 shijian539。 d10) //东西方向通车 begin g1=1。 g2=0。 r1=0。 r2=1。 y1=0。 y2=0。 end else if(fangxiang==0amp。 amp。 shijian539。 d5) //东西方向左转 begin g1=clk2。 g2=0。 r1=1。 r2=1。 y1=0。 y2=0。 end else if(fangxiang==0) //东西方向黄灯闪烁 begin g1=0。 g2=0。 r1=0。 r2=1。 y2=0。 y1=clk2。 16 end else if(fangxiang==1amp。 amp。 shijian539。 d10) //南北方向通车 begin g1=0。 g2=1。 r1=1。 r2=0。 y1=0。 y2=0。 end else if(fangxiang==1amp。 amp。 shijian539。 d5) //南北方向左转 begin g2=clk2。 g1=0。 r1=1。 r2=1。 y1=0。 y2=0。 end else if(fangxiang==1) //南北方向黄灯闪烁 begin g1=0。 g2=0。 r1=1。 r2=0。 y1=0。 y2=clk2; end end else //手动控制 begin g1=0。 g2=0。 r1=0。 r2=0。 y1=0。 y2=0。 case(k) 439。 b1000:begin g1=1。 g2=0。 r1=0。 r2=1。 y1=0。 y2=0。 p=0。 end //we lv 439。 b0100:begin g1=clk2。 g2=0。 r1=1。 r2=1。 y1=0。 y2=0。 end //we ls 439。 b0010:begin g1=0。 g2=1。 r1=1。 r2=0。 y1=0。 y2=0。 p=1。 end //ns lv 439。 b0001:begin g2=clk2。 g1=0。 r1=1。 r2=1。 y1=0。 y2=0。 end //ns ls endcase end end endmodule 生成模块: 17 仿真源文件及波形 ○ 1 :(东西方向通行) 仿真源文件及波形 ○ 2 :(东西方向左转) 18 仿真源文件及波形 ○ 3 :(东西方向黄灯闪) 仿真源文件及波形 ○ 4 :(南北方向通行) 仿真源文件及波形 ○ 5 :(南北方向左转) 19 仿真源文件及波形 ○ 6 :(南北方向黄灯闪) 20 点阵显示模块 module xianshi(clk1,clk1k,fangxiang,shijian,r,c,k0,p)。 input clk1,clk1k,fangxiang,k0,p。 input[4:0] shijian。 output[15:0] r,c。 reg[15:0] r,c。 integer t1k,t1。 initial begin t1k=0。 t1=0。 end always@(posedge clk1) begin if(t1120) begin t1=t1+1。 end else begin t1=0。 end end always@ (posedge clk1k) begin if(t1k16) begin t1k=t1k+1。 ///////////////////////////////////////////////东西方向显示姓名 ////////////////////////////////////////////// if((k0==0amp。 amp。 fangxiang==0amp。 amp。 shijian=539。 d10)||(k0==1amp。 amp。 p==0)) 21 begin ///////////////////////////////张 //////////////////////////////////////////////////////////////// if(t1%2==0) begin if((t1/2)%2==0) begin if(t1k%16==0) begin c=1639。 b0000000100000000。 //hang r=1639。 b0111111111111111。 //lie end else if(t1k%16==1) begin c=1639。 b0111100100001000。 r=1639。 b1011111111111111。 end else if(t1k%16==2) begin c=1639。 b0000100100010000。 r=1639。 b1101111111111111。 end else if(t1k%16==3) begin c=1639。 b0000100100100000。 r=1639。 b1110111111111111。 end else if(t1k%16==4) begin c=1639。 b0111100101000000。 r=1639。 b1111011111111111。 end 22 else if(t1k%16==5) begin c=1639。 b0100000100000000。 r=1639。 b1111101111111111。 end else if(t1k%16==6) begin c=1639。 b0100011111111100。 r=1639。 b1111110111111111。 end else if(t1k%16==7) begin c=1639。 b0100000100100000。 r=1639。 b1111111011111111。 end else if(t1k%16==8) begin c=1639。 b0111100100100000。 r=1639。 b1111111101111111。 end else if(t1k%16==9) begin c=1639。 b0000100100010000。 r=1639。 b1111111110111111。 end else if(t1k%16==10) begin c=1639。 b0000100100010000。 r=1639。 b1111111111011111。 end else if(t1k%16==11) 23 begin c=1639。 b0000100101001000。 r=1639。 b1111111111101111。 end else if(t1k%16==12) begin c=1639。 b0000100110000100。 r=1639。 b1111111111110111。 end else if(t1k%16==13) begin c=1639。 b0011000100000000。 r=1639。 b1111111111111011。 end else if(t1k%16==14) beg。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。