当前位置:首页 » 课程大全 » 交通灯控制课程设计

交通灯控制课程设计

发布时间: 2020-11-28 09:49:49

Ⅰ 微机原理课程设计:交通灯控制系统 (一)任务: 设计一个普通十字路口,交通灯的控制可分东西向和南北

http://..com/question/212884551.html

参考。

Ⅱ 简易交通灯控制电路课程设计

这是个模板
自己简单修改一下吧
#include <reg51.h>
#include <intrins.h>

#define uchar unsigned char
#define uint unsigned int

sbit RED_ZHU = P0^0;//对应L1LED 代表主道路红灯
sbit YELLOW_ZHU = P0^1;//对应L2LED 代表主道路黄灯
sbit GREEN_ZHU = P0^2;//对应L3LED 代表主道路绿灯

sbit RED_ZHI = P0^4;//对应L4LED 代表支道路绿灯
sbit YELLOW_ZHI = P0^5;//对应L5LED 代表支道路绿灯
sbit GREEN_ZHI = P0^6;//对应L6LED 代表支道路绿灯

/*********************************************************
500ms延时函数
晶振:11.0592MHz
*********************************************************/
void delay(unsigned char j)
{
unsigned char k;
unsigned int i;
for(;j>0;j--)
{
for(i=1250;i>0;i--)
{
for(k=180;k>0;k--);
}
}
}

/*********************************************************
主函数
*********************************************************/
main()
{
uchar t;
P0=0xff;
P3=0xff;
RED_ZHU=0; //第一个状态
RED_ZHI=0;
delay(10);
while(1)
{
RED_ZHU=1; //第二个状态
RED_ZHI=0;
GREEN_ZHU=0;
delay(60);

for (t=6;t>0;t--) //第三个状态
{
GREEN_ZHU=~GREEN_ZHU;
delay(1);
}

YELLOW_ZHU=0;
GREEN_ZHU=1;
delay(10);
YELLOW_ZHU=1;

RED_ZHU=0; //第四个状态
RED_ZHI=1;
GREEN_ZHI=0;
delay(50);

for (t=6;t>0;t--) //第五个状态
{
GREEN_ZHI=~GREEN_ZHI;
delay(1);
}

YELLOW_ZHI=0;
GREEN_ZHI=1;
delay(10);

YELLOW_ZHI=1;
}

}

Ⅲ 急求 电子线路课程设计 ——简易交通灯控制电路的设计 (multisim)

简易交通灯控制电路的设计
(multisim)确
我对好的

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

写完了
也不长
CODE SEGMENT
FLASHTIME EQU 01H

;黄灯闪烁三次
OUT 00H,AL
MOV 03H,BL
START:
OUT 12h,AL;点亮黄灯
MOV AX,02H
CALL Delay
OUT 00h,AL;熄灭所有灯
MOV AX,02H
CALL Delay
OUT 12h,AL;点亮黄灯
MOV AX,02H
CALL Delay
OUT 00h,AL;熄灭所有灯
MOV AX,02H
CALL Delay
OUT 12h,AL;点亮黄灯
MOV AX,02H
CALL Delay
OUT 00h,AL;熄灭所有灯
MOV AX,02H
CALL Delay

MAIN:
OUT 21h,AL
MOV AX,0AH
CALL Delay

OUT 22H,AL
MOV AX,FLASHTIME
CALL Delay
OUT 20H,AL
MOV AX,FLASHTIME
CALL Delay
OUT 22H,AL
MOV AX,FLASHTIME
CALL Delay
OUT 20H,AL
MOV AX,FLASHTIME
CALL Delay
OUT 22H,AL
MOV AX,FLASHTIME
CALL Delay
OUT 20H,AL
MOV AX,FLASHTIME
CALL Delay

OUT 0CH,AL
MOV AX,10H
CALL Delay

OUT 14H,AL
MOV AX,FLASHTIME
CALL Delay
OUT 04H,AL
MOV AX,FLASHTIME
CALL Delay
OUT 14H,AL
MOV AX,FLASHTIME
CALL Delay
OUT 04H,AL
MOV AX,FLASHTIME
CALL Delay
OUT 14H,AL
MOV AX,FLASHTIME
CALL Delay
OUT 04H,AL
MOV AX,FLASHTIME
CALL Delay

JMP MAIN
CODE ENDS

Delay:
CALL Delay1S
DEC AX
CMP AX,0
JNZ Delay
RET

Delay1S:
MOV CX,04FFFH
Delayloop:
DEC CX
CMP CX,0
JNZ Delayloop
RET
END

