当前位置:文档之家› 模拟交通灯实验报告

模拟交通灯实验报告

模拟交通灯实验报告
模拟交通灯实验报告

单片机综合实验报告

题目: 模拟真实交通灯

班级:

姓名:

学号:

指导老师:

时间: 2012-12-1

一、实验内容:

用8255芯片的PA、PB口低四位做输出口,控制十二个发光二极管燃灭,模拟十字路口交通灯管理,并利用数码显示器进行倒计时显示(采用单片机内部定时器定时)。通过外部中断能使交通灯暂停运行,并点亮4个红灯。通过16*16点阵中的图形模拟控制行人过马路的人形“走”、“停”指示灯,可参考下图所示。

选做增加项目:在交通灯开始之前可通过开关对红绿灯亮灭时间的初始值进行增、减设定或者交通灯暂停时加上乐曲报警。

二、实验电路及功能说明

电路:

74LS138译码器电路

8255与发光二极管连线图

数码LED显示器电路(不需接线)

16×16LED点阵显示电

要求:

交通灯亮灭过程同“8255控制交通灯实验”,倒计时显示只需两位数(0~99),用定时器定时进行倒计时,每秒钟减1。在16*16点阵中显示的人形“走”、“停”标志可自定义,由专门软件可转换为相应显示代码,不需自己推理。

三、实验程序流程图:主程序:

子程序:

详细程序请参考程序清单。

四、实验结果分析

对程序进行仿真可以观察到:点阵中交替显示如图(a)、(b)所示图像,且交替显示时间为30秒。当显示图像为(a)时,表示可以容行人通过,限时30秒;当显示图像为(b)时,表示不容行人通过,也限时30秒。如此,在十字路口各置一对点阵即可模拟实景。

五、心得体会

通过此次实验,对单片机的I/O口的使用的条件有了更深的理解,对单片机的各个管脚功能的理解也加深了,以及在常用编程设计思路技巧的掌握方面也向前迈了一大步。这次的课程设计让我把单片机的理论知识应用在实践中,实现了理论和实践相结合,从中更懂得理论是实践的基础,实践有助于检验理论的正确性的道理,对我以后参加工作或者继续学习深造将产生巨大的帮助和影响。

六、程序清单

#include

#include

#define uchar unsigned char

#define uint unsigned int

#define ROW1 XBYTE[0XFFE3]

#define ROW2 XBYTE[0XFFE0]

#define COL1 XBYTE[0XFFE2]

#define COL2 XBYTE[0XFFE1]

#define PA XBYTE[0xffd8]

#define PB XBYTE[0xffd9]

#define CTL XBYTE[0xffdb]

#define SEG XBYTE[0xffdc]

#define BIT XBYTE[0xffdd]

#define allredend 10

#define ewredend 2*ewstarter+allredend

#define snyellowend ewredend+10

#define snredend snyellowend+2*snstarter

#define ewyellowend snredend+10

sbit KEY1=P1^0;

sbit KEY2=P1^1;

sbit KEY3=P1^2;

sbit P32=P3^2;

uchar tongBu;

uchar code ewTable[]={0xb6,0x75,0xf3,0xf7,0xae,0x9e,0xbe};

uchar code nsTable[]={0xd,0xd,0xc,0xd,0xb,0x7,0xf};

//uchar tempa,tempb;

int time=1,cnt,change,intflag,inttime=1,ewstarter=10,snstarter=15;

int tempseg;

uchar key1=0;

uchar buffer[]={0,0,0,0,0,0};

uchar table[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xff};

/*-- 行走--*/

/*-- 宽度x高度=16x16 --*/

uchar code led1[]={0x01,0x80,0x02,0x40,0x02,0x40,0x01,0x80,0x03,0xC0,0x06,0x60,0x0A,0x50,0x0A,0x5 0,

0x0B,0xD0,0x12,0x48,0x02,0x40,0x02,0x60,0x04,0x20,0x04,0x20,0x08,0x20,0x18,0x60};

/*-- 停止--*/

/*-- 宽度x高度=16x16 --*/

uchar code led2[]={0x01,0x80,0x02,0x40,0x02,0x40,0x01,0x80,0x07,0xE0,0x7E,0x7E,0x02,0x40,0x02,0x40 ,

0x03,0xC0,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x03,0xC0};

/*-- 文字: 高--*/

/*-- Fixedsys12; 此字体下对应的点阵为:宽x高=16x16 --

uchar code led2[]={0x02,0x00,0x01,0x00,0xFF,0xFE,0x00,0x00,0x0F,0xE0,0x08,0x20,0x0F,0xE0,0x00,0x0 0,

0x7F,0xFC,0x40,0x04,0x4F,0xE4,0x48,0x24,0x48,0x24,0x4F,0xE4,0x40,0x14,0x40,0x08};*/ void delayshort()

{

char n;

for(n=50;n>0;n--);

}

uchar changeleft(uchar led)

{

uchar temp;

temp=0;

temp|=(led<<7)&0x80;

temp|=(led<<5)&0x40;

temp|=(led<<3)&0x20;

temp|=(led<<1)&0x10;

temp|=(led>>1)&0x08;

temp|=(led>>3)&0x04;

temp|=(led>>5)&0x02;

temp|=(led>>7)&0x01;

return(temp);

}

void led16_16display(uchar *table,uchar length)

{

uchar i=length/2,scan1=0x1,scan2=0x1;

for(i=0;i<16;i++)

{

if(i<8)

{

ROW1=0;

ROW2=0;

COL1=scan1;

COL2=0;

ROW1=changeleft(table[2*i]);

ROW2=table[2*i+1];

COL1=scan1;

COL2=0;

delayshort();

scan1<<=1;

}

else

{

ROW1=0;

ROW2=0;

COL1=0;

COL2=scan2;

ROW1=changeleft(table[2*i]);

ROW2=table[2*i+1];

COL1=0;

COL2=scan2;

delayshort();

scan2<<=1;

}

}

}

void changeseg()

{

if(key1==0)

{

buffer[3]=10;

buffer[0]=10;

buffer[5]=tempseg%10;

buffer[4]=tempseg/10;

buffer[2]=tempseg%10;

buffer[1]=tempseg/10;

}

else if(key1==1)

{

buffer[3]=10;

buffer[0]=10;

buffer[5]=ewstarter%10;

buffer[4]=ewstarter/10;

buffer[2]=ewstarter%10;

buffer[1]=ewstarter/10;

}

else

{

buffer[3]=10;

buffer[0]=10;

buffer[5]=snstarter%10;

buffer[4]=snstarter/10;

buffer[2]=snstarter%10;

buffer[1]=snstarter/10;

}

}

