基于AT89C51单片机的十字路口交通灯设计讲解

基于AT89C51单片机的十字路口交通灯设计讲解
基于AT89C51单片机的十字路口交通灯设计讲解

单片机原理及系统课程设计

专业:电气工程及其自动化

班级:电气1102

姓名: vfffff

学号:2011反反复复

指导教师:汤旻安

兰州交通大学自动化与电气工程学院

2014年 1月17 日

基于AT89C51单片机的十字路口交通灯设计

1 设计目的和方案

1.1设计目的

近年来随着科技的飞速发展,一个以微电子技术、计算机技术和通信技术为先导的信息革命正在蓬勃发展。计算机技术作为三者之一,怎样与实际应用更有效的结合并发挥其作用。单片机作为计算机技术的一个分支,正在不断的应用到实际生活中,同时带动传统控制检测的更新。在实时检测和自动控制的应用系统中,单片机往往是作为一个核心部件使用,针对具体应用对象的特点,配以其它器件来加以完善。现代社会有越来越多的人开始有了自己的私家车,同时,便有了交通拥挤的问题,如何在车流量巨大的十字路口保证车辆畅行,交通灯便起到了巨大的作用。实际上,1858年,英国伦敦就有了最早的然煤气交通灯,至今,交通灯已经普及到世界各地,成为社会生活中不可或缺的装置。

信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。

1.2设计方案

设计方案如表1所示。

表1设计方案

25s 5s 25s 5s

南北道红灯亮红灯亮绿灯亮黄灯亮.......

东西道绿灯亮黄灯亮红灯亮红灯亮.......

1.4设计任务

东西、南北两干道交于一个十字路口,各干道有一组红、黄、绿三个指示灯,指挥车辆和行人安全通行。红灯亮禁止通行,绿灯亮允许通行。红灯的设计时间为30秒,绿灯及左转绿灯各为25秒。黄灯为闪烁5秒。

1.3时序图

本程序的时序图是基于visio画出的,基本图如图1所示。

30s

25s

5s

30s

25s

30s

5s

25s

绿

东西方向

南北方向

绿

图1时序图

2功能

该电子产品实现的功能:本系统除基本交通灯功能以外,还有倒计时等功能,较好的模拟了十字路口出现的状况。

具体功能如下:

(1)当东西方向为红灯,此道车辆禁止通行,东西道行人可通过;南北道为绿灯,

此道车辆通过,行人禁止通行。时间为30秒。

(2)黄灯闪烁5秒,警示车辆和行人红、绿灯的状态即将切换。 (3)当东西方向为绿灯,此道车辆通行;南北方向为红灯,南北道车辆禁止通过,

行人通行。时间为30秒。 东西方向车流大 通行时间长。

(4)这样如上表的时间和红、绿、黄出现的顺序依次出现这样行人和车辆就能安全畅通的通行。

3硬件设施及简介

8051单片机一片,共阴极的七段数码管,两个双向晶闸管若干,电源若干,晶振电路,复位电路一个,LED 红黄绿灯各三个。导线若干。

复位电路:给单片机进行复位工作。 数码显示管两个:显示倒计时时间。

4 程序方框图

主程序流程图如图2所示。

图2 程序方框图

5 电路原理及说明

5.1总电路原理图

绘制出所做作品的原理图如图3所示。

图3电路原理图

5.2 电路原理说明

电路工作原理:如附图所示,刚开始,各灯均闪五秒,之后东西绿灯25s黄灯5s,南北方向红灯亮30s,倒计时结束,转向,南北方向绿灯25s,黄灯5s,东西方向红灯30s,依次循环。两个晶体管用来显示倒计时时间,12个不同颜色的LED灯显示各方向的红绿灯情况。使用51单片机作为芯片,一个复位电路。

LED 灯的显示原理:通过同名管脚上所加电平的高低来控制发光二极管是否点亮。七段数码管连接显示不同的数字如 SP,g,f,e,d,c,b,a 。

6系统仿真及实际调试

程序仿真是基于proteus软件的,仿真结果如图4所示

图4仿真结果

7总结

在进行过程中遇到的问题及解决方法:

通过这次课程设计,使我得到了一次用专业知识、专业技能分析和解决问题全面系统的锻炼。使我在单片机的基本原理、单片机应用系统开发过程,以及在常用编程设计思路技巧的掌握方面都能向前迈了一大步,为日后成为合格的应用型人才打下良好的基础。

在进行过程中,遇到很多困难与问题,例如程序不会写,仿真不出结果,结果不正确等问题,但是困难总是有办法解决的,通过查询网络,请教同学等方式,改编出了源程序,请教同学做出来了仿真结果。为以后的课设继续进行打好了基础。

作为一名电气专业的大三学生,我觉得做单片机课程设计是十分有意义的,而且是十分必要的。在已度过的大学时间里,我们大多数接触的是专业课。我们在课堂上掌握的仅仅是专业课的理论知识,如何去锻炼我们的实践能力?如何把我们所学的专业基础课理论知识运用到实践中去呢?我想做类似的课程设计就为我们提供了良好的实践平台。

我认为这个收获应该说是相当大的。觉得课程设计反映的是一个从理论到实际应用的过程,但是更远一点可以联系到以后毕业之后从学校转到踏上社会的

一个过程。

参考文献

[1] 余锡存单片机原理及接口技术[M] 西安:西安电子科技大学出版社,2000.7

附录

程序如下

#include

#define uchar unsigned char//宏定义uchar

#define uint unsigned int//宏定义uint

sbit RED_DONGXI = P1^0;//南北方向红灯亮

sbit YELLOW_DONGXI = P1^1;//南北方向黄灯亮

sbit RED_NANBEI = P1^3;//东西方向红灯亮

sbit GREEN_DONGXI = P1^2;//南北方向绿灯亮

