当前位置:文档之家› 基于Verilog HDL的交通灯控制器设计

基于Verilog HDL的交通灯控制器设计

基于Verilog HDL的交通灯控制器设计
基于Verilog HDL的交通灯控制器设计

目录

第一章设计原理 (1)

1.1设计要求 (1)

1.2设计思路和原理 (1)

1.3实现方法 (1)

第二章Verilog HDL程序设计 (2)

2.1整体设计 (2)

2.2 具体设计 (3)

第三章仿真与硬件调试 (7)

3.1 波形仿真 (7)

3.2 硬件调试 (9)

第四章设计总结 (10)

程序清单 (11)

参考资料 (15)

交通灯控制器设计

第一章 设计原理

1.1设计要求

设计一个交通控制器,用LED 显示灯表示交通状态,并以7段数码显示器显示当前状态剩余秒数 主干道绿灯亮时,支干道红灯亮;反之亦然,二者交替允许通行,主干道每次放行35s ,支干道每次放行25s 。每次由绿灯变为红灯的过程中,亮光的黄灯作为过渡,黄灯的时间为5s 。能进行特殊状态显示,特殊状态时东西、南北路口均显示红灯状态。用LED 灯显示倒计时,并且能实现总体清零功能,计数器由初始状态开始计数,对应状态的显示灯亮。能实现特殊状态的功能显示, 1.2设计思路和原理

本次设计是针对十字路口,进行南北和东西直行情况下交通灯控制。设定东西方向为主干道方向,根据交通灯的亮的规则,在初始状态下四个方向的都为红灯亮启,进入正常工作状态后,当主干道上绿灯亮时,支干道上红灯亮,持续35S 后,主干道和支干道上的黄灯都亮启,持续5S 后,主干道上红灯亮启,支干道上绿灯亮启持续25S ,之后主干道和支干道上的黄灯都亮启5s ,一个循环完成。循环往复的直行这个过程。其过程如下图所示:

0s

30s

25s

主干道方向

支干道方向

图1.交通灯点亮时间控制说明

1.3实现方法

本次采用文本编辑法,即利用Verilog HDL 语言描述交通控制器,通过状态机计数法,实现设计所要求的交通灯控制及时间显示。设计中用两组红黄绿LED 模拟两个方向上的交通灯,用4个7段数码管分别显示两个方向上的交通灯剩余时间,控制时钟由试验箱上频率信号提供。

第二章 Verilog HDL 程序设计

2.1整体设计

根据上章设计原理,交通灯控制的关键是各个状态之间的转换和进行适当的时间延时,根据状态机的设计规范,本次设计了三个状态之间的循环转化,其真值表及状态转化图如下所示:

状状状状状状状状状状状状00

状状10

状状11状状01状状状状状状状状状状状状状状状状状状状状状状状状状状状状状状状状状状状状状状状状001100010

010001010

100010

图2.交通灯控制状态转化

说明:该状态图为交通灯在正常情况下的状态转化图,进入控制后,状态00时主干道绿灯及支干道红灯亮起,进入状态01后两路黄灯亮起,状态11时主干道红灯及支干道绿灯亮起。进入10状态两路黄灯亮起。结束一个循环,从00状态重新开始循环。

为实现控制与显示的功能,需要设计交通灯点亮顺序控制程序,倒数计时程序,七段数码管显示程序,数码管显示扫描程序,其系统结构图如下所示:

图3.交通灯控制系统结构图

其中rst 为复位信号,clk 为时钟信号,hold 为特殊情况控制信号,输入hold 时两个方向红灯无条件亮起。

2.2 具体设计

根据整体设计要求,编写各个功能部分Verilog HDL程序,设置各输入输出变量说明如下

clk:为计数时钟;

qclk:为扫描显示时钟;

en:使能信号,为1 的话,则控制器开始工作;

rst:复位信号,为1的话,控制及技术回到初始状态;

hoid:特殊情况控制信号,为1的话,则两个方向无条件显示为红灯;

light1:控制主干道方向四盏灯的亮灭;其中,light1[0]~light[2],分别控制主干道方向的

绿灯、黄灯和红灯;

light2:控制支干道方向四盏灯的亮灭;其中,light2[0] ~ light2[2],分别控制支干道方向的

绿灯、黄灯和红灯;

num1:用于主干道方向灯的时间显示,8 位,可驱动两个数码管;

num2:用于支干道方向灯的时间显示,8 位,可驱动两个数码管;

counter:用于数码管的译码输出;

st1,st2:数码管扫描信号。

输入输出及中间变量设置如下:

module traffic(en,clk,qclk,rst,rst1,hold,num1,num2,light1,light2,counter,st1,st2);

input en,clk,qclk,rst,hold,rst1;

output st1,st2;

output[7:0] num1,num2;

output[6:0]counter;

output[2:0] light1,light2;

reg tim1,tim2,st1,st2;

reg[1:0]state1,state2,ste;

reg[2:0]light1,light2;

reg[3:0]num;

reg[6:0]counter;

reg[7:0] num1,num2;

reg[7:0] red1,red2,green1,green2,yellow1,yellow2;

1.二极管点亮控制

该部分程序的作用是根据计数器的计数值控制发光二极管的亮、灭,以及输出倒计时数值给七段数码管的译码电路。此外,当检测到特殊情况(hold=‘1’)发生时,无条件点亮红灯的二极管,当检测到复位信号,两个方向计数与控制回复到00状态。因为主、支干道两个方向二极管点亮的顺序与延迟时间不同,顾编写两个独立的部分来控制,具体程序如下:

1)主干道方向

always @(posedge clk )

begin

if(rst) //复位与特殊情况控制

begin

light1<=3'b001;

num1<=green1;

end

else if(hold)

begin

light1<=3'b100;

num1<=green1;

end

else if(en)

begin //使能有效开始控制计数

if(!tim1) //

begin //主干道交通灯点亮控制

tim1<=1;

case(state1)

2'b00:begin num1<=green1;light1<=3'b001;state1<=2'b01;end

2'b01:begin num1<=yellow1;light1<=3'b010;state1<=2'b11;end

2'b11:begin num1<=red1;light1<=3'b100;state1<=2'b10;end

2'b10:begin num1<=yellow1;light1<=3'b010;state1<=2'b00;end

default:light1<=3'b100;

endcase

end

2)支干道方向

always @(posedge clk )

begin

if(rst) //复位与特殊情况控制

begin

light2<=3'b100;

num2<=red2;

end

else if(hold)

begin

light2<=3'b100;

num2<=red2;

end

else if(en)

begin

if(!tim2)

begin

tim2<=1;

case(state1)

2'b00:begin num2<=red2;light2<=3'b100;state2<=2'b01;end

2'b01:begin num2<=yellow1;light2<=3'b010;state2<=2'b11;end

2'b11:begin num2<=green2;light2<=3'b001;state2<=2'b10;end