void timer1()interrupt 3

{

static uchar temp=0x20,cnt1;

TH1=(65536-1000)/256;

TL1=(65536-1000)%256;

changeseg();

SEG=0xff;

SEG=table[buffer[cnt1]];

cnt1++;

if(cnt1==6)

cnt1=0;

BIT=temp;

temp>>=1;

if(temp==0)

temp=0x20;

}

void int_0()interrupt 0

{

delayshort();

if(P32==0)

{

PA=0xB6;

PB=0xd;

PT0=1;

PT1=1;

intflag=1;

while(inttime<=20)

led16_16display(led2,32);

inttime=1;

intflag=0;

PT0=0;

PT1=0;

PA=ewTable[tongBu];

PB=nsTable[tongBu];

}

}

void timer0()interrupt 1

{

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

cnt++;

if(cnt==5)

{

cnt=0;

if(intflag==1)

{

inttime++;

tempseg=10-inttime/2;

}

else

{

time++;

if(time<=allredend)

{

tongBu=0;

PA=ewTable[tongBu];

PB=nsTable[tongBu];

tempseg=allredend/2-(time+1)/2;

}

else if((time>allredend)&&(time<=ewredend))

{

tongBu=1;

PA=ewTable[tongBu];

PB=nsTable[tongBu];

tempseg=ewstarter+allredend/2-(time+1)/2;

}

else if((time>ewredend)&&(time<=snyellowend))

{

if(change==0)

{

tongBu=2;

PA=ewTable[tongBu];

PB=nsTable[tongBu];

change=1;

}

else

{

tongBu=3;

PA=ewTable[tongBu];

PB=nsTable[tongBu];

change=0;

}

tempseg=ewstarter+allredend/2+5-(time+1)/2;

}

else if((time>snyellowend)&&(time<=snredend))

{

tongBu=4;

PA=ewTable[tongBu];

PB=nsTable[tongBu];

tempseg=ewstarter+allredend/2+5+snstarter-(time+1)/2;

}

else if((time>snredend)&&(time<=ewyellowend))

{

if(change==0)

{

tongBu=5;

PA=ewTable[tongBu];

PB=nsTable[tongBu];

change=1;

}

else

{

tongBu=6;

PA=ewTable[tongBu];

PB=nsTable[tongBu];

change=0;

}

tempseg=ewstarter+10+allredend/2+snstarter-(time+1)/2;

}

else

{

tongBu=1;

time=allredend+1;

PA=ewTable[tongBu];

PB=nsTable[tongBu];

tempseg=ewstarter+allredend/2-(time+1)/2;

}

}

}

}

void key()

{

uchar keynum;

keynum=~(P1|0XF8);

switch(keynum)

{

case 0x1:

while(KEY1==0)led16_16display(led2,32);

key1++;

TR0=0;

if(key1==3)

{

key1=0;

TR0=1;

}

break;

case 0x2:

while(KEY2==0)led16_16display(led2,32);

if(key1==1)

{

ewstarter++;

if(ewstarter==100)

ewstarter=0;

}

if(key1==2)

{

snstarter++;

if(snstarter==100)

snstarter=0;

}

break;

case 0x4:

while(KEY3==0)led16_16display(led2,32);

if(key1==1)

{

ewstarter--;

if(ewstarter==-1)

ewstarter=99;

}

if(key1==2)

{

snstarter--;

if(snstarter==-1)

snstarter=99;

}

break;

default:break;

}

}

void main()

{

IE=0x8b;

IT0=1;

TMOD=0x11;

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

TH1=(65536-1000)/256;

TL1=(65536-1000)%256;

CTL=0x80;

tongBu=0;

TR1=1;

PA=ewTable[tongBu];

PB=nsTable[tongBu];

tempseg=allredend/2-(time+1)/2;

TR0=1;

while(1)

{

key();

if(intflag==0)

{

if(key1==0)

{

if(time<=allredend)

led16_16display(led2,32);

else if(time>allredend&&time<=snyellowend)

led16_16display(led1,32);

else if(time>snyellowend&&time<=ewyellowend)

led16_16display(led2,32);

}

else

led16_16display(led2,32);

}

}

}

交通灯控制模拟程序

交通灯控制模拟程序设计 ;*************定义数据段*********************************************** data segment title1 db 'Traffic-System' deng db '# # #' sing1 db 'South-North' sing2 db 'East - West' sing3 db 'Red time(scend):' time db 'Time:' sing4 db 'Yellow time(scend):' buff db 4 ;键盘缓冲区 buff1 db 3 dup(?) ;工作计数区 buff2 db 3 dup(?) ;数据保存区 yellow db ? ;黄灯时间 mode db 'Mode:auto(Y/N)?:' ans db ? ting3 db 'Red time(scend):030' ting4 db 'Yellow time(scend):5' ;************************主程序段********************************************** data ends code segment assume cs:code,ds:data,es:data start:mov ax,data mov ds,ax mov es,ax call title2 ;初始化标题 q0: call mode1 ;模式选择自动或手动 call scanf call atuo ; 默认设置参数启动 lea si,ans cmp byte ptr[si],'y' jz q1 cmp byte ptr[si],'n' jnz q0 call ask1 ;设置红灯时间 call scanf0 call ask2 ;设置黄灯时间

微机原理课程设计报告交通灯

WORD格式微机原理课程设计 设计题目交通灯的设计 实验课程名称微机原理 姓名王培培 学号080309069 专业09自动化班级2 指导教师张朝龙 开课学期2011至2012学年上学期

一、实验设计方案 实验名称:交通灯的设计实验时间:2011/12/23 小组合作:是□否?小组成员:无 1、实验目的: 分析实际的十字路口交通灯的亮灭过程,用实验箱上的8255实现交通灯的控制。(红,黄,绿三色灯) 2、实验设备及材料: 微机原理和接口技术实验室的实验箱和电脑设备等。 3、理论依据: 此设计是通过并行接口芯片8255A和8086计算机的硬件连接,以及通过8253延时的方法,来实现十字路口交通灯的模拟控制。 如硬件连接图所示(在后),红灯(RLED),黄灯(YLEDD)和绿灯(GLED)分别接在8255 的A,B,C口的低四位端口,PA0,PA1,PA2,PA3分别接1,2,3,4(南东北西)路口的红灯,B,C口类推。8086工作在最小模式,低八位端口AD0~AD7接到8255和8253的D0~D7,AD8~AD15通过地址锁存器8282,接到三八译码器,译码后分别连到8255和8253的CS片选端。8253的 三个门控端接+5V,CLOCK0接由分频器产生的1MHZ的时钟脉冲,OUT0接到CLOCK1和CLOCK,2 OUT1接到8086的AD18,8086通过检测此端口是否有高电平来判断是否30s定时到。OUT2产生 1MHZ方波通过或门和8255的B口共同控制黄灯的闪烁。8255三个口全部工作在方式0既基本 输入输出方式,红绿灯的转换由软件编程实现。