sbit YELLOW_NANBEI = P1^4;//东西方向黄灯亮

sbit GREEN_NANBEI = P1^5;//东西方向绿灯亮

sbit DXweixuan1 = P1^6;//南北方向数码管位选1

sbit DXweixuan2 = P1^7;//南北方向数码管位选2

sbit NBweixuan1 = P3^0;//东西方向数码管位选1

sbit NBweixuan2 = P3^1;//东西方向数码管位选2

sbit L1=P3^5;

sbit L2=P3^6;

sbit L3=P3^7; //数码管显示位月、日、时、分选控制端

uint aa, bai,shi,ge,bb;

uint shi1,ge1,shi2,ge2,minute=00,hour=07,day=20,month=11;//月日时分初始值设定

uint month1,month2,day1,day2,hour1,hour2,minute1,minute2;//定义变量

/*数码管显示0-9*/

uint code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

uint code table1[]={0xfc,0x60,0xda,0xf2,0x66,0xb6,0xbe,0xe0,0xfe,0xf6};

/*子函数声明*/

void delay(uint z);

void delay0(uint z);

void init(uint a);

void display(uint shi1,uint ge1,uint shi2,uint ge2);

void xtimer0();

void init1();

void init2();

void init3();

void init4();

void init5();

void init6();

void display1();

/*********************************************************

主函数

*********************************************************/ void main()

{

P0=0xFF;

P1=0xFF;

P2=0x00;

P3=0xFF;

EA=1; //打开外部中断

EX0=1; //允许外部中断0中断

IT0=0;

EX1=1; //允许外部中断1中断

IT1=0; //INT0为沿触发方式

init1(); //第1个位状态

while(1)

{

init2(); //第2个状态

init3(); //第3个状态

init4(); //第4个状态

init5(); //第5个状态

}

}

void init1()//预备状态东、西、南、北方向均亮红灯3S

{

uint temp;

temp=3; //变量赋初值

TMOD=0x01; //定时器0工作于方式1

TH0=(65535-50000)/256;

TL0=(65535-50000)%256; //定时器赋初值

EA=1; //开外部中断

ET0=1; //开定时中断

TR0=1; //开定时器0

while(1)

{

RED_DONGXI=0;

RED_NANBEI=0;

GREEN_DONGXI=1;

GREEN_NANBEI=1;

YELLOW_DONGXI=1;

YELLOW_NANBEI=1;

if(aa==20) //定时20*50MS=1S

{

aa=0; //定时完成一次后清0

temp--; //变量自减

}

shi1=shi2=temp/10; //显示十位

ge1=ge2=temp%10; //显示个位

if(temp==0)

{

temp=5; //变量赋值为5

break;

}

display(ge1,shi1,ge2,shi2); //显示红绿灯显示剩余时间}

}

void init2() //第二个状态:东西亮红灯30S~5S、南北亮绿灯25~0S; {

uint temp;

temp=26; //变量赋初值

TMOD=0x01; //定时器0工作于方式1

TH0=(65535-50000)/256;

TL0=(65535-50000)%256; //定时器赋初值

EA=1; //开外部中断

ET0=1; //开定时中断

TR0=1; //开定时器0

while(1)

{

RED_DONGXI=1;

RED_NANBEI=0;

GREEN_DONGXI=0;

GREEN_NANBEI=1;

YELLOW_DONGXI=1;

YELLOW_NANBEI=1;

if(aa==20) //定时20*50MS=1S

{

aa=0; //定时完成一次后清0

temp--; //变量自增

shi1=(temp+5)/10; //显示十位

ge1=(temp+5)%10; //显示个位

shi2=temp/10;

ge2=temp%10;

if(temp==0) //定时25S

{

temp=26; //变量清0

break;

}

}

display(ge1,shi1,ge2,shi2);

}

}

void init3() //第三个状态:南北绿灯变为黄灯闪5s、东西方向亮红灯5S {

uint temp;

temp=6; //变量赋初值

TMOD=0x01; //定时器0工作于方式1

TH0=(65535-50000)/256;

TL0=(65535-50000)%256; //定时器赋初值

EA=1; //开外部中断

ET0=1; //开定时中断

TR0=1; //开定时器0

while(1)

{

RED_NANBEI=0;

GREEN_DONGXI=1;

if(aa==20) //定时20*50MS=1S

{

aa=0; //定时完成一次后清0

temp--; //变量自增

YELLOW_DONGXI=~YELLOW_DONGXI;

shi1=temp/10;

shi2=shi1; //显示十位

ge1=temp%10;

ge2=ge1; //显示个位

}

if(temp==0) //定时5S

{

temp=6; //变量赋值

break;

}

display(ge1,shi1,ge2,shi2);

}

}

void init4()//第四个状态:东西亮绿灯25~0S,南北方向亮红灯30~5S;{

uint temp;

temp=26; //变量赋初值

TMOD=0x01; //定时器0工作于方式1

TH0=(65535-50000)/256;

TL0=(65535-50000)%256; //定时器赋初值

EA=1; //开外部中断

ET0=1; //开定时中断

TR0=1; //开定时器0

while(1)

{

RED_DONGXI=0;

RED_NANBEI=1;

YELLOW_DONGXI=1;

GREEN_NANBEI=0;

if(aa==20) //定时20*50MS=1S

{

aa=0; //定时完成一次后清0

temp--; //变量自增

shi1=temp/10;

shi2=(temp+5)/10; //显示十位

ge1=temp%10;

ge2=(temp+5)%10; //显示个位

if(temp==0) //定时25S

{

temp=26; //变量清0

break;

}

}

display(ge1,shi1,ge2,shi2);

}

}

void init5()//第五个状态:东西闪黄灯5~0s、南北红灯5S {

uint temp;

temp=6; //变量赋初值