2'b10:begin num2<=yellow2;light2<=3'b010;state2<=2'b00;end

default:light2<=3'b100;

endcase

end

2.倒数计时

该部分程序完成二极管发光时延的计数,并将计数结果送到数码管显示电路,每切换到一个状态,计数器的初值都被重置,以实现不同颜色二极管不同的时延要求。本次设计直接用逻辑运算完成2位十进制数的计数,未采用分位器的设计。因为主、支干道上计数器的结构完全相同,顾只列出一路的程序,其具体程序如下所示:

always @(posedge clk )

begin

else

begin //倒数计时

if(num1>0)

if(num1[3:0]==0)

begin

num1[3:0]<=4'b1001;

num1[7:4]<=num1[7:4]-1;

end

else num1[3:0]<=num1[3:0]-1;

if(num1==1) tim1<=0;

end

end

else

begin

light1<=3'b010;

num1=2'b00;

tim1<=0;

end

end

3.数码管的译码及扫描显示

该段程序主要完成4个7段数码管的译码显示及扫描,使系统能正常显示主、支干道两个方向上的剩

余时间。译码的时钟频率要低,为Hz级。扫描的时钟频率要高,最低不得小于人眼分辨频率50Hz,具体程序如下所示:

always @(posedge qclk)

begin //数码管扫描

if(rst1)

begin

st1=0;

st2=0;

end

else

begin

case({st2,st1})

2'b00:begin num<=num1[3:0];{st2,st1}<=2'b01; end

2'b01:begin num<=num1[7:4];{st2,st1}<=2'b10; end

2'b10:begin num<=num2[3:0];{st2,st1}<=2'b11; end

2'b11:begin num<=num2[7:4];{st2,st1}<=2'b00; end

endcase

end

end

always @(posedge qclk)

begin //数码管译码显示

case(num)

4'b0000: counter<=7'b0111111; //0

4'b0001: counter<=7'b0000110; //1

4'b0010: counter<=7'b1011011; //2

4'b0011: counter<=7'b1001111; //3

4'b0100: counter<=7'b1100110; //4

4'b0101: counter<=7'b1101101; //5

4'b0110: counter<=7'b1111101; //6

4'b0111: counter<=7'b0000111; //7

4'b1000: counter<=7'b1111111; //8

4'b1001: counter<=7'b1101111; //9

default: counter<=7'b0111111; //0

endcase

end

endmodule

总体程序见程序清单所示

第三章仿真与硬件调试

3.1 波形仿真

在QuartursⅡ软件下创建工程,新建编辑设计文件,将程序输入,整体编译后,新建波形仿真文件。设置仿真时间,时钟周期,输入输出端口,进行波形仿真。具体仿真波形图及说明如下所示:

仿真截止时间:100us;

时钟:clk 1us,qclk 0.1us

1. 正常工作时波形仿真图

图4. 正常工作时波形仿真图

图形说明

波形仿真主要完成了控制与计数以及数码管显示的波形图。en为低电品时,计数器置初值,高电平时开始正常控制与计数。控制发光二极管首次输出为“light1=001,light2=100”,表示主干道路绿灯亮,支杆道路红灯亮,计数器num1和num2从“00110101”开始递减计数,计数至“00000000”时,进入下一个状态,控制输出量为light=010,light2=010,表示主、支干道黄灯均亮起,计数器num1和num2从“00000101”开始计数递减,计数至”00000000”时进入下一个状态,light=100,light2=001,表示主干道路红灯亮,支杆道路绿灯亮。Counter根据num1,num2变化随时钟上升沿输出译码后的数据。由于屏幕显示大小有限,未仿真出一个完整周期。

2. 特殊情况仿真波形

图5. 特殊情况仿真波形

图形说明

当hold输入高电平时,在时钟上升沿的控制下,light 1与light2被强制置位为”100”,表示两路红灯均亮起

3. 复位情况仿真波形

图形说明

当rst输入高电平时,在时钟上升沿控制下,计数与控制都回到00状态,即light1=001,light2=100,计数器num1和num2从“00110101”开始递减计数。

3.2 硬件调试

完成时序仿真确认无误后,进行实验箱管脚设置,注意设置完成后一定要再进行一次全局仿真,使程序真正对应于硬件输出输出。具体连接说明如下所示

输入变量:rst、clk、qclk、hold、en

其中en,hold,rst接”0-1”拨码开关,以稳定的输出可变化的电平。计数时钟clk接实验箱上1Hz时钟,扫描显示时钟qclk接125Khz时钟。

输出变量:light1[2:0]、light2[2:0]、counter[6:0]、st1、st2

其中light1[0] 、light2[0]分别接绿色的发光二极管;light1[1]、light2[1] 分别接黄色的发光二极管;light1[2]、light2[2]分别接红色的发光二极管。counter[0]~counter[6],分别接七段数码管的a~f,st1、st2分别接试验箱上”4-16”译码器的低两位。

完成接线后将程序烧写到芯片上,开始功能调试。分辨改变使能信号,复位信号以及特殊情况信号,观察数码管以及发光二级管情况,实物照片如下所示:

图7. 硬件实物图

第四章设计总结

在设计中采用V erilog HDL语言设计交通灯控制系统, 借助其功能强大的语言结构, 简明的代码描述复杂控制逻辑设计, 与工艺无关特性, 在提高工作效率的同时达到求解目的, 并可以通过V erilog HDL 语言的综合工具进行相应硬件电路生成, 具有传统逻辑设计方法所无法比拟的优越性。

在设计过程中,觉得最难的部分是波形仿真部分,虽然程序编译通过但仿真出不了正确的波形,不是计数器无法正常计数,就是控制输出无法进入到下一个状态,每次出现问题就必须返回重新修改程序。实践证明,在编写一个较复杂的程序时,一开始一定要画流程图,弄清楚各个功能及实现它们的逻辑算法,做到心中有数后在开始下笔写编写程序。在编写的时候要尤其要注意语言的规范,如本次设计中编写的V erilog在Quartus7.0中可以正常生成时序图,而在低版本的软件中却无法生成,原因就是语言使用不规范,在解决这个问题时我总结了一些经验,首先程序要逻辑清晰,简洁明了,避免不必要的嵌套与条用,其次要适当地给程序加上注解文字,提高可读性,以方便之后的程序出错时进行查找,最后充分利用仿真软件提供的各项编译工具与报错消息,按图索骥,有方向的完成程序调试。

完成仿真后进行,进行试验箱上的硬件调试,该步骤主要是要求细心,按照引脚清单,逐一完成连线,本次设计用到两个时钟输入,注意一定要选择合适频率的时钟,以便达到期望的效果。注意观察实物的现象,看是否满足设计要求,不满足时检查是硬件问题还是程序问题,如果是程序问题,在修改完之后必须要重新编译,重新烧入。不断排查错误,直至达到满意的效果。