4、实验方法步骤及注意事项: ○1设计思路 红,黄,绿灯可分别接在8255的A口,B口和C口上,灯的亮灭可直接由8086输出0,1 控制。 设8253各口地址分别为:设8253基地址即通道0地址为04A0H,通道1为04A2H,通道2 为04A4H,命令控制口为04A6H。 黄灯闪烁的频率为1HZ,所以想到由8253产生一个1HZ的方波,8255控制或门打开的时 间,在或门打开的时间内,8253将方波信号输入或门使黄灯闪烁。 由于计数值最大为65535,1MHZ/65536的值远大于2HZ,所以采用两个计数器级联的方 式,8253通道0的clock0输入由分频器产生的1MHZ时钟脉冲,工作在方式3即方波发生器方 式,理论设计输出周期为0.01s的方波。1MHZ的时钟脉冲其重复周期为T=1/1MHZ=1s,因此 通道0的计数初值为10000=2710H。由此方波分别作为clock1和clock2的输入时钟脉冲,所以 通道1和通道2的输入时钟频率为100HZ,通道1作计数器工作在方式1,计数初值3000=BB8H 既30s,计数到则输出一个高电平到8255的PA7口,8255将A口数据输入到8086,8086检测 到高电平既完成30s定时。通道2工作在方式3需输出一个1HZ的方波,通过一个或门和8086 共同控制黄灯的闪烁,因此也是工作在方波发生器方式,其计数初值为100=64H,将黄灯的状态 反馈到8055的端口PB7和PC7,同样输入到8086,8086通过两次检测端口状态可知黄灯的状态 变化,计9次状态变化可完成5次闪烁。 三个通道的门控信号都未用,均接+5V即可。 ○ 2硬件原理及电路图 由于8255A与8086CPU是以低八位数据线相连接的,所以应该是8255A的A1、A 0 线分别与 8086CPU的A2、A线相连,而将8086的 1 A 0 线作为选通信号。如果是按8255A内部地址来看, 则在图中它的地址是PA口地址即(CS+000H),PB口地址为(CS+001H),PC口地址为(CS+002H),

交通灯实验报告

交通控制器设计实验 一.实验目的 1.了解交通灯的亮灭规律。 2.了解交通灯控制器的工作原理。 3.进一步熟悉VHDL语言编程,了解实际设计中的优化方案。二.实验任务 设计一个十字路口交通控制系统,其东西,南北两个方向除了有红、黄、绿灯指示是否允许通行外,还设有时钟,以倒计时方式显示每一路允许通行的时间,绿灯,黄灯,红灯的持续时间分别是40、5和45秒。当东西或南北两路中任一道上出现特殊情况,例如有消防车,警车要去执行任务,此时交通控制系统应可由交警手动控制立即进入特殊运行状态,即两条道上的所有车辆皆停止通行,红灯全亮,时钟停止计时,且其数字在闪烁。当特殊运行状态结束后,管理系统恢复原来的状态,继续正常运行。 三.原理分析 本系统主要由计数控制器和倒计时显示器电路组成。计数控制器实现总共90秒的计数,90秒也是交通控制系统的一个大循环;控制器控制系统的状态转移和红黄绿灯的信号输出;倒计时显示器电路实现45秒倒计时和显示功能。整个系统的工作时序受控制器控制,它是系统的核心。 控制器的整个工作过程用状态机进行描述,其状态转移关系如下图所示。五种状态描述如下: s0:东西方向红灯亮,南北方向绿灯亮,此状态持续40秒的时间; s1:东西方向红灯亮,南北方向黄灯亮,此状态持续5秒的时间;

s2:东西方向绿灯亮,南北方向红灯亮,此状态持续40秒的时间; s3:东西方向黄灯亮,南北方向红灯亮,此状态持续5秒的时间; s4:紧急制动状态,东西方向红灯亮,南北方向红灯亮,当紧急制动信号有效(hold=’0’)时进入这种状态。 当紧急制动信号无效(hold=’1’)时,状态机按照s0→s1→s2→s3→s0循环;当紧急制动有效(hold=’0’)时,状态机立即进入s4,两个方向红灯全亮,计数器停止计数;当紧急制动信号再恢复无效时,状态机会回到原来的状态继续执行。 四.电路设计 交通控制器系统顶层原理图如下图所示,它由计数控制器(control),45秒倒计时计数器(M45)模块组成。下面主要介绍计数控制器和倒计时计数器M45的设计方法。

模拟交通灯控制代码

//功能:模拟交通灯控制C51参考程序 具体实现功能: 1、正常时信号灯控制: (1)初始状态东西南北全为红灯(5s); (2)东西绿灯、南北红灯(10s); (3)东西绿灯闪烁3次,南北红灯; (4)东西黄灯、南北红灯(2s); (5)东西红灯、南北绿灯(10s); (6)东西红灯,南北绿灯闪烁3次; (7)东西红灯,南北黄灯(2s); (8)转(2)。 2、特殊情况下,东西方向绿灯放行(5s) 3、紧急情况下,如有急救车通过时,东西和南北两个方向的交通灯全为红灯(10s),急救车通过后恢复正常信号。紧急情况优先级高于特殊情况。 4、其他提高部分:实现智能交通灯控制(略,自行考虑并编写) (1)各路口红绿灯点亮时间可调整; (2)数码管显示各路口的点亮时间并作每秒减“1”操作; (3)左转灯设计。 (4)自己设想一些特殊情况并加以处理。 分析: 按键S1、S2模拟紧急情况和特殊情况的发生,当S1、S2为高电平(不按按键)时,表示正常情况。当S1为低电平(按下按键)时,表示紧急情况,将S1信号接至INT0脚(P3.2)即可实现外部中断0的中断申请。当S2为低电平(按下按键)时,表示特殊情况,将S2信号接至INT1脚(P3.3)即可实现外部中断1的中断申请。