TMOD=0x01; //定时器0工作于方式1 TH0=(65535-50000)/256;

TL0=(65535-50000)%256; //定时器赋初值

EA=1; //开外部中断

ET0=1; //开定时中断

TR0=1; //开定时器0

while(1)

{

RED_NANBEI=1;

RED_DONGXI=0;

GREEN_DONGXI=1;

GREEN_NANBEI=1;

if(aa==20) //定时20*50MS=1S

{

aa=0; //定时完成一次后清0

temp--; //变量自增

YELLOW_NANBEI=~YELLOW_NANBEI;

shi1=temp/10;

shi2=shi2; //显示十位

ge1=temp%10;

ge2=ge1; //显示个位

if(temp==0) //定时100S

{

temp=6; //变量清0

break;

}

}

display(ge1,shi1,ge2,shi2);

}

}

void display(uint shi1,uint ge1,uint shi2,uint ge2) {

DXweixuan1=0;

DXweixuan2=1;

NBweixuan1=1;

NBweixuan2=1;

P0=table[ge1]; //显示十位

delay0(5);

DXweixuan1=1;

DXweixuan2=0;

NBweixuan1=1;

NBweixuan2=1;

P0=table[shi1]; //显示个位

delay0(5);

DXweixuan1=1;

DXweixuan2=1;

NBweixuan1=0;

NBweixuan2=1;

P0=table[ge2]; //显十位

delay0(5);

DXweixuan1=1;

DXweixuan2=1;

NBweixuan1=1;

NBweixuan2=0;

P0=table[shi2]; //显示个位

delay0(5);

}

void xint0() interrupt 0 //外部中断0 {

RED_NANBEI=0;

RED_DONGXI=0;

GREEN_NANBEI=1;

GREEN_DONGXI=1;

YELLOW_NANBEI=1;

YELLOW_DONGXI=1;

P0=0x00;

NBweixuan1=0;

NBweixuan2=0;

DXweixuan1=0;

DXweixuan2=0;

display1();

return ;

}

void xint1() interrupt 2 //外部中断1 {

RED_NANBEI=1;

RED_DONGXI=1;

GREEN_NANBEI=0;

GREEN_DONGXI=0;

YELLOW_NANBEI=1;

YELLOW_DONGXI=1;

P0=0x00;

NBweixuan1=0;

NBweixuan2=0;

DXweixuan1=0;

DXweixuan2=0;

return ;

}

/*定时中断子函数*/

void xtimer0() interrupt 1 {

TH0=(65535-50000)/256;

TL0=(65535-50000)%256;

aa++;

}

/*延时子函数*/

void delay0(uint z)