通过这次课程设计,熟悉了简单EDA设计的整个流程,加深了对Verilog HDL硬件描述语言的理解,提高了动手能力,并且锻炼了自己的耐心,收获颇丰,我会把在本次课程设计中学到的东西应用到今后的工作学习中。最后感谢同学及老师提供的帮助与指导。

程序清单

module traffic(en,clk,qclk,rst,rst1,hold,num1,num2,light1,light2,counter,st1,st2); input en,clk,qclk,rst,hold,rst1;

output st1,st2;

output[7:0] num1,num2;

output[6:0]counter;

output[2:0] light1,light2;

reg tim1,tim2,st1,st2;

reg[1:0]state1,state2,ste;

reg[2:0]light1,light2;

reg[3:0]num;

reg[6:0]counter;

reg[7:0] num1,num2;

reg[7:0] red1,red2,green1,green2,yellow1,yellow2;

always @(en )

if(!en)

begin //设置计数初值

green1<=8'b00110101;

red1<=8'b00100101;

yellow1<=8'b00000101;

green2<=8'b00100101;

red2<=8'b00110101;

yellow2<=8'b00000101;

end

always @(posedge clk )

begin

if(rst) //复位与特殊情况控制

begin

light1<=3'b001;

num1<=green1;

end

else if(hold)

begin

light1<=3'b100;

num1<=green1;

end

else if(en)

begin //使能有效开始控制计数

if(!tim1) //开始控制

begin //主干道交通灯点亮控制

tim1<=1;

case(state1)

2'b00:begin num1<=green1;light1<=3'b001;state1<=2'b01;end

2'b01:begin num1<=yellow1;light1<=3'b010;state1<=2'b11;end

2'b11:begin num1<=red1;light1<=3'b100;state1<=2'b10;end

2'b10:begin num1<=yellow1;light1<=3'b010;state1<=2'b00;end

default:light1<=3'b100;

endcase

end

else

begin //倒数计时

if(num1>0)

if(num1[3:0]==0)

begin

num1[3:0]<=4'b1001;

num1[7:4]<=num1[7:4]-1;

end

else num1[3:0]<=num1[3:0]-1;

if(num1==1) tim1<=0;

end

end

else

begin

light1<=3'b010;

num1=2'b00;

tim1<=0;

end

end

always @(posedge clk )

begin

if(rst) //复位与特殊情况控制

begin

light2<=3'b100;

num2<=red2;

end

else if(hold)

begin

light2<=3'b100;

num2<=red2;

end

else if(en)

begin

if(!tim2)

begin

tim2<=1;

case(state1)

2'b00:begin num2<=red2;light2<=3'b100;state2<=2'b01;end

2'b01:begin num2<=yellow1;light2<=3'b010;state2<=2'b11;end

2'b11:begin num2<=green2;light2<=3'b001;state2<=2'b10;end

2'b10:begin num2<=yellow2;light2<=3'b010;state2<=2'b00;end

default:light2<=3'b100;

endcase

end

else

begin //倒数计时

if(num2>0)

if(num2[3:0]==0)

begin

num2[3:0]<=4'b1001;

num2[7:4]<=num2[7:4]-1;

end

else num2[3:0]<=num2[3:0]-1;

if(num2==1) tim2<=0;

end

end

else

begin

tim2<=0;

state2<=2'b00;

light2<=3'b010;

end

end

always @(posedge qclk)

begin //数码管扫描

if(rst1)

begin

st1=0;

st2=0;

end

else

begin

case({st2,st1})

2'b00:begin num<=num1[3:0];{st2,st1}<=2'b01; end 2'b01:begin num<=num1[7:4];{st2,st1}<=2'b10; end 2'b10:begin num<=num2[3:0];{st2,st1}<=2'b11; end 2'b11:begin num<=num2[7:4];{st2,st1}<=2'b00; end endcase

end

end

always @(posedge qclk)

begin //数码管译码显示

case(num)

4'b0000: counter<=7'b0111111; //0

4'b0001: counter<=7'b0000110; //1

4'b0010: counter<=7'b1011011; //2

4'b0011: counter<=7'b1001111; //3

4'b0100: counter<=7'b1100110; //4

4'b0101: counter<=7'b1101101; //5

4'b0110: counter<=7'b1111101; //6

4'b0111: counter<=7'b0000111; //7

4'b1000: counter<=7'b1111111; //8

4'b1001: counter<=7'b1101111; //9

default: counter<=7'b0111111; //0

endcase

end

endmodule

参考资料

[1] 夏宇闻. 复杂数字电路与系统的V erilog HDL设计技术 [M ].北京: 北京航空航天大学出版社, 1998

[2] 郭梯云. 移动通信[M ]. 西安: 西安电子科技大学出版社, 1995

[3] [法]M ichelMouly, M arie Bernadet te Pautet1GSM 数字移动通信系统[M ]. 骆健霞, 顾龙信, 徐云霄译. 北京: 电子工业出版社, 1996

[4] 张毅刚, 乔立岩. 虚拟仪器软件开发环境L abW indow s?CV I 610 编程指南[M ]. 北京: 机械工业

出版社, 2002

[5] 刘国权.GSM 手机的测试[J ].中国无线电管理, 2003

[6] 俞定玖, 刘湘慧. GSM 数字蜂窝移动交换系统测试[J ]. 电信科学, 2000

[7] 张明. V erilog HDL 实用教程[M ]. 成都: 电子科技大学出版社, 1999

[8] Hyde D C. Bucknell Handbook on V erilog HDL 1Computer Science Department, Bucknell U niversity L ew is burg, 1995

[9] 康华光. 电子技术基础(数字部分) [M ]. 北京: 高等教育出版社, 1988

微机原理课程设计——交通灯控制系统

南通大学电子信息学院 微机原理课程设计 报告书 课题名交通灯控制系统 班级 _______ 学号 __________ 姓名 ____ 指导教师 ______ 日期 _________

目录 1 设计目的 (1) 2 设计内容 (1) 3 设计要求 (1) 4 设计原理与硬件电路 (2) 5 程序流程图 (4) 6 程序代码 (4) 7 程序及硬件系统调试情况 (8) 8 设计总结与体会 (9) 9 参考文献 (9)