程序设计: 由上述流程图,程序需要多个不同延时时间,2s、5s、10s等,假定信号灯闪烁时亮灭时间各为0.5s,则可将0.5s延时作为基本的延时时间。 #include unsigned char t0, t1; //定义全局变量,用来保存延时时间循环次数 //函数名:delay0_5s1 //函数功能:用T1的方式1编制0.5秒延时程序,假定系统采用12MHz晶振,定 // 时器1、工作方式1定时50ms,再循环10次即可定时到0.5秒 //形式参数:无 //返回值:无 void delay0_5s1( ) { for(t0=0;t0<0x0a;t0++) // 采用全局变量t0作为循环控制变量 { TH1=0x3c; // 设置定时器初值 TL1=0xb0; TR1=1; // 启动T1 while(!TF1); // 查询计数是否溢出,即定时50ms时间到,TF1=1 TF1=0; // 50ms定时时间到,将定时器溢出标志位TF1清零 } } //函数名:delay_t1 //函数功能:实现0~127.5秒的延时 //形式参数:unsigned char t;

模拟交通灯 毕业设计

毕业设计 题目模拟交通灯 系别电气工程系 专业电气自动化技术 班级电气0801班 姓名 学号 指导教师 日期 2010年12月

设计任务书 设计题目: 模拟交通灯 设计要求: 1.用单片机组成模拟交通灯系统,设计硬件电路及相应软件。 2.在十字路口的两个方向上各设一组红绿黄灯,显示顺序为:其中一个方向是绿灯、黄灯、红灯,另一个方向是红灯、绿灯、黄灯。 3.设置一组数码管,以倒计时的方式显示允许通过或禁止通行的时间,其中左转灯、绿灯、黄灯、红灯的持续时间分别是15S、30S、3S、48S。 4.当各条路上任意一条出现特殊情况,例如消防车、救护车或其他需要优先放行的车辆时,各方向上均是红灯亮,倒计时停止,且显示数字在闪烁,当特殊运行状态结束后,控制器恢复原来状态,继续正常运行。 设计进度要求: 第一周:确定题目,查阅有关资料; 第二周:查阅资料,收集资料; 第三周:列出设计思路; 第四周:硬件电路的设计; 第五周:软件程序的设计; 第六周:软件程序的仿真与调试; 第七周:打印毕业论文; 第八周:毕业答辩 指导教师(签名):

摘要 设计以单片机为核心部件的模拟交通灯,利用74LS244作为断码驱动器,74LS07作为位码驱动,LED七段数码管作为计时显示用,用发光二极管指示交通的通行,用按键进行紧急事件的发生,使两个方向都亮红灯,绿灯亮通行,红灯亮停止通行。 本设计利用定时器进行定时,使定时器工作于方式一定时50ms,配合软件计数器,调用中断程序使定时器定时20次,达到定时1S的目的,同时调用显示程序,显示到计时的时间,用单片机Intel89S51作为核心部件,8路74LS244总线驱动器作为字形驱动芯片和6路驱动74LS07位选码作为中心器件来设计交通灯控制器,实现了交通灯的控制,显示时间直接通过89S51的P0、P1口输出;交通灯信号通过P3口输出;本交通灯系统简单,实用性强,成本低,使用维护方便,软件功能强,运行稳定可靠等优点。 关键词:单片机,交通灯,位码,段码,显示

交通灯设计报告

设计要求 (1)在十字路口的两个方向上各设一组红灯、绿灯、黄灯,显示顺序为:其中一个方向是绿灯、黄灯、红灯,另一个方向是红灯、黄灯、绿灯。 (2)设置一组数码管,以倒计时的方式显示允许通行或禁止通行的时间,其中绿灯、黄灯、红灯的持续时间分别为20s、5s、25s。 (3)当各条路中任意一条上出现特殊情况,例如有消防车、救护车或其他需要优先放行的车辆时,各方向上均是红灯亮,倒计时停止,且显示数字在闪烁。当特殊运行状态结束后,控制器恢复原来状态,继续正常运行。 设计原理及框图 交通灯控制系统的原理框图如图1所示,它主要由秒脉冲发生器,时间显示器,倒计时计数器,计数控制器,交通灯控制器,交通显示灯,紧急开关构成。秒脉冲发生器是该系统中定时器的标准时钟信号源,同时控制着正常工作时黄灯与特殊情况下数码管数字的闪烁,倒计时计数器控制器控制倒计时计数器,倒计时计数器输出的数字经过时间显示器显示在数码管上。交通控制器控制交通显示灯的亮灭,交通控制灯的输入信号由紧急开关和倒计时计数器共同提供。 图一:交通灯控制系统的原理框图

状态1 甲车道黄灯亮 乙车道红灯亮 OO O 两方向车道的交通灯的运行状态共有 4种,如图2所 示,它们转换到数子状 态如下图。 TF:表示甲车道或乙车道红灯亮的时间间隔为 25秒,当TF=0时,甲车道为 红灯,25秒倒计时;当TF=1时,乙车道为红灯,25秒倒计时。 TS:表示倒计时到5秒和20秒。TY=0倒计时20秒,否则,TY=1倒计时5秒 一般十字路口的交通灯控制系统的工作过程如下: (1)甲车道绿灯亮,乙车道红灯亮。表示甲车道上的车辆允许通行,乙车 道禁止 通行。此时TF=O,TS=0绿灯亮足规定的时间隔20s ,倒计时计数器发出状态转 换信号使TS=1,使计数控制器使TS=1转到下一工作状态。 (2) 甲车道黄灯亮,乙车道红灯亮。表示甲车道上未过停车线的车辆停止 通 行,已过停车线的车辆继续通行,乙车道禁止通行。黄灯亮足规定时间间隔 5s 时,倒计时计数器发出状态转换信号使 TF=1, TS=O,使控制器控制译码器 转到下一工作状态。 (3) 甲车道红灯亮,乙车道绿灯亮。表示甲车道禁止通行,乙车道上的车 辆允许通行,绿灯亮足规定的时间间隔 20s 时,倒计时计数器发出状态转换信 号使TS=1,使控制器控制译码器转到下一工作状态。 (4)甲车道红灯亮,乙车道黄灯亮。表示甲车道禁止通行,乙车道上位过县停 车线的车辆停止通行,已过停车线的车辆停止通行,已过停车线的车辆继续通 行。黄灯亮足规定的时间间隔5s 时,倒计时计数器发出状态转换信号使 TF=0,TS=0,使计数控制器转到下一工作状态,即系统又转换到第(1)种工作 状态。 因为在上述转换过程中灯的转换只在计数器为零的时候发生且不存在竞争 冒险的问题,所以可设计为当计数器为 00时即发生信号灯的转换,当信号灯 甲车道绿灯亮 乙车道红灯亮 000 以态2 甲车道红灯亮 乙车道碌灯亮 2- 图 ? 00 r 状态3 甲车直红*1亮 乙车道就侯 TS=O TS=1 TF=0 T 状态0 状态1 状态2 状态3