Ⅳ 交通灯课程设计

交通灯:红绿灯交替亮;当绿灯亮的时间还剩5秒时,黄灯同时亮;红绿灯的两的时间分别可任意调整(〈100秒),数码显示时间
我亲自教你

Ⅵ 急!!!求单片机8255交通灯控制课程设计报告

你的题目写的太简单了,我只能看出来ABC口的地址是一样的
底下是我的论文,倒计时是用做的,红绿灯是用发光二极管做的
你自己在里面截吧
单片机控制交通灯的设计

论文目录
一、 摘要及关键字、参考文献

二、 方案设计与论证

三、正文:一、功能描述
二、系统硬件电路的设计
三、系统主要程序的设计

四、电路总原理图

五、主程序

一 摘要:
本系统采用单片机、键盘、LED显示、交通灯演示系统组成。设计一个用于十字路口的车辆及行人的交通管理,系统包括左拐、右拐、及行基本的交通灯的功能,计时牌显示路口通行转换剩余时间,在出现紧急情况时可由交通手动实现全路口车辆禁行而行人通行状态。另外,在特种车辆如119、120通过路口时,系统可自动转为特种车辆放行,其他车辆禁止通行的状态,15s后系统自动恢复正常管理。其他还有 84s与60s通行管理转换等功能。采用数码管与点阵LED相结合的显示方法,既要求倒计时数字输出,又要求有状态灯输出等。

关键字:
单片机系统(AT89C51)控制8255、交通规则、LED显示、动态扫描、按键输入、分时段调整

参考文献:《单片机课程设计指导》 北京航天航空大学出版社
《基于MCS-51系列的单片机原理的应用设计》 国防工业出版社
《单片机实训教程》 北京大学出版社
《单片机系统原理及应用》
《微机原理及应用》

二 、方案设计与论证
1电源提供方案:
采用独立的稳压电源,此方案稳定可靠,且有各种成熟电路可供选用

2显示界面方案
采用数码管和点阵LED相结合的方法,因为实际既要求倒计时施主输出,又要求又状态灯输出等,为方便观看并考虑到现实状况,用数码管与LED分别显示时间和提示信息。这种方案既满足系统功能要求,又减少了系统实现的复杂度。

3输入方案
直接在IO口上接按键开关。因为设计时精简和优化了电路,所以剩余口的资源还比较多。

4主控制方案
采用AT89C51单片机作为控制器,控制8255实行通行倒计时及左拐、右拐、直行、行人通行指示采用单块LCD液晶点阵显示器。这种方案设计占用单片机的端口最少,硬件也少。耗电也最小;

系 统 框 图

正 文
一、功能描述
本系统由单片机系统、键盘、发光二极管、交通灯演示系统组成,单片机作为主控制器用于十字路口的车辆及行人的交通管理,每个方向具有左拐、右拐、直行及行人4种通行指示灯,计时牌显示路口通行转换剩余时间。另外,在特种车辆如119、120通过路口时,系统可自动转为特种车辆放行,其他车辆禁止通行的状态,15s后系统自动恢复正常管理。并有手动控制分时段 84s与60s通行管理转换等功能。
二、系统硬件电路的设计
整套电路系统由控制系统模块、通行灯输出控制显示模块、时间显示模块、时间显示模块和自动特种车辆控制模块等组成。
1、主控制系统
单片机的P0口用于控制8255。8255的PA口和PB口用于控制南北及东 西的通行灯,。PC口及P3.0~P3.2口用于4组2位LED计时器的控制,特种车通过时使用外中断1口(P3.3),手动自动转换采用P1.0按键。
选择8255的工作方式0,在这种情况下三个端口都可以由程序设置为输入和输出。

2、通行灯输出控制
道口交通灯指示采用高亮度红绿双色发光二极管,左拐、直行、右拐及行人各一个。当发光电流为6mA时,按公式R=(5-1.8)/0.006计算,限流电阻应为510Ω.由于南北通行时双向指示牌相同,因此每个端口应具有12mA的吸收电流能力。图7.4所示为指示灯电路图。