1 设计目的 电子课程设计是电子技术学习中非常重要的一个环节,是将理论知识和实践能力相统一的一个环节,是真正锻炼学生能力的一个环节。交通灯能保证行人过马路的安全,控制交通状况等优点受到人们的欢迎,在很多场合得到了广泛的应用。 交通灯是采用计算机通过编写汇编语言程序控制的。红灯停,绿灯行的交通规则。广泛用于十字路口,车站, 码头等公共场所,成为人们出行生活中不可少的必需品,由于计算机技术的成熟与广泛应用,使得交通灯的功能多样化,远远超过老式交通灯, 交通灯的数字化给人们生产生活带来了极大的方便,而且大大地扩展了交通灯的功能。诸如闪烁警示、鸣笛警示,时间程序自动控制、倒计时显示,所有这些,都是以计算机为基础的。还可以根据主、次干道的交通状况的不同任意设置各自的不同的通行时间。或者给红绿色盲声音警示的人性化设计。现在的交通灯系统很多都增加了智能控制环节,比如对闯红灯的车辆进行拍照。当某方向红灯亮时,此时相应的传感器开始工作,当有车辆通过时,照相机就把车辆拍下。 要将交通灯系统产品化,应该根据客户不同的需求进行不同的设计,应该在程序中增加一些可以人为改变的参数,以便客户根据不同的需要随时调节交通灯。因此,研究交通灯及扩大其应用,有着非常现实的意义。 2 设计内容 交通灯控制系统 利用8253定时器、8255等接口,设计一电路,模拟十字路口交通灯控制。要求能实现自动控制和手动应急控制。 3 设计要求 在Proteus环境下,结合课程设计题目,设计硬件原理图,搭建硬件电路 软件设计

数字电子技术课程设计之交通灯控制系统

数字电子技术课程设计之交通灯控制系统 专业班级:物联网112 指导教师:陈际 组成员:王海超、殷修修、张天一

一、内容摘要 二、设计内容与要求 三、方案分析 四、原理图设计 4、1信号灯控制器电路 4、2信号灯译码器电路 4、3计时器系统 4、4显示译码器 4、5 LED七段数码管 4、6 555振荡器组成的秒脉冲电路 五、整体电路图以及工作原理 六、参考文献 一、内容摘要 电路通过两个D触发器组成的四进制级数器和由与非门组成的译码器来控制主干道和支干道红、绿、黄灯的状态变化,从而达到疏

通车辆安全顺利通过十字路口,有555计时和电容电阻组成的秒脉冲发生器,计时器由两个74LS190计数器构成,分别用于计时的十位和个位,显示译码器把74LS190输出的BCD码译成七位二进制代码通过七段数码管显示出相应的十进制数。 二、设计内容与要求 为了确保在十字路口车辆安全顺利的通过,在交叉路口设置红、绿、黄三种信号灯,红灯亮时禁止通行,绿灯亮时允许通行,黄灯亮时给行驶中的车辆有时间停靠在禁行线外。 任务和要求: 1、在主干道和支干道之间交替放行,主干道每次放行50秒,支干道每次放行40秒。 2、每次绿灯亮变红时,黄灯先亮4秒,而原红灯不变。 3、用十进制数显示放行与等待时间。 三、方案分析 方案一、用数电电子技术来实现交通灯的控制 1、交通灯控制系统原理框图如图1-1所示 主要由控制器、定时器、译码器和秒脉冲信号发生器等部分组成,秒脉冲发生器是系统中定时器和控制器的标准时钟信号源,译码器输出两组信号灯的控制信号,经驱动电路驱动信号灯工作,控制器是系统的主要成分,由它控制定时器和译码器工作。

基于VerilogHDL的通行时间可变的交通灯控制器

通行时间可变的交通灯控制器设计 module tr1(ng,clk,reset,resets,emergency,lighta,lightb,seg,select); input ng,clk,reset,emergency,resets; output[6:0]seg;//显示用的 output[3:0] lighta,lightb;//a是主干道,b是支干道 output [3:0] select;//选择那一个管子进行显示 reg clk1,clk2;//clk1要5HZ clk2要几千HZ reg [3:0] select; reg tim1,tim2;//这是看你的等有没有变过颜色的控制信号 reg [1:0] cont; reg[2:0]state1,state2,ste;两个控制颜色变化状态的信号。 reg[3:0]lighta,lightb;//a是主干道,b是支干道 reg[3:0]num;//译码器是根据这个东西来译码的 reg [35:0] fout; reg[6:0]seg;//显示 reg[7:0] numa,numb; reg[7:0] red1,red2,green1,green2,yellow1,yellow2,left1,left2; always @(ng ) if(!ng) begin //设置计数初值 green1 <=8'b00110000;//30S red1 <=8'b01010001;//51S yellow1<=8'b00000011;//3S left1 <=8'b00010101; //15S green2 <=8'b00110000;//30S

智能交通灯控制器的设计报告

2012年电子技术课程设计说明书题目:7 智能交通灯控制器的设计(A) 学生姓名:张鲜艳 学号: 0407 院(系):电气与信息工程学院 专业:自动化 指导教师:辛登科 2012 年 12 月 4日

目录 74LS08、74LS32、74LS04简要说明....................... 错误!未定义书签。 CD4511简要说明....................................... 错误!未定义书签。 4 74HC190 简要说明................................... 错误!未定义书签。 5 元器件清单............................................. 错误!未定义书签。 6 调试过程及测试数据(或者仿真结果)..................... 错误!未定义书签。 通电前检查........................................... 错误!未定义书签。 通电检查............................................. 错误!未定义书签。 按钮开关的检查................................... 错误!未定义书签。 CD45111模块的调试............................... 错误!未定义书签。 NE555单元电路的调试............................. 错误!未定义书签。 74LS04非门的调试................................. 错误!未定义书签。 74LS32非门的调试................................. 错误!未定义书签。 发光二极管的调试................................. 错误!未定义书签。 结果分析............................................. 错误!未定义书签。 7 小结:................................................. 错误!未定义书签。 8 设计体会及今后的改进意见............................... 错误!未定义书签。 体会................................................. 错误!未定义书签。 本方案特点及存在的问题............................... 错误!未定义书签。 改进意见............................................. 错误!未定义书签。

数字系统课程设计-交通灯控制器实验报告

交通灯控制器 ——数字系统设计报告 姓名: 学号:

一.实验目的 1.基本掌握自顶向下的电子系统设计方法 2.学会使用PLD和硬件描述语言设计数字电路,掌握 Quartus II等开发工具的使用方法 3.培养学生自主学习、正确分析和解决问题的能力 二.设计要求 我所选择的课题是用Verilog HDL实现交通灯控制器。该课题的具体内容及要求如下: 主干道与乡村公路十字交叉路口在现代化的农村星罗棋布,为确保车辆安全、迅速地通过,在交叉路口的每个入口处设置了红、绿、黄三色信号灯。红灯禁止通行;绿灯允许通行;黄灯亮则给行驶中的车辆有时间行驶到禁行线之外。主干道和乡村公路都安装了传感器,检测车辆通行情况,用于主干道的优先权控制。 (1)当乡村公路无车时,始终保持乡村公路红灯亮,主干道绿灯亮。 (2)当乡村公路有车时,而主干道通车时间已经超过它的最短通车时间时,禁止主干道通行,让乡村公路通行。主干道最短通车时间为25s 。 (3)当乡村公路和主干道都有车时,按主干道通车25s,乡村公路通车16s交替进行。 (4)不论主干道情况如何,乡村公路通车最长时间为16s。 (5)在每次由绿灯亮变成红灯亮的转换过程中间,要亮5s时