{uint i,j;

for(i=0;i

for(j=0;j<110;j++);

}

void delay(unsigned int j)

{

unsigned char k;

unsigned int i;

for(;j>0;j--)

{

for(i=1250;i>0;i--)

{

for(k=180;k>0;k--);

}

}

}

基于AT89c51单片机实现的交通灯

江西科技师范大学 通信与电子学院《单片机应用技术》实训报告实训题目:模拟交通灯 小组成员:龚石冲罗仁敏曾建伟 班级:12电子科学与技术 指导老师:熊朝松

一、实训选题内容、要求 交通模拟灯 要求: 1、南北方向为主干道,东西方向为支路;主干路绿灯时间为45秒,红灯时间为35秒; 支路绿灯时间30秒,红灯时间为50秒,两个方向的黄灯时间都为4秒; 2、使用定时器实现时间的倒计时;用显示部件显示主干道路的倒计时变化; 3、设计三个外部按钮,分别用以手动控制紧急情况下两个方向同时禁通过;南北方向 长时间通过(不显示时间倒计时变化);东西方向长时间通过;释放按钮后则正常 通行。 二、实训计划和人员安排 经小组人员商定,分工完成任务,在课余时间完成。 若其中遇到什么问题,大家聚在一起讨论解决。具体分工如下: 1、程序编写:龚石冲 2、实体焊接:龚石冲 3、实训报告:罗仁敏 4、视频及PPT:曾建伟 三、实训选题分析 交通灯由东西南北四向灯,倒计时显示,人行横道通行指示标志等部分组成。其中东西南北四向灯中的每一向都由红、黄、绿三色灯组成;东西为一组,南北为一组。黄灯在红绿灯之间转换时亮。倒计时显示表示红、黄、绿灯亮时所剩时间。由于人行横道通行指示标志与红灯是同步的,所以在模拟交通灯时省略。交通会遇到一些突发情况。因此交通信号灯要设定一些特定功能,以防不时之需。

整个电路由单片机完成,控制部分由软件完成,硬件只负责响应。 四、方案设计 方案一:主控系统采用AT89C51单片机作为控制器,由定时器1间接控制通行倒计时及南北和东西的通行。由按键开关完成禁止通行,东西 通行,南北通行。

基于-51单片机的交通灯设计

师大学 电气工程及自动化
实习报告
姓 名: 班 级: 学 号: 实习科目:单片机实训 指导教师: 实习时间:

智能交通信号灯
摘要
本设计是在熟练掌握单片机及其仿真系统使用方法基础上,综合应用单片机原理、微 机原理等课程方面的知识,设计一个采用 STC89C52 单片机控制的交通灯控制电路。该设计 结合实际情况给出了一种简单低成本城市交通灯控制系统的硬件及软件设计方案、各个路 口交通灯的状态循环显示,并对程序流程图进行详细讲解分析。交通在人们的日常生活中 占有重要的地位,随着人们社会活动的日益频繁,这点更是体现的淋漓尽致。交通信号灯 的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有 明显效果。近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制 检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核 心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完 善。根据给出的要求设计交通灯东西、南北两干道交于一个十字路口各干道有一组红、 黄、绿三色的指示灯指挥车辆和行人安全通行。红灯亮禁止通行绿灯亮允许通行。黄灯亮 提示人们注意红、绿灯的状态即将切换且黄灯亮的时间为东西、南北两干道的公共停车时 间。
关键词:电子线路、STC89C52、交通灯

目录
第一章 引言.................................................................. 1 1.概述 ...................................................................... 1 2.设计目的 .................................................................. 4 3.设计要求 .................................................................. 4 4.实验原理 .................................................................. 4 第二章 芯片与元件............................................................ 5 1.MCU ....................................................................... 5 2.74HC573.................................................................... 6 3.led 数码管 ................................................................. 6 第三章 外围电路.............................................................. 6 1.单片机最小系统............................................................. 6 2.数码管显示电路............................................................. 7 3.12 位流水灯 ................................................................ 8 第四章 整体设计.............................................................. 8 1.交通控制系统总体设计....................................................... 8 2.单片机交通控制系统的基本构成及原理......................................... 8 3.系统软件程序的设计......................................................... 9 第五章 总结................................................................. 10 参考文献.................................................................... 11 附录 A 智能交通灯电路原理图 ................................................. 12 附录 B 智能交通灯汇编源程序 ................................................. 13

基于单片机的十字路口交通灯控制系统设计

长沙航空职业技术学院毕业设计(论文) 题目:基于单片机的十字路口 交通灯控制系统设计 学生姓名 系别航空电子电气工程系 专业应用电子技术专业 学号 指导教师 职称

目录 摘要 (2) 前言 (4) 第一章绪论 (5) 1.1背景 (5) 1.2 设计的目的及意义 (5) 1.3 交通灯控制系统设计的任务与要求 (5) 1.4 设计实现的主要功能 (6) 第二章交通灯的总体方案设计与论证 (7) 2.1 显示界面方案 (7) 2.2 输入方案 (7) 第三章交通灯原理分析 (8) 3.1 交通灯显示时序的理论分析 (8) 3.2 交通灯显示的理论分析 (9) 3.2.1倒计时显示的理论分析 (9) 3.2.2状态灯显示的理论分析 (10) 第四章交通灯系统硬件设计 (11) 4.1 交通灯系统设计芯片选择 (11) 4.2.1系统构成: (12) 4.2.2七段数码管介绍: (12) 第五章交通灯系统软件设计 (14) 5.1程序设计流程图 (14) 5.2 交通灯系统编程信息 (16) 第六章交通灯的仿真及调试 (17) 6.1 Proteus软件仿真 (17) 6.2功能调试 (18) 6.3 交通灯实物调试 (19) 结论 (21) 致谢 (22) 参考文献 (23) 附录 A(源程序) (24) 附录 B(电路原理图) (27) 附录 C(PCB图) (28)

摘要 近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。 十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。那么靠什么来实现这井然秩序呢?靠的就是交通信号灯的自动指挥系统。交通信号灯控制方式很多。本系统采用MCS-51系列单片机AT89C51为中心器件来设计交通灯控制器,实现了能根据实际车流量通过8051芯片的P1口设置红、绿、黄灯燃亮时间的功能;红绿灯循环点亮,倒计时剩3秒时黄灯警示,显示时间通过P2口输出至双位数码管。本系统设计周期短、可靠性高、实用性强、操作简单、维护方便、扩展功能强。 关键词:单片机;交通灯;AT89C51

基于单片机交通灯课程设计报告书

三峡职业学院 课程设计 课题名称交通灯控制系统设计 交通灯控制系统设计 摘要:本系统由单片机最小系统、按键(开关)、LED 显示等等组成交通灯演示系统。系统用红、黄、绿三个发光二极管模拟交通灯的红灯、黄灯、绿灯的功能。系统除基本交通灯功能外,还具有倒计时(15秒)、时间设置、紧急情况(按键模拟传感器)处理等功能。 关键词:AT89C51,交通规则 引言:随着日新月异的电子变革,电子产品发生了突飞猛进的巨变,而在其中AT89C51扮演着一个重要的角色,AT89C51单片机具有广泛性、工具性、基础性的几个特点。单片机应成为中等技术人员的重要技术知识层面。近年来,我国工程技术队伍的梯队建设有了很大的进展。各类高职、高专如雨后春笋,涉电专业普遍开设单片机类课程。直观性表现在尽可能让我们在学习基本原理时能直观地看到相关实物及实物表演,使基本原理能实现形象化的表达;实践性表现在我们要通过许多实际操作来理解与掌握单片机的本质与技能;综合性表现在最终能使我们达到运用知识与技能来完成一个应用系统开发的全过程,有助于大学生动手能力的培养和提高,课程设计就是一门应用性很强的课程。如何让我们在学好基础知识的同时,迅速掌握设计应用技术,其中,实验与课程设计环节起着非常重要的作用。对我们学习和掌握单片机设计技术起到积极的作用。 一、方案比较、设计与论证

(1) 电源提供方案 为使模块稳定工作,须有可靠电源。我们考虑了两种电源方案 方案一:采用独立的稳压电源。此方案的优点是稳定可靠,且有各种成熟电路可供选用;缺点是各模块都采用独立电源,会使系统线路变复杂,且可能影响系统各模块的电路电平。 方案二:采用干电池提供电源。该方案的优点是系统简明扼要,线路易于梳理,节约成本;缺点是输出功率不高。 综上所述,我们选择第二种方案。 (2) 显示界面方案: 该系统要求完成数码管倒计时(15s)、状态灯发光二极管(红、黄、绿)的显示功能。基于上述原因,我们考虑了二种方案: 方案一:东西南北四个方向分别采用两位数码管显示倒计时。这种方案只显示有限的符号和数码字苻,并且制作PCB图时有许多的线相交,线路十分的复杂,不易制作原理图与PCB图,无法胜任题目要求。 方案二:东西南北四面各自采用红、黄、绿三个发光二极管显示,采用一个两位数码管显示倒计时,主要优点是易于调整元件在硬制板上摆放的位置,同时也易于PCB图的制作。 综上所述,我们选择方案二。 (3) 输入方案: 题目要求系统能即时的处理外部紧急情况产生的中断,我们讨论了两种方案: 方案一:采用矩阵键盘。该方案的优点是: 可提供较多I/O 口,实现更多的外部中断。直接站单片机的接口少的特点,但操作起来稍显复杂,而且编程也趋于复杂。 方案二:直接在IO口线上接上按键开关。因为设计时精简和优化了电路。 由于该系统对于交通灯等发光二极管的控制,只用单片机本身的I/O 口就可实现,只要一个开关来模拟一个外部的紧急中断,且本身的计数器及RAM已经够用,故选择方案二。 (4) 系统方案: 本系统的硬件采用模块化设计,以单片机控制器为核心,与LED信号灯电路等组成单片机控制信号系统.

基于单片机的交通灯

毕业设计说明书 基于单片机的交通灯 控制系统设计 专业 电气工程及其自动化 学生姓名 郭 恒 燕 班级 BD 电气042 学 号 0420610228 指导教师 张 兰 红 完成日期 2008年6月10日

基于单片机的交通灯控制系统设计 摘要:对基于单片机的交通灯控制系统进行了设计。系统功能为:以MCS-51系列单片机作为控制核心,设计并制作交通灯控制系统,东西南北四个方向具有左拐、右拐、直行及行人4种通行指示灯,用计时器显示路口通行转换剩余时间,在特种车辆如119、120通过路口时,系统可自动转为特种车辆放行,其他车辆禁止通行状态。 在对系统功能分析的基础上,提出了三种设计方案,经比较,选择性能较优的LED动态循环显示方案进行了设计。设计包括硬件和软件两大部分。硬件部分包括单片机最小系统、时间显示、交通灯显示三部分。选用Atmel公司的AT89S52单片机作为控制核心,东西南北四个方向设置了LED时间显示和交通灯显示,时间显示采用三位LED显示器,交通灯显示则采用红绿双色高亮发光二极管来模拟。软件采用了模块化的设计方法,主要分为主程序、定时器中断服务子程序、倒计时显示子程序、交通灯模拟显示子程序四部分。 在实验板上制作了基于单片机的交通灯控制系统样机,对硬件和软件部分分别进行了调试,再进行了软硬件联调,得到的交通灯控制系统样机实物,可圆满地完成毕业设计任务书所要求的功能。 关键词: 交通灯;单片机;AT89S52

基于单片机的交通灯控制系统设计 1 概述 1.1 课题研究背景与意义 随着经济的增长和人口的增加,人们生活方式不断变化,人们对交通的需求不断增加。城市中交通拥挤、堵塞现象日趋严重,由此造成巨大的经济与时间损失。资料显示,对日本东京268个主要交叉路口的调查估计表明:每年在交叉路口的时间延误,折成经济报失为20亿美元;而在我国北京市,当早晚交通高峰时,交叉路口处的排队长度竟达1000多米,有的阻车车队从一个交叉路口延伸到另一个交叉路口,这时一辆车为通过一交叉路口,往往需要半个小时以上,时间损失相当可观。 我国是一个历史悠久、人口众多的国家,城市数量随着社会的发展不断增多。随着城市化进程的大大加快,诱发的交通需求急剧增长,供需矛盾不断激化,严重的交通问题也随之而来。人、车、路三者关系的协调,已成为交通管理部门需要解决的重要问题之一。城市交通控制系统是用于城市交通数据监测、交通信号灯控制与交通疏导的计算机综合管理系统,它是现代城市交通监控指挥系统中最重要的组成部分。 十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊,这一切要归功于城市交通控制系统中的交通灯控制系统。交通灯控制系统对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果,使城市交通得以有效管理。 交通灯可以采用PLC、单片机等控制方法。利用单片机实现对交通信号灯的实时控制,只要采用一块单片机,加上简单的接口与驱动放大电路,即可实现,具有成本低,可靠性高的特点。 1.2 课题设计内容 本课题对基于单片机的交通灯控制系统进行设计。以MCS-51系列单片机为控制核心,设计并制作交通灯控制系统,用于十字路口的车辆及行人的交通管理。东西南北四个路口具有左拐、右拐、直行及行人4种通行指示灯,并分别用计时器显示路口通行转换剩余时间,在特种车辆如119、120通过路口时,系统可自动转为特种车辆放行,其他车辆禁止通行状态。 设计交通灯控制系统硬件电路与软件控制程序,对硬件电路与软件程序分别进行调试,并进行软硬件联调,要求获得调试成功的实物。 2 系统设计 2.1 设计方案论证 根据设计内容要求,提出了如下三种方案: 方案一:采用AT89S52单片机作为控制核心,采用四组高亮红绿双色二极管作

51单片机交通灯设计报告

课程设计说明书 课程名称:《单片机技术》 设计题目:交通灯设计 学院:电子信息与电气工程学院 学生姓名: 学号: 专业班级: 指导教师: 2017年4 月20日

课程设计任务书

交通灯设计 摘要: 近年来随着科技的发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面的知识是不够的,还应该根据具体硬件结构软硬结合,加以完善。十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊,那么靠什么来实现这井然秩序呢?靠的就是交通信号灯的自动指挥系统。交通信号灯控制方式很多。本系统采用51系列单片机ATMEL89C51为核心控制器件来设计交通信号灯控制器,实现亮绿灯通行,亮黄灯闪烁并发声警示,亮红灯禁止通行的功能,并显示通行或禁止通行倒计时,紧急按键信号灯加时和紧急按键南北、东西红绿灯跳变。本系统使用性强,操作简单,容易实现,扩展功能强,可自行修改程序扩展自己想要实现的功能。 关键词:交通灯,单片机,复位电路

目录 1. 设计背景 (1) 1.1设计原因 (1) 1.2个人意义 (1) 2.设计方案 (1) 2.1总体方案提出 (1) 2.2稳压电源方案设计与分析 (1) 2.3复位电路方案设计与分析 (2) 3. 方案实施 (2) 3.1总体设计框图 (2) 3.2硬件设计 (3) 3.3软件设计 (6) 3.4电路仿真 (10) 3.5制板子与安装过程 (11) 3.6软硬件调试 (11) 4. 结果与结论 (12) 5 收获与致谢 (12) 6. 参考文献 (12) 7. 附件 (13) 7.1硬件电路图 (13)

基于单片机交通灯课程设计

重庆三峡职业学院 课程设计 课题名称交通灯控制系统设计 交通灯控制系统设计 摘要:本系统由单片机最小系统、按键(开关)、LED显示等等组成交通灯演示系统。 系统用红、黄、绿三个发光二极管模拟交通灯的红灯、黄灯、绿灯的功能。系统除基本交通灯功能外,还具有倒计时(15秒)、时间设置、紧急情况(按键模拟传感器)处理等功能。 关键词:AT89C51,交通规则 弓I 言:随着日新月异的电子变革,电子产品发生了突飞猛进的巨变,而在其中AT89C51扮演着一个重要的角色,AT89C51单片机具有广泛性、工具性、基础性的几个特点。单片机应成为中等技术人员的重要技术知识层面。近年来,我国工程技术队伍的梯队建设有了很大的进展。各类高职、高专如雨后春笋,涉电专业普遍开设单片机类课程。直观性表现在尽可能让我们在学习基本原理时能直观地看到相关实物及实物表演,使基本原理能实现形象化的表达;实践性表现在我们要通过许多实际操作来理解与掌握单片机的本质与技能;综合性表现在最终能使我们达到运用知识与技能来完成一个应用系统开发的全过程,有助于大学生动手能力的培养和提高,课程设计就是一门应用性很强的课程。如何让我们在学好基础知识的同时,迅速掌握设计应用技术,其中,实验与课程设计环节起着非常重要的作用。对我们学习和掌握单片机设计技术起到积极的作用。

一、方案比较、设计与论证

(1)电源提供方案 为使模块稳定工作,须有可靠电源。我们考虑了两种电源方案 方案一:采用独立的稳压电源。此方案的优点是稳定可靠,且有各种成熟电路可供选用;缺点是各模块都采用独立电源,会使系统线路变复杂,且可能影响系统各模块的电路电平。 方案二:采用干电池提供电源。该方案的优点是系统简明扼要,线路易于梳理,节约成本;缺点是输出功率不高。 综上所述,我们选择第二种方案。 (2)显示界面方案: 该系统要求完成数码管倒计时(15s)、状态灯发光二极管(红、黄、绿)的显示功能。基于上述原因,我们考虑了二种方案: 方案一:东西南北四个方向分别采用两位数码管显示倒计时。这种方案只显示有限的符号和数码字苻,并且制作PCB图时有许多的线相交,线路十分的复杂,不易制作原理图与PCB图,无法胜任题目要求。 方案二:东西南北四面各自采用红、黄、绿三个发光二极管显示,采用一个两位数码管显示倒计时,主要优点是易于调整元件在硬制板上摆放的位置,同时也易于PCB图的制作。 综上所述,我们选择方案二。 (3)输入方案: 题目要求系统能即时的处理外部紧急情况产生的中断,我们讨论了两种方案: 方案一:采用矩阵键盘。该方案的优点是: 可提供较多I/O 口,实现更多的外部中断。直接站单片机的接口少的特点,但操作起来稍显复杂,而且编程也趋于复杂。 方案二:直接在IO 口线上接上按键开关。因为设计时精简和优化了电路。 由于该系统对于交通灯等发光二极管的控制,只用单片机本身的I/O 口就可实现,只要一个开关来模拟一个外部的紧急中断,且本身的计数器及RAM E经够用,故选择方案二。 (4)系统方案: 本系统的硬件采用模块化设计,以单片机控制器为核心,与LED信号灯电路等组成单片机控制信号系统? 单 片 机

(完整)基于89C51单片机交通灯课程设计要点

(完整)基于89C51单片机交通灯课程设计要点 编辑整理: 尊敬的读者朋友们: 这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望((完整)基于89C51单片机交通灯课程设计要点)的内容能够给您的工作和学习带来便利。同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。 本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为(完整)基于89C51单片机交通灯课程设计要点的全部内容。

华北水利水电学院 基于C51单片机 交通灯课程设计实验报告 姓名:田坤 班级:125 专业:电子信息科学与技术 指导老师:辛艳辉刘明堂 2013年1月16日 摘要 近年来,随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,正在不断的应用到实际生活中,并且根据具体硬件结构软硬件结合,加以完善。 十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊.那么靠什么来实现这井然秩序呢?靠的就是交通信号灯的自动指挥系统。交通信号灯控制方式很多。本系统采用MCS-51系列单片机STC89C51为中心器件来设计交通灯控制器,实现了通过信号灯对路面状况的智能控制。从一定程度上解决了交通路口堵塞、车辆停车等待时间不合理、急车强通等问题.系统具

有结构简单、可靠性高、成本低、实时性好、安装维护方便等优点,有广泛的应用前景。 关键词:交通灯 单片机 数码管 一 。总体设计思路 1.1设计目的及思路 设计目的 了解交通灯管理的基本工作原理,熟练掌握STC89C51的工作原理和应用编程,熟悉STC89C51单片机并行接口的各种工作方式和应用,并了解计数器/定时器的工作方式和应用编程外部中断的方法,掌握多位LED 显示问题的解决。 设计思路 (1)分析目前交通路口的基本控制技术,提出自己的交通控制的初步方案。 (2)确定系统交通控制的总体设计,增加了倒计时显示提示。 (3)进行显示电路。 (4)进行软件系统的设计。 1。2 实际交通灯显示时序及状态转换的理论分析 图1所示为红绿灯转换的状态图。 图1 红绿灯状态转换图 表1 十字路口指示灯燃 亮方 S1 S4 S3 S2

51单片机交通灯课程设计

第一章单片机概述 单片机是20世纪70年代中期发展起来的一种大规模集成电路器件。它在一块芯片内芯片内集成了计算机的各种功能部件,构成一种单片式的微型计算机。20世纪80年代以来,国际上单片机的发展迅速,其产品之多令人目不暇接,单片机应用不断深入,新技术层出不穷。 单片机的应用技术是一项新型的工程技术,其内涵随着单片机的发展而发展。由于MCS-51系列的单片机的模块化结构比较典型、应用灵活,为许多大公司所采纳,使8051系列的单片产品日新月异。在Intel公司20世纪80年代初推出MCS-51系列单片机以后,世界上许多著名的半导体厂商相继生产和这个系列兼容的单片机,使产品型号不断地增加、品种不断丰富、功能不断加强,在国内外单片机应用中占有重要地位。由于单片机具有功能强、体积小、价格低等一系列优点,在各个领域都有广泛的应用,有力地推动了各行各业的技术改造和产品更新换代。 20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,

产品更新换代的节奏也越来越快。 第二章MSC-51芯片简介 8051是MCS-51系列单片机的典型产品。 8051单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,现在我们分别加以说明: ·中央处理器:

中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。 ·数据存储器(RAM) 8051内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的RAM 只有128个,可存放读写的数据,运算的中间结果或用户定义的字型表。 ·程序存储器(ROM): 8051共有4096个8位掩膜ROM,用于存放用户程序,原始数据或表格。 ·定时/计数器(ROM): 8051有两个16位的可编程定时/计数器,以实现定时或计数产生中断用于控制程序转向。 ·并行输入输出(I/O)口: 8051共有4组8位I/O口(P0、 P1、P2或P3),用于对外部数据的传输。 ·全双工串行口: 8051内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。

基于51单片机的智能交通灯课程设计

简易智能交通灯设计 1、设计背景 自从1886两个德国人发明了第一辆汽车交通灯改变了交通路况,交通问题也渐渐被人们所重视。从英国伦敦街头的第一个以燃煤气为光源的红,蓝两色的机械扳手式信号灯,到现在以电为光源的红黄绿三色交通灯,不知不觉中交通信号灯在人们日常生活中占据了重要地位。随着人们社会活动日益增加,经济发展,汽车数量急剧增加,城市道路日渐拥挤,交通灯更加显示出了它的功能,使得交通得到有效管制,对于交通疏导,提高道路导通能力,减少交通事故有显著的效果。 近年来,随着科技的飞速发展,电子器件也随之广泛应用,其中单片机也不断深入人民的生活当中。本次课程设计以模拟交通灯系统利用单片机AT89C51作为核心元件,实现了通过信号灯对路面状况的智能控制。在一定程度上解决了交通路口堵塞、车辆停车,特殊情况的交通灯等待时间不合理、急车强通等问题。在该次的设计系统具有结构简单、可靠性高、成本低、实时性好、安装维护方便等优点,有广泛的应用前景。 本模拟系统由单片机软件系统,两位8段数码管和LED灯显示系统。和复位电路控制电路等组成,较好的模拟了对交通路面的控制。 1.1 设计思路 (1)分析目前交通路口的基本控制技术以及各种通行方案,并以此为基础提出自己的交通控制的初步方案。 (2)确定系统交通控制的总体设计,包括,十字路口具体的通行禁行方案设计以及系统应拥有的各项功能,在这里,本设计除了有信号灯状态控制能实现基本的交通功能,还增加了倒计时显示提示,并基于实际情况,又增加了紧急状况处理和通行时间可调这两项特特殊功能。 (3)进行倒计时显示电路,灯状态电路,特殊情况按键电路的设计和对各器件的选择及连接,大体分配各个器件及模块的基本功能要求。 (4)进行软件系统的设计和仿真中,程序在KEIL软件中用单片机c语言编写,电路的搭建和仿真实现是在proteus软件中实现的。在本次课程设计中通过对单片机内部结构和工作情况做了一定的研究,充分了解定时器,中断以及延时原理,为本次智能交通灯的设计提供了理论基础。

单片机交通灯课程设计

单片机原理及应用课程设计报告 系别:物理系 专业:电子信息工程 指导教师: 班级:1504 学号: 姓名: 2018.5

课程设计任务书 目录

一、绪言 (1) 二、方案比较与论证 (1) 2.1 系统整体流程图 (1) 2.2 单片机的选择方案论证 (1) 2.3 89C51单片机引脚功能说明 (2) 2.4单片机最小系统 (5) 三、硬件电路设计 (6) 3.1 交通灯控制系统电路图 (6) 3.2 晶振电路的设计 (7) 3.3 LED灯电路的设计 (7) 3.4 主要元器件选择 (8) 四、程序设计 (8) 五、交通灯控制系统仿真 (10) 六、结束语 (11) 七、参考文献 (11)

一、绪言 近年来,随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,正在不断的应用到实际生活中,并且根据具体硬件结构软硬件结合,加以完善。 十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。那么靠什么来实现这井然秩序呢?靠的就是交通信号灯的自动指挥系统。交通信号灯控制方式很多。本系统采用单片机AT89C51为中心器件来设计交通灯控制器,实现了通过信号灯对路面状况的智能控制。从一定程度上解决了交通路口堵塞、车辆停车等待时间不合理、急车强通等问题。系统具有结构简单、可靠性高、成本低、实时性好、安装维护方便等优点,有广泛的应用前景。 二、方案比较与论证 2.1 系统整体流程图 2.2 单片机的选择方案论证 方案一:采用可编程逻辑期间CPLD 作为控制器。CPLD可以实现

基于单片机的智能交通红绿灯控制系统设计

1选题背景 今天,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。 信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。在交通中管理引入单片机交通灯控制代替交管人员在交叉路口服务,有助于提高交通运输的安全性、提高交通管理的服务质量。并在一定程度上尽可能的降低由道路拥挤造成的经济损失,同时也减小了工作人员的劳动强度。 关键词:AT89C51;7448,LED 2方案论证 2.1设计任务 设计基于单片机的智能交通红绿灯控制系统,要求能通过按键或遥控器设置系统参数,系统运行时,“倒计时等信息”能通过数码管或点阵发光管显示,设计时应考虑交通红绿灯控制的易操作性及智能性。以单片机的最小系统为基础设计硬件,用汇编语言、或C语言设计软件。通过本设计可以培养学生分析问题和解决问题的能力,掌握Mcs51单片机的硬件与软件设计方法,从而将学到的理论知识应用于实践中,为将来走向社会奠定良好的基础。 东西(A)、南北(B)两干道交于一个十字路口,各干道有一组红、黄、绿三个指示灯,指挥车辆和行人安全通行。红灯亮禁止通行,绿灯亮允许通行,黄灯亮时车辆及行人小心通过。红灯的设计时间为45秒,绿灯为40秒,黄灯为5秒。 2.2 方案介绍 方案1设计思想: 采用分模块设计的思想,程序设计实现的基本思想是一个计数器,选择一个单片机,其内部为一个计数,是十六进制计数器,模块化后,通过设置或程序清除来实现状 态的转换,由于每一个模块的计数多不是相同,这里的各模块是以预置数和计数器计 数共同来实现的,所以要考虑增加一个置数模块,其主要功能细分为,对不同的状态输 入要产生相应状态的下一个状态的预置数,如图中A道和B道,分别为次干道的置数选 择和主干道的置数选择。 方案2 设计思想: 由两个传感器监视南北方向即A道与东西方向即B道的车辆来往情况,设开关K=1 为有车通过,K=0为没有车通过。则有以下四种情况: Ka=1时:Kb=0,表示A有车B没有车,则仅通行B道:

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

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

摘要 本设计是针对交通灯系统的设计,由单片机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)