交通灯实验报告

微机原理课程设计报告 新疆农业大学 计算机与信息工程学院 课程题目:微机原理与几口技术 班级:电科112 指导老师:张婧婧 姓名:刘建国 学号:114633222

基于8086的交通信号控制器的设计报告摘要: 这次课程设计,我们的任务是:基于8086的交通信号控制器的设计。8086系统是我们这个学期学习的主线方向,我们将在8086系统的基础上完成交通信号控制器的设计,其具体功能是:1.显示十字路口东西、南北2个方向的红、黄、绿的指示状态。2.实现正常的倒计时功能。用2组数码管作为东西和南北方向的倒计时显示,显示时间为红灯30s,绿灯50s,黄灯5s。3.按S1键能实现特殊的功能,显示倒计时的2组数码管闪烁,计数器停止计数并保持在原来的状态;东西、南北路口均显示红灯状态;特殊状态解除后能继续计数。4.按S2键实现总体清零功能。计数器由初始状态计数,对应的指示灯亮。 关键词:8086系统 74154 74HC373 8255A LED交通灯

(一) 1) 设计目的 交通信号控制灯是日常交通不可缺少的工具,涉及到人们的人生和财产安全,在道路行驶上起了相当关键的作用,因而设计交通信号控制灯是非常有意义的。同时我们这次设计的课题就是“基于8086交通信号控制器的设计”,基于以上目的,我利用一周时间精心设计出课题要求的交通灯。 2) 设计思想 在此次设计过程中,我们选择了数码管、发光二极管、74LS138、74LS373、8255A和8086来控制实现交通灯按设计要求工作。 3)硬件部分 1、LED设计说明: 用LED作为倒计时时间的显示器,LED在亮度、功耗、可视角度和刷新速率等方面,都更具优势。LED与LCD的功耗比大约为10:1,利用LED技术,可以制造出比LCD更薄、更亮、更清晰的显示器,LED是发光二极管属于二极管的一种,LCD是液晶显示器,两者相差太多.但是用LED的点阵也能组成显示器,适用于户外大屏幕显示,分辨率较低,LED与LCD具体比较如下图 表1-1:LCD与LED的比较 2、8255设计说明: 用8255A可编程并行接口芯片的A、B、C三口作为红、绿、黄交通灯的控制输入口。8255有三个并行输入输出口,可以方便的对三种颜色的交通灯进行很好的控制。解决方案是:PB0~PB7接模拟灯二极管,PA0~PA7接7段二极管的段选,PC0~PC3接7段二极管的位选,PC4~PC7与开关相连,处理器芯片集成芯片卡PCI卡连接,用于完成硬件方面的实验正常通信。其芯片比较说明:如下表: 表1-2:8255A与8251芯片的比较

模拟交通灯课程设计

《单片机微机原理及应用》 题目:模拟交通灯的设计 专业:测控技术与仪器 班级: 姓名: 姓名: 姓名: 姓名: 指导老师: 2015年1月10日

目录 1、设计任务 (3) 2、模拟交通灯控制系统工作原理 (4) 2.1 模拟交通灯控制系统的工作原理 (4) 3、设计基本要求和步骤 (5) 3.1 基本要求 (5) 3.2 设计思路 (5) 3.2 设计步骤 (5) 4、硬件和软件设计 (7) 4.1 交通灯控制系统硬件框图 (7) 4.2 硬件电路图 (9) 4.3 程序流程图 (10) 5、心得体会 (13) 6、附录 (14) 5.1 汇编语言源程序 (14) 5.2 模拟交通灯仿真效果图 (18)

1、设计任务:模拟交通灯的设计 1.1、模拟交通灯控制系统的总体方案设计 本设计研究的是基于AT89C51单片机的交通灯智能控制系统的设计原理及阐述。主控系统采用AT89C51单片机作为控制器,控制通行倒计时及直行、行人的通行,占用端口少,耗电也最小。系统电源采用独立的+5V稳压电源,有各种成熟电路可供选用,使此方案可靠稳定。该设计精简并优化了电路。结合实际情况,显示界面采用点阵LED数码管动态扫描的方法,满足了倒计时的时间显示输出和状态灯提示信息输出的要求,减少系统的复杂度。

2、交通灯控制系统工作原理 2.1、交通灯控制系统工作原理 本系统运用单片机对交通灯控制系统实施控制,通过直接控制信号灯的状态变化,指挥交通的具体运行,运用了LED数码管显示倒计时以提醒行驶者,更添加了盲人提示音电路,方便视力障碍群体通行,更具人性化。在此基础上,加入了特种车辆自动通行控制模块和车流量检测电路为系统采集数据,经单片机进行具体处理,及时调整通行方向。由此,本设计系统以单片机为控制核心,构成最小系统,根据特种车辆自动通行控制模块、车辆检测模块和按键设置模块等产生输入,由信号灯状态模块,LED倒计时模块输出。系统进入工作状态,LED数码管实时显示数据倒计时,执行交通灯状态显示控制,在此过程中若有控制信号和实时车流量检测信号,可对异常状态进行实时控制,随时调用中断,达到修正通行时间满足不同时间不同路况的需求。

模拟交通灯单片机课程设计

模拟交通灯单片机课程设计

————————————————————————————————作者:————————————————————————————————日期: ?

目录 第一章概述?错误!未定义书签。 1.1设计目的?错误!未定义书签。 1.2 设计要求?错误!未定义书签。 1.3 实用价值与理论意义?错误!未定义书签。 第二章系统硬件设计?错误!未定义书签。 2.1系统电路设计框图?错误!未定义书签。 2. 2系统主要硬件需求介绍 ..................................... 错误!未定义书签。 2. 3系统电力模块图?错误!未定义书签。 2.4系统电路图?错误!未定义书签。 第三章系统软件设计 ................................ 错误!未定义书签。 3.1 在正常情况下交通灯控制程序流程 ....................... 错误!未定义书签。 3.2源程序清单与注释?错误!未定义书签。 第四章仿真结果?错误!未定义书签。 4.1正常情况的仿真图?错误!未定义书签。 第五章课程设计总结 ................................ 错误!未定义书签。 参考文献?错误!未定义书签。