间的黄灯作为过渡。 (6)用开关代替传感器作为检测车辆是否到来的信号。用红、绿、黄三种颜色的发光二极管作交通灯。 (7)要求显示时间,倒计时。 (C表示乡村道路是否有车到来,1表示有,0表示无;SET用来控制系统的开始及停止;RST是复位信号,高电平有效,当RST=1时,恢复到初始设置;CLK是外加时钟信号;MR、MY、MG分别表示主干道的红灯、黄灯和绿灯;CR、CY、CG分别表示乡村道路的红灯、黄灯和绿灯,1表示亮,0表示灭) 系统流程图如下:(MGCR:主干道绿灯,乡村道路红灯;MYCR:主干道黄灯,乡村道路红灯;MRCG:主干道红灯,乡村道路绿灯;MRCY:主干道红灯,乡村道路黄灯;T0=1表示主干道最短通车时间到,T1=1表示5秒黄灯时间到,T2=1表示乡村道路最长通车时间到。)

交通灯设计 verilog

数电课程设计 学生姓名: 专业:电子信息工程 指导教师: 完成日期: 2016-6-30

摘要 Verilog HDL作为一种规范的硬件描述语言,被广泛应用于电路的设计中。它的设计描述可被不同的工具所支持,可用不同器件来实现。利用Verilog HDL语言自顶向下的设计方法设计交通灯控制系统,使其实现道路交通的正常运转,突出了其作为硬件描述语言的良好的可读性、可移植性和易理解等优点,并通过Quartus5.0完成综合、仿真。此程序通过下载到FPGA芯片后,可应用于实际的交通灯控制系统中。 关键词:Verilog HDL;硬件描述语言;状态;FPGA Abstract As a common language for the description of hardware, Verilog HDL is widely applied in circuit designing. The design description can be supportted by differenttools and implemented by different devices.In this paper, the process of design ing traffic light controller system by the Verilog HDL topdown design method is presented, which has made the road traffic work well, the design of t his system has shown the readability, portability and easily understanding of Verilog HDL as a hard description language Circuit synthesis and simulation are pe rformed by Quartus5.0. The program can be used in the truly traffic light controller system by downloading to the FPGA chip Keywords:Verilog HDL; hardware description language; state; FPGA

单片机设计方案——交通灯控制系统设计方案

单片机课程设计报告交通灯控制系统设计

摘要 本设计是针对交通灯系统的设计,由单片机AT89C51(实物用AT89S52)、键盘、LED显示、交通灯演示系统组成。单片机是把微型计算机的各功能部件集成在一块芯片中,构成的一个完整的微型计算机。AT89C51单片机是MC-51中的子系列,是一组高性能兼容型单片机,AT89C51是一个低功耗高性能的CMOS 8位单片机,40个引脚,片内含4KB Flash ROM和128B RAM,它是一个全双工的串行通行口,既可以用常规编程,又可以在线编程。 本设计中的数码管的选通采用的方法是动态显示,对每一位数码分时轮流通电显示,复位电路采用上电+按钮电平复位,时钟电路采用内部时钟产生方式。对特殊情况的处理采用中断处理方式,在中断处理程序中采用对管脚的状态查询扫描,已采取相应情况的处理。 对设计方案进行电路硬件设计,并将已编程的程序载入调试,可以得到理想的实验效果。系统包括人行道、左转、右转、以及基本的交通灯的功能.具体功能是假如 A 道和B道上均有车辆要求通过时,A、B道轮流放行。A道放行 25秒,B道放行20秒。一道有车而另一道无车,交通灯控制系统能立即让有车道放行。有紧急车辆要求通过时,系统要能禁止普通车辆通行,A、B道均为红灯,紧急车由K2 开关模拟。绿灯转换为红灯时黄灯亮 1秒钟。系统除基本交通灯功能外,还具有倒计时、时间设置、紧急情况处理、分时段调整信号灯的点亮时间以及根据具体情况手动控制等功能。

目录 1引言.......................................................................................................................................... - 1 - 1.1交通灯的重要作用........................................................................................................... - 1 -1.2该交通灯系统的特点....................................................................................................... - 1 -2系统总体方案及硬件设计 ......................................................................................................... - 2 - 2.1原理框图........................................................................................................................... - 2 -2.2设计功能........................................................................................................................... - 2 - 2.3交通灯控制系统各部分硬件组成................................................................................... - 2 - 2.3.1复位部分.................................................................................................................... - 2 - 2.3.2时钟电路部分............................................................................................................ - 3 - 2.3.3路口指示灯部分........................................................................................................ - 3 - 2.3.4显示部分.................................................................................................................... - 3 -2.4元器件清单....................................................................................................................... - 4 -3软件设计..................................................................................................................................... - 5 - 3.1交通灯控制系统软件流程图及程序分析....................................................................... - 5 - 3.1.1主程序流程图及程序模设计.................................................................................... - 5 - 3.1.2INT0中断服务程序流程图及程序模设计.............................................................. - 6 -3.2路口指示灯部分............................................................................................................... - 7 - 3.3显示部分........................................................................................................................... - 7 - 4. Proteus软件仿真 ..................................................................................................................... - 8 - 5 课程设计体会......................................................................................................................... - 10 -参考文献....................................................................................................................................... - 10 -附1:源程序代码 (13) 附2:系统原理图 (20)

数字电路课程设计交通灯控制器

数字电路课程设计交通灯控制器

数字电路课程设计报告书 题目:交通灯控制器 一实验目的 1.综合应用数字电路知识设计一个交通灯控制器。了解各种元器件 的原理及其应用。 2.深入了解交通灯的工作原理。 3.锻炼自己的动手能力和实际解决问题的能力。 二实验要求 1)在十字路口的两个方向上各设一组红黄绿灯,显示顺序为其中一个方向是绿灯,黄灯,红灯,另一方面是红灯,绿灯,黄灯。2)设置一组数码管,以计时的方式显示允许通行或禁止通行时间,其中一个方向上绿灯亮的时间为20秒,另一个方向上绿灯亮的时间是30秒,黄灯亮的时间都是5秒。 3)当任何一个方向出现特殊情况,按下手动开关,其中一个方向常通行,倒计时停止,当特殊情况结束后,按下自动控制开关,恢复正常状态。 4)选作:用两组数码管实现双向到计时显示。 三使用元件

四总体方案的设计 1.分析系统的逻辑功能,画出其框图 交通灯控制系统的原理框图如图所示。它主要由控制器、定时器和秒脉冲信号发生器等部分组成。秒脉冲发生器是该系统中定时器和控制器的标准时钟信号源,控制器是系统的主要部分,由它控制定时器,数码管和二极管的工作。