基于51单片机的智能交通灯课程设计

目录 摘要 (1) 1 系统硬件设计 (2) 1.1 80C51单片机引脚图及引脚功能介绍 (2) 1.2 74LS245引脚图及功能 (4) 1.3 八段LED数码管 (5) 1.4 硬件系统总控制电路 (6) 1.5各模块控制电路 (8) 1.5.1 交通灯控制电路 (8) 1.5.2 倒计时显示电路 (9) 1.5.3 紧急通行电路 (12) 1.5.4 声音警示装置 (13) 2 系统程序设计 (14) 2.1 主程序流程图 (14) 2.2 显示子程序流程图 (15) 3 心得体会 (16) 参考文献 (17) 附录源程序 (18)

摘要 近年来随着科技的飞速发展,一个以微电子技术、计算机技术和通信技术为先导的信息革命正在蓬勃发展。计算机技术作为三者之一,怎样与实际应用更有效的结合并发挥其作用。单片机作为计算机技术的一个分支,正在不断的应用到实际生活中,同时带动传统控制检测的更新。在实时检测和自动控制的应用系统中,单片机往往是作为一个核心部件使用,针对具体应用对象的特点,配以其它器件来加以完善。 十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。那么靠什么来实现交通的井然秩序呢?靠的是交通信号灯的自动指挥系统,来实现交通的井然有序。交通信号灯控制方式很多。本系统采用美国ATMEL公司生产的单片机AT80S51,以及其它芯片来设计交通灯控制。实现了通过AT89S51芯片的P1口设置红、绿灯点亮的功能,输出设置显示时间。交通灯的点亮采用发光二极管实现,时间的显示采用七段数码管实现。单片机系统采用的直流供电。 关键词:AT89S51单片机;智能交通灯控制系统;