第一章概述 目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录象机、摄象机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用必须重视。 伴随着社会的发展以及人类生活水平的提高,汽车数量在逐年递增,交通问题不得不引起人们的重视。早在1858年,英国伦敦在主要街头安装了以燃煤气为光源的红蓝两色的机械扳手式信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。信号灯的出现,是交通得以有效管制,对于疏导交通流量,提高道路通行能力,减少交通事故有明显效果。近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时监测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,紧单片机方面知识是不够的,还应根据具体结构软硬件结合,加以完善。 目前交通灯的问题日益突出,单单依靠人力来指挥交通已经不可行了,所以,设计单片机来完成这个需求就显得越加迫切了。本设计的意义在于通过具体控制系统的设计,掌握微机控制系统设计的一般方法和处理问题的思路,特别是一些常用的技术手段。使大家能在实践教学环节中,积累设计经验,开阔思维空间,全面提高个人的综合能力。 1.1 设计目的 通过对模拟交通灯控制系统的制作,掌握定时器应用。 1.2设计要求 利用AT89S51单片机控制交通灯,实现三种情况下的控制: 正常情况下双方向轮流点亮交通灯,如表所示。

交通灯实验报告——数字电路

一、用中规模器件设计交通灯控制器 一、任务要求 1)通过数字电路的设计,在面包板上模拟交通红绿灯。要求分主干道和支干道,每条道上安装红(主R,支r)绿(主G,支g)黄(主Y,支y)三种颜色的灯,由四种状态自动循环构成(G、r→Y、r→R、g→R、y); 2)在交通灯处在不同的状态时,设计一计时器以倒计时方式显示计时,并要求不同状态历时分别为:G、r:30秒;R、g:20秒;Y、r,R、y:5秒。 二、总体方案 三、单元电路设计 1)主控电路 在设计要求中要实现四种状态的自动转换,首先要把这四种状态以数字的形态表示出来。因2*2=4,所以可以两位二进制数表示所需状态(00—G、r, 01—Y、r, 10—R、g, 11—R、y),循环状态:(00—10—11—01—00) 数字电路课程中介绍的计数器就是通过有限几个不同状态之间的循环实现不同模值计数,由此可以尝试设计一模值为4的计数器,其输出(代表不同状态)既可以循环转换,而且能够控制其他部分电路。在课程设计中本人利用74LS74(双上升沿D触发器)设计模4计数器作为主控部分电路。 主控电路图如下:

红绿灯显示电路接线如下: 4)计时部分电路 a)计时器状态产生模块: 设计要求对不同的状态维持的时间不同,而且要以十进制倒计时显示出来。限于实验 室器材本人采用两个74LS161完成计时器状态产生模块设计。 设计思路: 要以十进制输出,而又有一些状态维持时间超过10秒,则必须用两个74LS161分别 产生个位和十位的数字信号。显然,计数器能够完成计时功能,我们可以用74LS161设计, 并把它的时钟cp接秒脉冲。74LS161计数器是采用加法计数,要想倒计时,则在74LS161 输出的信号必须经过非门处理后才能接入数码管的驱动74LS48,而在显示是最好以人们 习惯的数字0---9显示计时,故在设计不同模值计数器确定有效状态时,本人以0000,0001,0010-----1111这些状态中靠后的状态为有效状态。 例如:有效状态1011—1100—1101—1110—1111 取反0100—0011—0010—0001—0000即4------3------2-------1------0实现模5的倒计时。 在将74LS161改装成其他模值时既可以采用同步清零法,也可采用异步置数法,但 0000不可能为有效状态,所以采用异步置数法完成不同模值转化的实现。 首先对控制个位输出的74LS161设计: 按要求对系统的状态不同,即红绿灯的状态不同,个位的进制也就要求不同。本人利 用系统的状态量Q 2、Q 1 控制74LS161的置数端D 3 D 2 D 1 D 。当系统处在G、r或R、g状态时, 个位的进制是十(模10),即逢十进一,当系统处在Y、r或R、y状态时,个位的进制是 五(模5),即逢五进一,模10时,有效状态为0110-----1111,置D 3D 2 D 1 D 为0110,模5

《单片机原理及应用》课程设计-基于51单片机的交通灯模拟系统设计

《单片机原理及应用》课程设计设计题目:基于51单片机的交通灯模拟系统设计 院系:物理工程学院 专业:电子信息科学与技术 年级:2013级 班级:电信1班 指导教师: 学号: 姓名: 完成时间:2016-10-26

摘要 本系统由单片机系统(STC89C52)、键盘、LED 显示、数码管、交通灯演示系统组成。系统除基本交通灯功能外,还具有倒计时、紧急情况处理以及根据具体情况手动控制等功能。 本设计是单片机控制的交通灯控制系统。单片机即单片微型计算机。其集定时、计数和多种接口与一体的微控制器。它体积小、成本低、功能强,广泛的应用于只能产业和工业自动化上。而51系列单片机是各类单片机中最为典型和富有代表性的一种。 本设计的意义在于通过具体控制系统的设计,掌握微机控制系统设计的一般方法和处理问题的思路,特别是一些常用的技术手段。能在实践教学环节中,积累设计经验,开拓思维空间,全面提高个人的综合能力。 红绿灯控制是智能交通系统的一个重要部分,本文给出了一个用单片机控制的简易交通红绿灯自动控制系统。该系统适用于十字路口,并对放行和禁行时间进行倒计时显示(秒)。 在车辆通行繁忙的十字交叉路口设置的交通灯控制系统,其特点是:道路较窄而车流量较大,主干道,支干道的车辆通行时间不等,,同时设有道路应急控制。具体的情况是:在正常的情况下,东西支干道通行时间为50秒,南北主干道通行时间为30秒,每个方向在绿灯转为红灯时,要求黄灯先亮5秒钟,才能变换运行车道。 关键字:单片机红绿灯 STC89C52 倒计时