2.分析系统的状态变化,列出状态转换表:(1)主干道绿灯亮,支干道红灯亮。表示主干道上的车辆允许通行, 支干道禁止通行。(2)主干道黄灯亮,支干道红灯亮。表示主干道上未过停车线的车辆停止通行,已过停车线的车辆继续通行,支干道禁止通行。 (3)主干道红灯亮,支干道绿灯亮。表示主干道禁止通行,支干道上的车辆允许通行。(4)主干道红灯亮,支干道黄灯亮。表示主干道禁止通行,支干道上未过停车线的车辆停止通行,已过停车线的车辆继续通行。 交通灯以上4种工作状态的转换是由控制器器进行控制的。设控制器的四种状态编码为00、01、11、10,并分别用S0、S1、S3、S2表示,则控制器的工作状态及功能如下表所示: 五单元电路的设计 1)秒脉冲产生电路 经过555芯片按一定的线路接上不同的电阻和电容就可产生周期不

verilog课程设计—交通灯

课程论文 论文题目基于DE2的交通灯设计完成时间 课程名称Verilog语言设计 任课老师 专业 年级

1.交通信号控制器设计要求与思路 1.1设计背景 FPGA是一种用户根据各自需要而自行构造逻辑功能的数字集成电路,其种类很多,内部结构也不同,但共同的特点是体积小、使用方便。本文介绍了用VerilogHDL语言设计交通灯控制器的方法,并在QuartusII系统对FPGA芯片进行编译下载,由于生成的是集成化的数字电路,没有传统设计中的接线问题,所以故障率低、可靠性高,而且体积非常小。本文通过EDA设计,利用VerilogHDL语言模拟仿真交通灯控制电路。 1.2设计要求 根据交通灯控制器要实现的功能,考虑用两个并行执行的always语句来分别控制A方向和B方向的3盏灯。这两个always语句使用同一个时钟信号,以进行同步,也就是说,两个进程的敏感信号是同一个。每个always语句控制一个方向的3种灯按如下顺序点亮,并往复循环:绿灯----黄灯----红灯,每种灯亮的时间采用一个减法计数器进行计数,计数器用同步预置数法设计,这样只需改变预置数据,就能改变计数器的模,因此每个方向只要一个计数器进行预置数就可以。为便于显示灯亮的时间,计数器的输出均采用BCD码,显示由4个数码管来完成,A方向和B方向各用两个数码管。设定A方向红灯、黄灯、绿灯亮的时间分别为:35s、5s、35s,B方向的红灯、黄灯、绿灯亮的时间分别为:35s、5s、35s。假如要改变这些时间,只需要改变计数器的预置数即可。 1.3设计思路 两个方向各种灯亮的时间能够进行设置和修改,此外,假设B方向是主干道,车流量大,因此B方向通行的时间应该比A方向长。交通灯控制器的状态转换表见下表。表中,1表示灯亮,0表示灯不亮。A方向和B方向的红黄绿分别用R1、Y1、G1、R2、Y2、G2来表示。

交通灯控制器设计(课题设计)

题目______ ___________ 班级___ _____________ 学号_______ _____________ 姓名__________ ______________ 指导_______ _ ______________ 时间___ ____________

电子技术课程设计任务书

目录 1、总体方案与原理说 明... ..... .. . . .. .. . .. .. ... . . ... .... .. . . . ... . . .. . .1 2、C l o ck的分频电 路. . .. . . ... . .. ..... . .. ... .. . . . . .. . . ....2 3、数码管显示电 路. . . . ... .... .. . .. . . . .. . .. .. . . ....... . .. 3 4、主控制电 路. . . .. .. . .. .. . ... . .... .. . .. . . . . . . . . . .. .. .4 5、交通灯显示电 路. . ... . ...... . ... ...... . . . . . . . .. .

.............56、总体电路原理相关说 明. .. . . .. . . . .. . .. . . . . . . .. ...... . . .. .6 7、总体电路原理 图..... . .. .. .... . ..... . ... . . .. . ...... (7) 8、元件清 单. . . . .. . . . .. ... . ...... . . . . . . . .. . . . . ... . . . . .8 参考文献. .. .. .. ... . .. .. . . ... .. . ... . . . .. . .. . . . .. ... ... . .... . ...... ....9 设计心得体 会. . . . . .. . . . .. ... . . .... ... ... .. ..... .. . . . . . . . ... . ... ... ..10

EDA交通灯控制器课程设计报告

交通灯控制器课程设计 该交通信号控制器控制十字路甲、乙两条道路的红、黄和绿三色灯,指挥车辆和行人 安全通行。 功能要求如下: 1.只有在小路上发现汽车时,高速公路上的交通灯才可能变成红灯。 2.当汽车行驶在小路上时,小路的交通灯保持为绿灯,但不能超过给定的时间。(20s) 3.高速公路灯转为绿色后,即使小路上有汽车出现,而高速公路上并无汽车,也将在给定的时间内 保持绿灯。(60s)。 设计如下: ——1hz分频器 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; use ieee.std_logic_arith.all; entity fen_pin1 is port(clk100hz:in std_logic; clk1hz:out std_logic);

end fen_pin1; architecture bhv of fen_pin1 is signal qan:std_logic_vector(3 downto 0); signal qbn:std_logic_vector(3 downto 0); signal cin:std_logic; begin process(clk100hz) begin if(clk100hz'event and clk100hz='1')then if qan="1001"then qan<="0000";cin<='1'; else qan<=qan+1;cin<='0'; end if; end if; end process; process(clk100hz,cin) begin if(clk100hz'event and clk100hz='1')then if cin='1' then if qbn="1001" then qbn<="0000"; else qbn<=qbn+1; end if ; end if ; end if ; end process; process(qan,qbn) begin if (qan="1001"and qbn="1001")then clk1hz<='1'; else clk1hz<='0'; end if; end process; end bhv; ——2hz分频器 library ieee; use ieee.std_logic_1164.all; entity fen_pin2 is port (clk100hz:in std_logic; clk2hz:out std_logic); end fen_pin2; architecture bhv of fen_pin2 is begin process(clk100hz) variable cnt:integer range 0 to 24; variable tmp:std_logic; begin

交通灯设计-verilog.

. 基于Verilog语言交通灯设计报告 院系:工学院自动化系 年级:14级 班级:10班 姓名:周博 学号:14032291

这学期我学习了EDA技术及其创新实践这门课程,通过自己学习的内容和自己查找的一些资料用Verilog语言编写交通灯的程序,并且完成了仿真。Verilog HDL是工业和学术界的硬件设计者所使用的两种主要的HDL之一,另一种是VHDL。现在它们都已成为IEEE标准。两者各有特点,但Verilog HDL拥有更悠久的历史、更广泛的设计群体,资源也远比VHDL丰富,且非常容易学习掌握。一、设计背景和意义 交通灯控制系统主要是实现城市十字交叉路口红绿灯的控制。在现代化的大城市中,十字交叉路口越来越多,在每个交叉路口都需要使用红绿灯进行交通指挥和管理,红、黄、绿灯的转换要有一个准确的时间间隔和转换顺序,这就需要有一个安全、自动的系统对红、黄、绿灯的转换进行管理,本系统就是基于此目的而开发的。 二、设计任务 (1)设计一个交通红绿灯。要求分主干道和支干道,每条道上安装红(主:red1,支:red2)绿(主:green1,支:green2)黄(主:yellow1,支:yellow2)三种颜色灯,由四种状态自动循环构成; (2)在交通灯处在不同的状态时,设计一个计时器以倒计时方式显示计时,主干道上绿灯亮30S,支干道上绿灯亮20S。每个干道上,在绿灯转为红灯时,要