51单片机实现交通灯的设计

51单片机实现交通灯的设计 1.器材: 51单片机开发板一块; LED灯 2.功能: 东西向绿灯亮若干秒,黄 灯闪烁5 次后红灯亮,红灯亮后,南 北向由红灯变为绿灯,若干秒后南北 向黄灯闪烁5 此后变红灯,东西向变 绿灯,如此重复。 3. 程序: #include #define uchar unsigned char #define uint unsigned int sbit r1=P0^0;//东西向灯;r代表red,y代表yellow,g代表green sbit y1=P0^1; sbit g1=P0^2; sbit r2=P0^3;//南北向灯 sbit y2=P0^4; sbit g2=P0^5; uchar count=0; uchar type=1;//闪烁次数,操作类型变量 void delay(unsigned int t)//延时程序 { while(--t); } void light()//显示程序实现所需功能 { switch(type) { case 1: r1=1;y1=1;g1=0;//1表示灯灭,0表示灯亮,即东西向绿灯与南北向红灯亮r2=0;y2=1;g2=1; delay(62500);//延时一下,为下一个显示作准备 type=2;//type赋值为2,即执得case 2; break; case 2: delay(62500);//消除影响,使led工作稳定; y1=~y1;g1=1;//进行闪烁,即东西向黄灯闪烁,绿灯关闭 if(++count != 10) return; count=0; type=3; break; case 3: r1=0;y1=1;g1=1;//东西向红灯,南北向绿灯亮 r2=1;y2=1;g2=0;

相关文档
最新文档