第一部分:设计思路 国内的交通灯一般设在十字路门,在醒目位置用红、绿、黄三种颜色的指示灯。加上一个倒计时的显示计时器来控制行车。一般来说,东西方向和南北方向的车流量是不同的,这就要求南北方向和东西方向要求车辆能通行的时间应该是不一样的。本系统的设计是基于东西方向为主干道,南北方向为支干道来设计的。 假设刚开始允许东西方向通车(此时东西方向绿灯亮其它灭),南北方向禁止通车(此时南北方向红灯亮其它灭)。这我们称为第一阶段。第二阶段东西方向绿灯灭,黄灯亮,此时南北方向依然为红灯。第三阶段,东西方向黄灯灭,红灯亮,南北方向红灯灭,绿灯亮。第四阶段东西方向依然红灯,南北方向绿灯灭,黄灯亮。此时又转为第一阶段,如此循环往复,便可控制十字路口的车辆通行。此外我还考虑到了两个特殊情况,当警车或消防车通过时,此时应该只能允许一个方向通车,本系统设计了两个独立按键,可控制只允许东西方向通车或南北方向通车。 第二部分:系统硬件选择 由于是基于51系列单片机的交通灯模拟系统设计,所以我选用了宏晶公司的STC89C52型号单片机,这款单片机性价比不错,而且买的时候赠送了很多资料,里面的老师讲解非常详细,让我受益良多。由于我设计交通灯主要是使用到了LED和数码管,所以我这里简单介绍一下它的引脚接口。LED1~LED8是接在了P1.0~P1.7引脚,低电平有效。数码管的位选是P2.7引脚。段选是P2.6引脚。数码管显示是

单片机课程设计报告 - 十字路口交通灯控制

宁夏大学新华学院课程考核

绪论 主要内容: 随着各种交通工具的发展和交通指挥的需要,第一盏名副其实的三色灯(红、黄、绿三种标志)于1918年诞生。它是三色圆形四面投影器,被安装在纽约市五号街的一座高塔上,由于它的诞生,使城市交通大为改善。黄色信号灯的发明者是我国的胡汝鼎,他怀着“科学救国”的抱负到美国深造,在大发明家爱迪生为董事长的美国通用电器公司任职员。一天,他站在繁华的十字路口等待绿灯信号,当他看到红灯而正要过去时,一辆转弯的汽车呼地一声擦身而过,吓了他一身冷汗。回到宿舍,他反复琢磨,终于想到在红、绿灯中间再加上一个黄色信号灯,提醒人们注意危险。他的建议立即得到有关方面的肯定。于是红、黄、绿三色信号灯即以一个完整的指挥信号家族,遍及全世界陆、海、空交通领域了。 交通灯控制器设计主要功能是用单片机控制LED灯模拟指示。模拟东西南北方向的十字路口交通灯信号控制情况。以89C51单片机为核心芯片,采用中断方式实现控制。本模拟系统由单片机硬/软件系统,两位8段数码管和LED灯显示系统。和复位电路控制电路等组成,较好的模拟了交通路面的控制。

基本要求: 利用单片机的定时器产生秒信号,控制十字路口的红、绿、黄灯交替点亮和熄灭,并且用4只LED数码管显示十字路口两个方向的剩余时间。要求能用按键设置两个方向的通行时间(绿、红等点亮的时间)和暂缓通行时间(黄灯点亮的时间)。 系统的工作应符合一般交通灯控制的要求。 参考文献: [1] 张毅刚,彭喜元编著.《单片机原理与应用设计》 [2] 郭天祥编著.《新概念51单片机C语言教程:入门、提高、开发、拓展全攻略》 [3]编写本课程设计内容的软件设计(包含程序流程图和对程序注释)。 [4]硬件实验部分可选用实验箱测试或Proteus仿真软件实现。

EDA交通灯实验报告

实验:交通灯设计 一、设计任务及要求: 设计任务:模拟十字路口交通信号灯的工作过程,利用实验板上的两组红、黄、绿LED作为交通信号灯,设计一个交通信号灯控制器。要求: (1)交通灯从绿变红时,有4秒黄灯亮的间隔时间; (2)交通灯红变绿是直接进行的,没有间隔时间; (3)主干道上的绿灯时间为40秒,支干道的绿灯时间为20秒; (4)在任意时间,显示每个状态到该状态结束所需的时间。 主干道 图1 路口交通管理示意图 设计要求: (1)采用VHDL语言编写程序,并在QuartusII工具平台中进行仿真,下载到EDA实验箱进行验证。 (2)编写设计报告,要求包括方案选择、程序清单、调试过程及测试结果。 二、设计原理 1、设计目的: 学习DEA开发软件和QuartusII的使用方法,熟悉可编程逻辑器件的使用。通过制作来了解交通灯控制系统,交通灯控制系统主要是实现城市十字交叉路口红绿灯的控制 2、设计说明

(1)第一模块:clk时钟秒脉冲发生电路 在红绿灯交通信号系统中,大多数情况是通过自动控制的方式指挥交通的。 因此为了避免意外事件的发生,电路必须给一个稳定的时钟(clock)才能让系统正常运作。 模块说明: 系统输入信号: Clk: 由外接信号发生器提供256的时钟信号; 系统输出信号: full:产生每秒一个脉冲的信号; (2)第二模块:计数秒数选择电路 计数电路最主要的功能就是记数负责显示倒数的计数值,对下一个模块提供状态转换信号。 模块说明: 系统输入:full: 接收由clk电路的提供的1HZ的时钟脉冲信号; 系统输出信号:tm:产生显示电路状态转换信号 tl:倒计数值秒数个位变化控制信号 th:倒计数值秒数十位变化控制信号 (3)第三模块:红绿灯状态转换电路 本电路负责红绿灯的转换。 模块说明: 系统输入信号:full: 接收由clk电路的提供的1hz的时钟脉冲信号; tm: 接收计数秒数选择电路状态转换信号; 系统输出信号:comb_out: 负责红绿灯的状态显示。 (4)第四模块:时间显示电路 本电路负责红绿灯的计数时间的显示。 模块说明: 系统输入信号:tl:倒计数值秒数个位变化控制信号; th:倒计数值秒数十位变化控制信号; 系统输出信号:led7s1: 负责红绿灯的显示秒数个位。 led7s2:负责红绿灯的显示秒数十位。 三、设计方案

模拟交通灯控制实验

实验报告 课程名称:微机原理与接口技术 指导老师:彭勇刚 成绩:__________________ 实验名称:_______________________________实验类型:________________同组学生姓名:__________ 一、实验目的和要求(必填) 二、实验内容和原理(必填) 三、主要仪器设备(必填) 四、操作方法和实验步骤 五、实验数据记录和处理 六、实验结果与分析(必填) 七、讨论、心得 模拟交通灯控制实验 一、实验目的 1、了解时间常数的计算方法。 2、了解80C51中断的工作机理、过程,掌握中断服务程序的编制。 3、掌握80C51单片机内部定时/计数器的工作方式选择,初始化程序的设置以及中断服务子程序的设计。 二.实验内容和实验原理 编写模拟交通灯运行控制程序。要求红绿灯亮灯延时时间为30秒,黄灯亮灯延时时间为10秒。利用二位八段LED 显示器进行时间显示。时间显示采用倒计时的方式。时间归零时信号进行切换。 实验线路图如下图:装 订 线