求黄灯先亮5S。 在完成基本要求的基础上,可进一步增加功能、提高性能,如绿灯亮的时间可调。 三、设计方案 1.工作原理: 城市十字交叉路口红绿灯控制系统主要负责控制主干道走向和从干道走向的红绿灯的状态和转换顺序,关键是各个状态之间的转换和进行适当的时间延时,正是基于以上考虑,采用如下设计: S0:当主干道走向的绿灯亮时,从干道走向的红灯亮,并保持30s S1:当主干道走向的黄灯亮时,从干道走向的黄灯亮,并保持5s S2:当主干道走向的红灯亮时,从干道走向的绿灯亮,并保持20s S3:当主干道走向的黄灯亮时,从干道走向的黄灯亮,并保持5s 在S3结束后又回到(1)状态,并周期重复进行。 状态图如下: 30秒 5秒5秒

电子技术课程设计报告交通灯控制电路设计

电子技术课程设计报告——交通灯控制电路设计 上海大学机自学院自动化系

电气工程专业 : 学号: 指导老师:徐美华 目录 目录2 一、主要用途:3 二、设计任务及要求:3 三、设计思路步骤及仿真调试4 1.设计分析4 2.交通灯模块:5 3.脉冲信号模块5 4.减法计数器及数码显示管模块6

5.控制模块7 6.对所使用芯片进行介绍:8 7.交通灯工作图12 四、实习小结15 一、主要用途: 有效管制交通、疏导交通流量、提高道路通行能力、有利于减少交通事故。 二、设计任务及要求: 设计一个主干道和支干道十字路口的交通灯控制电路,其要求如下: 1.一般情况下,保持主干道畅通,主干道路灯亮、支干道红

灯亮,并且主干灯亮的时间不少于60 S; 2.当主干道绿灯亮超过60 S,且支干道有车时,主干道红灯 亮,支干道绿灯亮,但支干道绿灯亮的时间不得超过30S; 3.每次主干道或支干道绿灯亮变红灯时,黄灯先亮5S。 三、设计思路步骤及仿真调试 1.设计分析 计数器能进行60进制、30进制以及5进制的减数计数,在计数器与译码器及与非门的工作下实现交通灯信号灯的切换。有以下四个状态: a.主干道绿灯亮,支干道红灯亮,此时主干道允许车辆通行,支干道禁止车辆通行。当主干道绿灯亮够60秒后,控制器发出状态转换信号,系统进入下一个状态。 b.主干道黄灯亮,支干道红灯亮,此时主干道允许超过停车线的车辆继续通行,而未超过停车线的车辆禁止通行,支干道禁止车辆通行。当主干道黄灯亮够5秒后,控制器发出状态转换信号,系统进入下一个状态。 c.主干道红灯亮,支干道绿灯亮。此时主干道禁止车辆通行,支干道允许车辆通行,当支干道绿灯亮够30秒后,控制器发出状态转换信号,系统进入下一个状态。

交通灯控制器课程设计说明书

交通灯控制器课程设计说明书课程设计说明书 学生姓名:____________ 学号:________________ 学院:_______________________________________ 专业:_______________________________________ 题目:_____________ 交通灯控制器_____________ 指导教师:职称:

2010年1月15日 目录 1、实验任务 (3) 2、实验目的 (3) 3、设计方案 (3) 4、参考电路设计 (4) 5、实验仪器设备 (9) 6、实验心 得 (10)

一.实验任务 设计一个交通灯控制器,具体要求如下: 1、以红,黄,绿三种颜色的发光管作为交通灯。绿灯亮表示可以通行, 红灯 亮表示禁止通行.黄灯亮表示未通过的车辆禁止通行. 2、每次放行时间为30秒,红转绿或绿转红时,需黄灯亮5秒作为过度。 二.实验目的 1、掌握电子电路的一般设计方法和设计流程。 2、学习使用PROTEL软件绘制电路原理图和印刷版图。] 3、掌握应用EWB对设计的电路进行仿真,通过仿真结果验证设计的正确 性。 三.设计方案 交通灯控制器参考方案 图1 图1为交通灯控制器的一个参考设计方案。在这一方案中,系统主要由控制器.定时器?脉冲信号发生器.译码器?信号灯组成。 TL.TY为定时器的输出信号,ST为控制器的输出信号。 当车道绿灯亮时,定时器开始记时,当记时到30秒时,TL输出为1,否则,TL=0; 当车道黄灯亮后,定时器开始记时,当记时到5秒时,TY输出为1,否则,TY=0;

ST 为状态转换信号,当定时器数到规定的时间后,由控制器发出状态转 换信号,定时器开始下一个工作状态的定时计数。 控制状态为: 表1 ?状态转换 表 图2画出了控制器的状态转换图,图中TY 和TL 为控制器的输入信号, ST 为控制器的输出信号。 00 .01 . 11. 交通信 号灯 有四个状态, 用SO. 来表 SI. S2 ? S3 示,并且分别 分配 编码状态为

通过Verilog实现交通灯设计实验报告

电子科技大学 实 验 报 告 一、实验室名称:虚拟仪器实验室 二、实验项目名称:交通灯设计实验 三、实验学时:4学时 四、实验原理

假设交通灯处于南北和东西两条大街的“十”字路口,如图1所示。用FPGA 开发板的LED 灯来模拟红、黄、绿3种颜色信号,并按一定顺序、时延来点亮LED ,如图2所示。图3给出了交通灯的状态转移图。设计使用频率为1Hz 的时钟来驱动电路(注1:仿真时采用1MHz 的时钟来驱动电路),则停留1个时钟可得到1S 的延时,类似停留3个时钟可得到3S 的延时,停留15个时钟可得到15S 的延时(注2:开发板工作时钟为50MHz )。 北 南 西东 图1. 六个彩色LED 可以表示一组交通信号灯 图2. 交通灯状态 南北 东西 红 黄 绿 红 黄 绿 S0 1 0 0 0 0 1 S1 1 0 0 0 1 0 S2 1 0 0 1 0 0 S3 0 0 1 1 0 0 S4 0 1 0 1 0 0 S5 1 0 0 1 0 0