3、时间显示模块
道口通行剩余时间采用高亮红色7段LED发光数码管显示,采用共阳数码管,如用单片机吸收电流驱动,列扫描驱动使用三极管,按每段6mA电流算,全显示字形“8”时,每个数码管需6mA×8=48mA。由于时间显示每个道口相同,4组需192mA,因此设计中采用中功率三极管9012.由于单片机每个断码输出口需吸收24mA 电流,因此在电路设计中也使用了驱动集成块74HC244。其显示驱动电路如图示。
4、特种车辆自动控制模块
自动道口灯在特种车辆到来时能自动关闭所有绿灯,让特种车通过。设计中采用红外线发生器作为特种车的发生器,使用实时中断来影响特种车的通行要求。红外线接收器一般采用电视机上用的一体化红外接收器,具有很高的灵敏度和较强的抗干扰能力.
5、电源电路
由于整个系统采用的电源电压需+5V电压,所以采用不可调的3端稳压器件,用常用的lm7850就可以满足系统电源的要求。LM7850三端集成稳压电源内部由准电压回路、恒流源、过流保护、过压保护和短路保护回路等8部分组成具有低功耗,高效率,波纹系数小,输出电压稳定等优点。

三、系统主要程序的设计
道口交通控制系统程序主要分为以下几个模块:初始化程序、主程序、定时中断程序和特种车实时响应程序等。
1、 初始化程序
初始化程序主要完成内存划,定时器的工作模式、中断方式等的设定。由于子程序调用较多,因此初始化时堆栈指针设于80H处。定时器T0、T1设为16位定时器模式,定时时间位50ms,为秒计时用,T1为通行结束闪烁用。
2、 主程序
主程序要负责总体程序管理功能,实现人机交换设定。由于采用动态扫描方式显示时间,因此主程序大部分时间要调用扫描显示程序。主程序流程图如下图示。

3、 外中断1中断服务程序
经过时,车中发射红外线信号,其信号被道口控制板上的接收器接收,并输出一个低电平处外中断1.中断处理程序流程图如下页图所示。

4、 定时服务中断程序
序主要用于行车与行人的通行指示,按照交通规则,红绿灯控制转换逻辑表如7.1表所列。
南北方向 端口 控制功能 120~110s 110~70s 70~60s 60~10s 10~0s
P*.7 左拐红 0 0 0 1 1
P*.6 左拐绿 1 1 1 0 0/1
P*.5 直行红 1 1 1 0 0
P*.4 直行绿 0 0 0/1 1 1
P*.3 右拐红 0 1 1 1 1
P*.2 右拐绿 1 0 0 0 0/1
P*.1 行人红 1 1 1 0 0
P*.0 行人绿 0 0 0/1 1 1
道口控制字 66H 6AH 6AH/7BH 99H 99H/DDH
东西方向 P*.7 左拐红 0 0 0 0 0
P*.6 左拐绿 1 1 1 1 1
P*.5 直行红 0 0 0 0 0
P*.4 直行绿 1 1 1 1 1
P*.3 右拐红 0 1 1 1 1
P*.2 右拐绿 1 0 0 0 0/1
P*.1 行人绿 0 0 0 0 0
P*.0 行人红 1 1 1 1 1
道口控制字 55H 59H 59H 59H 59H/5DH

通行规则如下:
(1) 车辆南北直行、各路右拐,南北向行人通行。南北向通行时间为1min,各路右拐比直行滞后10s开放。
(2) 车辆南北向左拐、各路右拐,行人禁行。通行时间为1min。
(3) 车辆东西向直行、各路右拐,东西向行人通行。东西向通行时间为1min,各路右拐比直行滞后10s开放。
(4) 车辆东西向左拐、各路右拐,行人禁行。通行时间为1min。

表中通行规则,是以给控制红绿灯端口送控制码的方式实现的。它的原理是,将按不同通行规则时的各路口的红绿灯亮灭情况转换为单片机端口控制码。其指示灯功能通过T0定时中断服务程序实现。
定时器T0定时益出中断周期为10ms,中断累计20次(即1s)时对120s倒计时单元减1操作。设计中将4种通行规则分成集中不同的亮灯方式,通过查询秒倒计时单元的数据,实现在不同的时间段给控制端口送不同的控制数据码。控制码分为5个时间段:84—74s、74—58s、58—48s、48—10s、10—0s。交通管理定时功能程序流程图如下页图所示。

5、 调试及性能分析

设计时按红绿交通灯控制程序和特种车辆经过中断程序两大部分电路进行测试。