除红绿黄六路交通灯外,还需要用到两个八段LED显示器,用于显示交通灯时间显示,显示码采用串行口模式0进行输出 三.实验器材: 1. Micetek仿真器一台 2. 实验板一块 四.程序及实验结果: 调试通过的.LST文件如下: ORG 0000H 0000 0130 AJMP MAIN ORG 000BH ;定时器T0的中断矢量 000B 21A3 AJMP T0INT ;跳转到中断服务程序 ORG 0030H MAIN: 0030 758901 MOV TMOD,#01H ;写控制字,T0为方式1; 0033 759800 MOV SCON,#00H 0036 758160 MOV SP,#60H ;设堆栈指针SP为60H 0039 D28C SETB TR0 ;启动T0; 003B D2B9 SETB PT0 ;T0中断为高优先级 003D D2A9 SETB ET0 ;允许T0中断 003F D2AF SETB EA ;开放CPU中断 0041 758AB0 MOV TL0,#0B0H ;定时常数为100ms 0044 758C3C MOV TH0,#3CH ORG 0100H RED: ;红灯 0100 D280 SETB P0.0 ;设置输出的初始状态 0102 C281 CLR P0.1 0104 C282 CLR P0.2 0106 C283 CLR P0.3 0108 C284 CLR P0.4 010A D285 SETB P0.5 010C 781E MOV R0,#30 ;红灯亮30s 010E 790A MOV R1,#10 ;黄灯亮10s 0110 E8 LOOP1:MOV A,R0 0111 120166 LCALL SHOW ;转移到数码显示子程序 0114 3000FD WAIT1:JNB 20H.0,WAIT1 ;数码管计数间隔为1s 0117 C200 CLR 20H.0 0119 D9F9 DJNZ R1,WAIT1 011B 790A MOV R1,#10 011D 18 DEC R0 ;红灯从30s开始倒计时 011E B800EF CJNE R0,#00H,LOOP1

模拟交通灯控制系统设计

贵州师范学院 电子课程设计报告书 班级11级1班 学生姓名王旭东 学号11030540094 专业电子信息科学与技术 院系物电学院 2014年6 月20 日

摘要 随着城市人口的快速增长和机动车数量的大量增加,城市交通灯作为缓解交通压力、提高道路通行效率的重要手段,其作用越来越重要。因此,如何改进交通灯的设计,使其更好的适应城市交通的发展也成为一个重要课题。红绿灯控制系统是利用8253A定时/计数器芯片的定时功能,向8259A中断控制器芯片发出定时中断请求,驱动8255A可编程并行接口芯片改变路口的LED灯的亮灭。系统采用DVCC-598JH+微机原理与接口技术实验箱作为测试与运行的平台,8086汇编语言作为编程语言,并用MASM5.0作为汇编语言开发环境。 关键词:红绿灯控制系统 8253A定时器 8259A中断控制器 8255A可编程并行接口 DVCC-598JH+ 目录 摘要 (201) 1.十字路口基本情况分析 (201) 2.交通灯状态转换分析.............................. III 3.紧急通行情况分析 (5) 4.硬件功能分析 (6) 4.1 8253A定时/计数器芯片 (6) 4.2 8259A中断控制器芯片 (7) 4.3 8255A可编程并行接口芯片 (9) 5.系统设计 (10) 5.1硬件设计 (10)

5.1.1 电路分析 (10) 5.1.2 电路连接设计 (10) 5.2软件设计 (12) 5.2.1 程序总体设计 (12) 5.2.2 程序流程设计 (13) 5.2.3 重要代码分析................................ XII 6.系统实现...................................... XVII 6.1 软件开发与运行环境 .. (10) 6.2 系统硬件环境 (20) 6.3 系统运行步骤 (20) 6.4 系统测试结果 (20) 参考文献 (21) 心得体会 (22) 1 十字路口基本情况分析 设有一个十字路口,1、3为东西方向,2、4为南北方向,1、3路口的绿灯亮,2、4路口的红灯亮,1、3路口方向通车;延时一段时间后,1、3路口的绿灯熄灭,而1、3路口的黄灯开始闪烁,闪烁若干次以后,1、3 路口红灯亮,而同时2、4路口的绿灯亮,2、4路口方向通车;延时一段时间后,2、4 路口的绿灯熄灭,而黄灯开始闪烁,闪烁若干次以后,再切换到1、3路口方向,之后重复上述过程。

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

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

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

交通灯课程设计报告

摘要 在今天的交通情况下,很多路口都出现拥堵与秩序混乱的情况,由此可见交通灯在生活中的重要性。我们本次课程设计的题目就是交通灯控制器设计,要求设计并制作主/支交通信号灯控制器。我们小组成员通过共同交流与努力,完成了仿真图的设计、电路板的焊接、原理图的绘制。在由主干道与支干道汇成的十字路口,主、支道分别装有红、绿、黄三色信号灯,并完成数码管的置数。 通过本次课设,我们小组成员对数字电路的知识有了更深刻地了解。明白了在课设的各个阶段,我们都必须对元器件的原理非常了解。

目录 1 设计内容及要求 (1) 2 方案论证 (1) 3 单元设计电路 (2) 3、1 总原理 (2) 3、2 控制电路 (3) 3、3 时钟产生电路 (3) 3、4 显示电路 (4) 3、5 器件 (5) 3、5、1可预置的十进制同步计数器74LS160 (5) 3、5、2 3 线-8 线译码器74LS138 (5) 3、5、3双时钟方式的十进制可逆计数器74LS192 (bcd,二进制) (6) 3、5、4 七段码译码器CD4511 (6) 4 组装及调试 (7) 4、1 通电前检查 (7) 4、2 通电检查 (7) 4、2、1 555电路模块的检查 (7) 4、2、2 CD4511的检查 (7) 4、2、3 74LS192的检查 (8) 4、2、4 控制电路及相关门电路的检查 (8) 4、2、5 发光二极管的检查 (9) 4、3 结果分析 (9) 5 设计总结 (10) 5、1 体会 (10) 5、2 设计电路的特点与方案的优缺点 (11) 5、3 改进方法 (11) 参考文献、附录Ⅰ、附录Ⅱ.................................................................. 错误!未定义书签。

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