图3. 交通灯的状态转移图 顶层模块 时钟分频模块状态机跳转模块 图4. 交通灯的原理框图 五、实验目的 本实验是有限状态机的典型综合实验,掌握如何使用状态转移图来定义Mealy状态机和Moore状态机,熟悉利用HDL代码输入方式进行电路的设计和仿真的流程,掌握Verilog语言的基本语法。并通过一个交通灯的设计掌握利用EDA软件(Xilinx ISE 13.2)进行HDL代码输入方式的电子线路设计与仿真的详细流程。。 六、实验内容 在Xilinx ISE 13.2上完成交通灯设计,输入设计文件,生成二进制码流文件下载到FPGA开发板上进行验证。 七、实验器材(设备、元器件)

简易交通灯控制器的设计报告

一、概述 交通灯在人类道路交通发展过程中扮演着非常重要的角色,而我国是一个人口超 级大国,汽车工业的发展正在快速增长的阶段,因此限制车辆的增加不是解决问题的好方法。而采取增加供给,即大量修筑道路基础设施的方法,在资源、环境矛盾越来越突出的今天,面对越来越拥挤的交通,有限的源和财力以及环境的压力,也将受到限制。这就需要依靠除限制需求和提供道路设施之外的其他方法来满足日益增长的交通需求。 智能交通灯系统正是解决这一矛盾的途径之一。对城市交通流进行智能控制,可以使道路畅通,提高交通效率。合理进行交通灯控制可以对交通流进行有效的引导和调度,使交通保持在一个平稳的运行状态,从而避免或缓和交通拥挤状况,大大提高交通运输的运行效率,还可以减少交通事故,增加交通安全,降低污染程度,节省能 源消耗,本文就是通过对交叉路口交通灯的智能控制,达到优化路口交通流的目的。 二、方案论证 设计一个简单的交通灯控制器。实际上就是四个平时状态加上一个紧急状态。我们不妨设: S1:南北方向红灯亮,东西方向绿灯亮,时间15s; S2:南北方向红灯亮,东西方向黄灯亮,时间3s; S3:南北方向绿灯亮,东西方向红灯亮,时间l5s; S4:南北方向黄灯亮,东西方向红灯亮,时间3s; S5(紧急状态):如果发生紧急事件,可以手动控制四个方向红灯全亮。 图1 主电路状态与指示灯状态转换

S5的紧急状态,我们可以设计一个开关来控制这个状态的开启与关闭。剩余的四个状态我们可以放在一起来综合考虑。 因为四个状态是轮换的。首先,用10进制计数器对平时状态下的四种情况进行计数,再用3线——8线译码器对这四种状态进行编码,之后控制四个方向的二极管(代替红绿灯)的亮暗。其次,1Hz脉冲信号我们可以用555时基电路构成的多谐振荡器来实现。555定时器内部的比较器灵敏度高,输出驱动电流大,功能灵活,而且采用差分电路形式,它的振荡频率受电源电压和温度的影响很小。由555定时器构成的多谐振荡器的振荡频率稳定,不易受干扰。再者,用两片十进制可逆计数器来显示黄绿灯亮的秒数。 最后,就可以基本实现红绿灯的简单控制。 图2 红绿灯控制器的基本流程图 三、电路设计 1.脉冲产生电路 脉冲是由555时基电路构成的多谐振荡器产生的。选取两个固定电阻,计算出电容,使其频率为1Hz,其电路图如下:

单片机课程设计_基于单片机的交通灯控制系统设计说明

目录 1.硬件设计方案............................................... - 3 -1.1总方案设计 (3) 1.2中央处理单元 (4) 1.3红、绿、黄灯显示部分 (4) 1.4时间显示部分 (4) 1.5按键部分 (5) 2.主要电路原理分析和说明 ..................................... - 6 -2.1红、绿、黄灯显示电路.. (6) 2.2时间显示电路 (6) 2.3按键电路 (8) 2.4时钟及复位电路, (9) 其电路原理图如图2.4所示 (9) 2.5完整电路原理图 (9) 2.6单片机相应管脚及功能说明 (12) 3.软件设计流程及描述......................................... - 14 - 3.1程序流程图 (14) 4.调试....................................................... - 16 -(1)硬件调试 (16) (2)软件调试 (16)

5.结束语..................................................... - 17 - 6.参考文献................................................... - 17 - 7.附录....................................................... - 19 - 1.源程序代码 (19) 2.实物图 (22)

verilog课程设计—交通灯1

课程设计 课程名称__EDA技术综合设计与实践__ 题目名称交通灯控制系统 学生学院信息工程学院 专业班级通信工程08(4) 学号 3108002925 学生姓名高高 指导教师李学易 2011 年12 月26 日

基于FPGA 的交通灯控制器的设计 摘要:Verilog 是广泛应用的硬件描述语言,可以用在硬件设计流程的建模、综合和模拟等多个阶段。随着硬件设计规模的不断扩大,应用硬件描述语言进行描述的CPLD 结构,成为设计专用集成电路和其他集成电路的主流。现代城市在日常运行控制中,越来越多的使用红绿灯对交通进行指挥和管理。而一套完整的交通灯控制系统通常要实现自动控制和手动控制去实现其红绿灯的转换。 基于FPGA 设计的交通灯控制系统电路简单、可靠性好。本设计利用Verilog HDL 语言、采用层次化混合输入方式,可控制4个路口的红、黄、绿、左转四盏信号灯,让其按特定的规律进行变化。在QUARTUSⅡ下对系统进行了综合与仿真。仿真结果表明系统可实现十字路口红绿灯及左转弯控制和倒计时显示,并能够自动控制交通灯转变。通过应用Verilog HDL 对交通灯控制器的设计,达到对Verilog HDL 的理解 关键词:FPGA;交通灯自动控制;V erilog HDL;Quartus Ⅱ 1.交通信号控制器设计要求与思路 1.1设计要求 在交通灯系统中(图1),路口1、2、3、4均需要红、黄、绿、左转四盏灯(用RYGL分别表示) ,并且每个路口都需要一个倒数的计时器,假设绿灯每次维持的时间是40 s ,黄灯为5 s ,左转灯10s,红灯60s,黄灯亮时以一定的频率闪动。交通灯系统大多是自动控制来指挥交通的,但有时需要由交警手动控制红绿灯,所以要求设 计的该交通信号系统需要具有该功能。 实现设计目标如下: (1)设计一个十字路口的交通灯控制电路,每条路配有红、黄、绿交通信号灯,通过电路对十字路口的两组交通灯的状态实现自动循环控制; (2)实现东西车道和南北车道上的车辆交替运行,绿灯每次维持的时间是40 s ,黄灯为5 s ,左转灯10s,红灯60s; (3)要求黄灯亮5 秒后,红灯才能转为绿灯,黄灯亮时以一定的频率闪动; (4)东西车道和南北车道每次通行的时间不同且可调; 图1 交通灯系统示意图

相关主题
文本预览
相关文档 最新文档