1、 红绿交通灯控制程序
时器T0,直接按照表7.1中算好的数据码送出来控制灯,观察其逻辑状态是否符合要求。可多次、反复地进行调试,直至逻辑关系正确。值得注意的是,南北方向、东西方向的指示灯要同时调试。
2、 特殊车辆通行时红外线检测电路的调试
在模拟小车中放一块红外发射模块,将示波器输入端接在交通控制灯的红外接收模块的输出引脚上,当小车通过路口时,检测红外线是否被接收。若该脚输出为低电平,则说明可以收到信号,电路正常。
本系统以AT89C51单片机为核心,开发程序调试阶段采用W78E516B进行在线编程及修改,可大大加快调试进度。设计的交通灯可用于十字路口的车辆及行人的交通管理,显示采用2位7段数码管,可以很直观的显示红绿灯的开放和关闭的时间;设计中应用了两种倒计时显示方式, 84S 倒计时适用于车流量较大的城市,60s倒计时可用于中小型城市;功能完整,不仅有普通交通灯的指示功能,还增加了特种车辆自动通行功能。其控制功能和效果与真实道口管理红绿灯完全一致。

Ⅶ 微机接口课程设计 交通灯控制系统设计

C8255 EQU 203H ;8255 状态/命令口地址
P8255A EQU 200H ;8255 PA 口地址
P8255B EQU 201H ;8255 PB 口地址
P8255C EQU 202H ;8255 PC 口地址

DATA SEGMENT
DATA ENDS
STACK SEGMENT STACK
STA DW 50 DUP(?)
TOP EQU LENGTH STA
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACK
START:
MOV DX,C8255 ;A口输出
MOV AL,80H
OUT DX,AL

PUSH CS
POP DS
CALL STATUS0 ;初始状态(都是红灯)
MLOOP: CALL STATUS1 ;南北绿灯,东西红灯
CALL STATUS2 ;南北绿灯闪转黄灯,东西红灯
CALL STATUS3 ;南北红灯,东西绿灯
CALL STATUS4 ;南北红灯,东西绿灯闪转黄灯
JMP MLOOP

STATUS0:
MOV AL,0F0H ;南北红灯,东西红灯
MOV DX,P8255A
OUT DX,AL
MOV BL,10
CALL DELAY ;延时1秒
RET

STATUS1:
MOV AL,05AH ;南北红灯,东西红灯
MOV DX,P8255A
OUT DX,AL
MOV BL,50
CALL DELAY ;延时5秒
RET

STATUS2:
MOV CX,3 ;绿灯闪3次
FLASH: MOV AL,050H ;南北红灯,东西红灯
MOV DX,P8255A
OUT DX,AL
MOV BL,3
CALL DELAY ;延时0.3秒
MOV AL,05AH ;南北红灯,东西红灯
MOV DX,P8255A
OUT DX,AL
MOV BL,3
CALL DELAY ;延时0.3秒
LOOP FLASH
MOV AL,0FAH ;南北红灯,东西红灯
MOV DX,P8255A
OUT DX,AL
MOV BL,10
CALL DELAY ;延时1秒
RET

STATUS3:
MOV AL,0A5H ;南北红灯,东西绿灯
MOV DX,P8255A
OUT DX,AL
MOV BL,50
CALL DELAY ;延时5秒
RET

STATUS4: ;南北红灯,东西绿灯闪转黄灯
MOV CX,3 ;绿灯闪3次
FLASH1: MOV AL,0A0H
MOV DX,P8255A
OUT DX,AL
MOV BL,3
CALL DELAY ;延时0.3秒
MOV AL,0A5H
MOV DX,P8255A
OUT DX,AL
MOV BL,3
CALL DELAY ;延时0.3秒
LOOP FLASH1
MOV AL,0F5H ;南北红灯,东西黄灯
MOV DX,P8255A
OUT DX,AL
MOV BL,10
CALL DELAY ;延时1秒
RET

DELAY PROC NEAR
PUSH CX
DL1: MOV CX,8000H
DL2: LOOP DL2
DEC BL
CMP BL,0
JNE DL1
POP CX
RET
DELAY ENDP

CODE ENDS
END START

Ⅷ 单片机课程设计:交通灯控制!

^#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit RED_A=P3^0; //东西向指示灯
sbit YELLOW_A=P3^1;
sbit GREEN_A=P3^2;
sbit RED_B=P3^3; //南北向指示灯
sbit YELLOW_B=P3^4;
sbit GREEN_B=P3^5;
sbit KEY1=P1^0;
sbit KEY2=P1^1;
sbit KEY3=P1^2;
//延时倍数,闪烁次数,操作类型变量
uchar Flash_Count=0,Operation_Type=1,LEDsng,LEDsns,LEDewg,LEDews,discnt;
uint Time_Count=0,time;
uchar ledtab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0xff};
void displaysn()
{
LEDsng=((time-Time_Count)/20)%10;
LEDsns=((time-Time_Count)/20)/10;
LEDewg=0x10;
LEDews=0x10;
}
void displayew()
{
LEDewg=((time-Time_Count)/20)%10;
LEDews=((time-Time_Count)/20)/10;
LEDsng=0x10;
LEDsns=0x10;
}
//定时器0 中断函数
void T0_INT() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
switch(Operation_Type)
{
case 1: //东西向绿灯与南北向红灯亮
if((Time_Count%20)==0)displayew();
RED_A=0;YELLOW_A=0;GREEN_A=1;
RED_B=1;YELLOW_B=0;GREEN_B=0;
if(++Time_Count!=time) return;
Time_Count=0;
Operation_Type=2;
break;
case 2: //东西向黄灯开始闪烁,绿灯关闭
LEDewg=0x0;
LEDews=0x0;
if(++Time_Count!=8) return;
Time_Count=0;
YELLOW_A=~YELLOW_A;GREEN_A=0;
if(++Flash_Count!=6) return; //闪烁
Flash_Count=0;
Operation_Type=3;
break;
case 3: //东西向红灯与南北向绿灯亮
if((Time_Count%20)==0)displaysn();
RED_A=1;YELLOW_A=0;GREEN_A=0;
RED_B=0;YELLOW_B=0;GREEN_B=1;
if(++Time_Count!=time) return;
Time_Count=0;
Operation_Type=4;
break;
case 4: //南北向黄灯开始闪烁,绿灯关闭
LEDsng=0x0;
LEDsns=0x0;
if(++Time_Count!=8) return;
Time_Count=0;
YELLOW_B=~YELLOW_B;GREEN_A=0;
if(++Flash_Count!=6) return; //闪烁
Flash_Count=0;
Operation_Type=1;
break;
}
}
void t1_isr() interrupt 3
{
TR1=0;
TH1=(65536-3000)/256;
TL1=(65536-3000)%256;
TR1=1;
switch(discnt)
{
case 0:
P2=0x02;
P0=ledtab[LEDewg];
break;
case 1:
P2=0x01;
P0=ledtab[LEDews];
break;
case 2:
P2=0x08;
P0=ledtab[LEDsng];
break;
case 3:
P2=0x04;
P0=ledtab[LEDsns];
break;
default:discnt=0;break;
}
discnt++;
discnt&=0x03;
}
void delay()
{
uint i;
for(i=0;i<1000;i++);
}
//主程序
void main()
{
TMOD=0x11; //T0 方式1
EA=1;
ET0=1;
TR0=1;
TH1=(65536-3000)/256;
TL1=(65536-3000)%256;
TR1=1;
ET1=1;
time=120;
Time_Count=100;
Time_Count=0;
Operation_Type=1;
while(1)
{
if(KEY1==0) //按一下加1S
{
delay();
if(KEY1==0)
{
while(KEY1==0);
TR0=0;
time+=20;
LEDsng=(time/20)%10;
LEDsns=(time/20)/10;
LEDewg=0x10;
LEDews=0x10;
}
}
if(KEY2==0) //按一下减1S
{
delay();
if(KEY2==0)
{
while(KEY2==0);
TR0=0;
time-=20;
if(time==0)time=20;
LEDewg=(time/20)%10;
LEDews=(time/20)/10;
LEDsng=0x10;
LEDsns=0x10;
}
}
if(KEY3==0) //启动
{
delay();
if(KEY3==0)
{
while(KEY2==0);
TR0=1;
Time_Count=0;
}
}
}
}

热点内容
武汉大学学生会辅导员寄语 发布:2021-03-16 21:44:16 浏览:612
七年级学生作文辅导学案 发布:2021-03-16 21:42:09 浏览:1
不屑弟高考成绩 发布:2021-03-16 21:40:59 浏览:754
大学毕业证会有成绩单 发布:2021-03-16 21:40:07 浏览:756
2017信阳学院辅导员招聘名单 发布:2021-03-16 21:40:02 浏览:800
查询重庆2018中考成绩查询 发布:2021-03-16 21:39:58 浏览:21
结业考试成绩怎么查询 发布:2021-03-16 21:28:40 浏览:679
14中医医师资格笔试考试成绩查分 发布:2021-03-16 21:28:39 浏览:655
名著赏析课程标准 发布:2021-03-16 21:27:57 浏览:881
北京大学商业领袖高端培训课程 发布:2021-03-16 21:27:41 浏览:919