单片机实验5--带急救车的交通灯控制实验

合集下载

单片机课程设计急救车优先的交通灯控制系统

单片机课程设计急救车优先的交通灯控制系统

《急救车优先的交通灯控制系统》课程设计说明书专业班级:12级电信(4)班姓名:李玲吴继亮谢彩云学号:080212155 080212149 080212178指导老师:刘娟设计时间:2014年6月11 日物理与电气工程学院二零一四年六月十一日内容摘要请设计一个交通灯控制电路,并且编写相应的软件,完成交通灯的管理任务。

<1> 根据交通灯控制变化规律。

假设一个十字路口为东西南北走向。

初始状态0为东西红灯,南北红灯。

然后转状态1南北绿灯通车,东西红灯。

过15秒钟转状态2,南北绿灯转亮黄灯闪烁,闪烁5秒,东西仍然红灯。

再转状态3,东西绿灯通车,南北红灯。

过15秒钟转状态4,东西绿灯转亮黄灯闪烁,闪烁5秒,南北仍然红灯。

最后循环至状态1。

<2> 以按键为中断申请,表示有急救车通过,所有的交通信号灯全红10秒钟。

交通灯控制系统,可由多种电路来构成,采用单片机控制,可提高电路的可靠性与稳定性,硬件电路比较简单,主要用软件来控制,控制方式灵活多样,能满足不同情况的控制,可利用中断等方式通过程序来方便的实现调时。

关键字:课程设计单片机急救车流程图目录1 课程设计意义和要求 (2)1.1课程设计意义 (2)1.2课程设计要求 (3)2 理论设计 (3)2.1总体设计 (5)2.2软件设计 (6)2.3硬件设计 (6)3 调试与仿真 (6)4 心得体会 (10)5 参考文献 (10)附录源程序代码 (11)急救车优先的交通灯控制系统1 课程设计意义和要求:1.1课程设计意义大学本科学生动手能力的培养和提高是大学本科教育的一个重要内容,《单片机原理及应用》是一门应用性较强的课程。

如何让学生在学好基础知识的同时,迅速掌握应用技术,实验与课程设计环节起着非常重要的作用。

本课程设计的意义,是让学生通过课程设计,首先建立起单片机应用系统的概念,根据实际的系统设计要求,掌握初步的单片机系统设计方法,从硬件系统和软件系统设计两个方面得到实际的提高,为今后的毕业设计打下良好的基础。

单片机实验5 带急救车的交通灯控制实验

单片机实验5  带急救车的交通灯控制实验

华南农业大学实验报告专业班次08电信1 组别200831120102 题目实验五带急救车交通灯控制实验姓名陈建泽日期2010.11.3一、实验目的1.学习外部中断技术的基本使用方法。

2.学习中断处理程序的编程方法。

二、实验设备:STC89C52单片机实验板、串口下载线、USB连接线、电脑三、实验原理实验的电路原理图同图与实验1的相同,由原理图可分析出,当端口为低电平时,发光二极管亮,高电平时,发光二极管灭,考虑人眼的视觉暂留,调整发光二极管的延时时间。

使用发光二极管模拟交通灯,LED1到LED3作为东西路口的红、黄、绿灯,LED5到LED7作为南北路口的红、黄、绿灯。

增加允许急救车优先通过的要求。

当有急救车到达时,两个方向上的红灯亮,以便让急救车通过,假定急救车通过路口的时间为10秒,急救车通过后,交通灯恢复中断前的状态。

本实验以单脉冲为中断申请,表示有急救车通过。

中断0的电路原理图如下图所示:外部中断电路原理图四、实验步骤1. 分析实验所用到的电路原理图,根据需要连接跳线帽。

2. 根据实验要求设LED1到LED3作为东西路口的红、黄、绿灯,LED5到LED7作为南北路口的红、黄、绿灯。

3. 主程序的亮灭规则依照实验1,中断程序的流程图在第五点给出。

一开始,程序按当有急救车通过时,按下中断按键(P3.2),进入中断子程序,4.根据流程图编写实验程序,并完成调试。

成绩:教师:日期:五、实验流程图带急救车交通灯流程图六、实验程序根据实验流程图,编写出一下实验程序,为了更精确延时,本实验采用定时器。

//*******************实验5 带急救车的交通灯控制实验**************;实验名称:带急救车的交通灯控制实验;功 能:当有急救车到达时,两个方向上的红灯亮,以便让急救车通过,时间10S ;编 写 人:08电信1 陈建泽;编写时间:2010年11月3日//***********************程序代码如下*****************************ORG 0000HAJMP STARTORG 0003H ;外部中断0程序入口地址AJMP DINT0ORG 000BH ;定时器中断0程序入口地址 开始 两个红灯亮并延时3S 东西路口绿灯亮,南北路口红灯亮。

单片机__急救车优先通过交通灯课程设计.doc

单片机__急救车优先通过交通灯课程设计.doc

《急救车优先的交通灯控制系统》课程设计说明书专业班级:10级自动化(3)班姓名:周玉玲李旭王志繁胡浩远学号:080310167 080310160080310133 100210049指导老师:刘娟设计时间:2012年12月21日物理与电气工程学院二零一二年十二月二十一日内容摘要请设计一个交通灯控制电路,并且编写相应的软件,完成交通灯的管理任务。

1、根据交通灯控制变化规律。

假设一个十字路口为东西南北走向。

初始状态0为东西红灯,南北红灯。

然后转状态1南北绿灯通车,东西红灯。

过15秒钟转状态2,南北绿灯转亮黄灯闪烁,延时几秒,东西仍然红灯。

再转状态3,东西绿灯通车,南北红灯。

过15秒钟转状态4,东西绿灯转亮黄灯闪烁,延时几秒,南北仍然红灯。

最后循环至状态1。

2、以按键为中断申请,表示有急救车通过,所有的交通信号灯全红10秒钟。

交通灯控制系统,可由多种电路来构成,采用单片机控制,可提高电路的可靠性与稳定性,硬件电路比较简单,主要用软件来控制,控制方式灵活多样,能满足不同情况的控制,可利用中断等方式通过程序来方便的实现调时。

关键字:课程设计单片机急救车流程图状态代码目录一、课程设计意义和要求 (3)1、课程设计意义 (3)2、课程设计要求 (3)二、理论设计 (4)1、总体设计 (4)2、软件设计 (4)2.1、电路原理逻辑图 (7)2.2、程序流程图 (8)三、硬件设计描述 (9)1、系统方框图 (9)2、电路原理图 (10)3、单片机简介 (11)4、单片机的学习 (12)5、单片机的应用领域 (13)四、调试与仿真 (15)五、心得体会 (18)六、参考文献 (20)附录源程序代码 (21)急救车优先的交通灯控制系统设计一、课程设计意义和要求:1、课程设计意义大学本科学生动手能力的培养和提高是大学本科教育的一个重要内容,《单片机原理及应用》是一门应用性较强的课程。

如何让学生在学好基础知识的同时,迅速掌握应用技术,实验与课程设计环节起着非常重要的作用。

基于单片机有急救车通过的交通灯设计

基于单片机有急救车通过的交通灯设计

本科毕业设计(论文)题目名称:单片机模式下急救车与交通灯设计学生姓名: 高丽学院: 理学院专业名称:电子信息科学与技术指导教师: 张建国二〇〇八年六月日单片机模式下急救车与交通灯设计摘要随着社会经济的发展,城市交通问题越来越引起人们的关注。

人、车、路三者关系的协调,已成为交通管理部门需要解决的重要问题之一。

尤其是遇到紧急情况,比如有急救车通过时,就必须保持道路的畅通,确保急救车顺利通过。

为保证交通安全,防止交通阻塞,使城市交通井然有序,交通信号灯在大多数城市得到了广泛应用。

本课题提出了一种单片机模式下急救车与交通灯的设计。

假设一个十字路口为东西南北走向。

初始状态0为东西红灯,南北红灯,然后状态1南北绿灯通车,东西红灯。

过一段时间转状态2,南北绿灯闪几次转亮黄灯,延时几秒,东西仍然红灯。

再转状态3,东西绿灯通车,南北红灯。

过一段时间转状态4,东西绿灯闪几次转亮黄灯,延时几秒,南北仍然红灯。

最后循环至状态1。

所设计的交通灯管理系统要求满足急救车优先通过的要求。

有急救车到达时,两个方向交通灯全红,以便让急救车通过。

假定急救车通过路口的时间为10秒,急救车通过后,交通灯恢复中断前的状态。

关键词:单片机,交通灯,急救车,外部中断The design of emergency vehicles and traffic lights underSingle-chip processor modeAbstractAlong with the social economy development, the municipal transportation question is more and more arousing people's interest. The human, the vehicle and the road, the three relations of coordination, have become one of important questions which the traffic control department needs to solve. Encounters the emergency case in particular, for instance when emergency vehicles pass, it is imperative to maintain the path unimpeded, guarantee the emergency car to pass smoothly. In order to guarantee the traffic safety, prevented the traffic jam, make the municipal transportation to be systematic, the traffic light control obtained the widespread application in the majority cities.This topic proposed the design of emergency vehicles and traffic lights under Single-chip processor mode. Supposed that the intersection for East, West, South and North trend. The original state 0 is East and West red light, North and South red light, then the state 1 North and South green light is open to traffic, East and West red light. For a period of time to the state 2, North and South green light flashes several times then turns to yellow light for a few seconds delay, East and West is still red light. Again transfers state 3 East and West green light is open to traffic, North and South red light. For a period of time to the state 4, East and West green light flashes several times then turns to yellow light for a few seconds delay, North and South is still red light. Finally circulates to the state 1.Designed the traffic light management system management system requests satisfies the emergency car first through. When the emergency vehicle arrives, two directions of traffic lights are entire red, in order to let the emergency vehicle pass. Supposes the emergency vehicle through the street intersection time is 10 seconds, after the emergency vehicle passed, the traffic light restores the state before the interrupt.Keywords:single-chip processor, traffic lights, emergency vehicles, external interrupt目录1绪论 (1)1.1引言 (1)1.2课题研究的发展背景及意义 (2)1.2.1交通信号灯控制的发展概述 (2)1.2.2课题研究的意义 (3)1.3本课题要研究的内容和解决的问题 (4)1.4论文的组织结构 (5)2交通系统的特性 (5)3交通灯控制需求分析 (6)3.1正常时序控制 (6)3.2急救车通过控制 (7)4系统的安装和启动 (7)5系统的硬件设计 (8)5.1总体设计系统总框图 (8)5.2实验系统简介 (8)5.2.1 伟福仿真器系统概述 (9)5.2.2 在Keil的µV2集成环境下使用伟福仿真器 (10)5.2.3 开发环境简介 (11)5.2.4 LED电平显示电路 (17)5.2.5单脉冲电路 (17)5.3各模块设计 (18)5.3.1 EX51B仿真板 (18)5.3.2 交通灯显示模块 (19)5.3.3 急救车通过模块 (20)5.4实验线路设计 (20)6系统的软件设计 (21)6.1 系统实验软件设置 (21)6.2 系统工作原理 (21)6.3 系统流程图 (22)7系统程序与结果分析 (23)7.1系统程序 (23)7.2结果分析 (32)8总结和展望 (33)8.1 总结 (33)8.2 展望 (34)参考文献 (35)致谢 (36)1绪论1.1引言交通(Traffic)在人们的日常生活中,几乎与每个人都息息相关。

实验三 急救车与交通灯控制综合性实验指导书

实验三 急救车与交通灯控制综合性实验指导书

实验三急救车与交通灯控制综合性实验指导书一、实验内容P1口进行十字路口交通灯控制,允许急救车优先通过。

有急救车到达时,两个方向交通信号灯全红,以便让急救车通过。

设急救车通过路口时间为10秒,急救车通过后,交通恢复正常。

并实验用单次脉冲申请中断,表示有急救车通过。

二、实验目的及要求(一)实验目的1.学习外部中断技术的基本使用方法。

2.学习中断服务程序的编程方法。

(二)实验要求1.学生在实验课前必须认真预习教科书与指导书中的相关内容,绘制流程图,编写C51语言源程序,为实验做好充分准备。

2.该实验要求学生综合利用前期课程及本门课程中所学的相关知识点,充分发挥自己的个性及创造力,独立操作完成实验内容,并写出实验报告。

三、实验条件及要求计算机,C51语言编辑、Keil_uVersion2和Protues仿真软件50台套。

四、实验相关知识点1.单片机内部结构。

2.C51编程、调试。

3.单片机端口控制。

4.外部中断应用。

五、实验原理图七、实验参考流程图八、实验程序#include <reg51.h>#define uchar unsigned char·#define uint unsigned intunsigned int i ;void delay(uint xms){unsigned int a ,j;for(a=xms;a>0;a--)for(j=114;j>0;j--);}void main(){TMOD = 0x01;TH0 = 0x3C;TL0 = 0x0B0;EA = 1;ET0 = 1;TR0 = 1;IP=0x01;IT0=1;EX0=1;P2=0xcf;while(1){}}void Timer0Interrupt(void) interrupt 1 {TH0 = 0x3c;TL0 = 0x0b0; i++;if(i==100) {P2=0xdb;}if(i==200) {P2=0x9f;}if(i==205) {P2=0xdf;}if(i==210) {P2=0x9f;}if(i==215) {P2=0xdf;}if(i==220) {P2=0x9f;}if(i==225) {P2=0xdf;if(i==230) {P2=0x9f;}if(i==235) {P2=0xdf;}if(i==240) {P2=0x9f;}if(i==245) {P2=0xdf;}if(i==250) {P2=0x9f;}if(i==255) {P2=0xdf;}if(i==260) {P2=0xe7;}if(i==360)P2=0x6f;}if(i==365) {P2=0xef;}if(i==370) {P2=0x6f;}if(i==375) {P2=0xef;}if(i==380) {P2=0x6f;}if(i==385) {P2=0xef;}if(i==390) {P2=0x6f;}if(i==395) {P2=0xef;if(i==400){P2=0x6f;}if(i==405){P2=0xef;}if(i==410){P2=0x6f;}if(i==415){P2=0xef;}if(i==420){P2=0xdb;i=0;}}void exter0() interrupt 0 //中断服务程序,中断为外部中断0 {P2=0xcc;delay(10000); //全红10s,急救车通过P2=0xcf;}九、实验实施步骤1.仔细阅读实验内容及要求,编写C51源程序。

单片机交通灯实验报告

单片机交通灯实验报告

单片机交通灯实验报告简介本实验通过使用单片机设计并实现一个交通灯控制系统,模拟城市道路上的交通信号灯。

实验过程中,我们通过编程控制不同灯的亮灭状态,实现交通灯的循环变换,以此来模拟车辆和行人的行进。

实验材料•单片机•LED灯•电阻•连线•电源实验过程及结果1. 电路连接首先,我们根据实验需要将单片机和LED灯等材料进行连接。

具体连接方式如下:- 将电阻连接到单片机的IO口上,起到限流的作用。

- 将LED灯连接到电阻的另一端。

- 将单片机通过连线与电源进行连接。

2. 程序设计接下来,我们需要编写程序来实现交通灯的循环变换。

使用C语言编程,通过控制IO口的高低电平来控制LED灯的亮灭状态。

以下是程序的主要逻辑:#include <reg52.h>sbit redLed = P1^0; // 红灯sbit yellowLed = P1^1; // 黄灯sbit greenLed = P1^2; // 绿灯void delay(unsigned int t){while(t--);}void main(){while(1){// 红灯亮,其他灯灭redLed = 0;yellowLed = 1;greenLed = 1;delay(50000);// 红灯亮黄灯亮,绿灯灭redLed = 0;yellowLed = 0;greenLed = 1;delay(20000);// 绿灯亮,其他灯灭redLed = 1;yellowLed = 1;greenLed = 0;delay(50000);// 黄灯亮,其他灯灭redLed = 1;yellowLed = 0;greenLed = 1;delay(20000);}}3. 实验结果与分析通过实验,我们观察到LED灯按照我们设计的程序循环地变换亮灭状态,从而实现了交通灯的模拟效果。

红灯、黄灯、绿灯在规定的时间间隔内依次亮起,并在该时间间隔结束后熄灭。

实验二:外部中断(急救车与交通灯)

实验二:外部中断(急救车与交通灯)

实验二:外部中断(急救车与交通灯)一、实验目的1.继续熟悉编程调式工具和软件延时的使用。

2.学习外部中断技术的基本使用方法。

3.学习中断处理程序的编程方法。

二、实验内容利用实验板的原理图,用软件延时实现交通信号灯的自动管理。

实际交通灯的变化情况和规律:假设一个十字路口为东南西北走向。

初始状态0为东西南北都红灯亮。

然后转状态1东西绿灯通车,南北红灯亮。

过一段时间后,转状态2,东西绿灯闪烁5次后灭,黄灯亮,南北还是红灯。

再转状态3,南北绿灯通车,东西红灯亮。

过一段时间后转状态4,南北绿灯闪烁5次后灭,黄灯亮,东西还是为红灯亮,一段时间后,又循环至状态1。

在上面实验内容的基础上增加允许急救车优先通过的要求。

有急救车到达时,两个方向交通信号灯全部为红灯亮,禁止其它车辆通行,以便让急救车通过。

设急救车通过路口时间为10秒,当急救车通过后,交通灯恢复中断前状态。

本实验用按键申请中断,表示有急救车通过。

编程实现交通灯的自动管理以及中断方式下的交通信号灯的自动管理,要求在给出的程序流程框图的基础上编程实现。

中断信号的产生由K2的接通与断开来实现,K2与单片机的P3.3连接。

实验过程中需要时,按一下K2即可。

三、实验电路图四、实验说明1.编制中断处理程序要注意的问题是:保护进入中断时的状态(保护现场),并在退出中断之前恢复进入时的状态(恢复现场)。

2.必须在中断服务程序中设定是否允许中断重入,即设置EX1位。

3.本例中使用了INT1中断,下降沿触发,避免按键一次触发多个中断。

一般中断处理程序进入时应保护PSW ,ACC 以及中断处理程序中需要使用的寄存器。

本例的INT1程序中应保护PSW ,ACC ,B 等,以便保护中断前红绿灯的状态(保护现场),并且在退出前恢复原来红绿灯状态(恢复现场)。

INT1端接单次脉冲发生器。

五、参考程序框图INT0中断处理六、参考程序org 0000LJMP STARTORG 0013HLJMP INTEX1 ;外中断1中断程序入口START: LCALL state0lcall delay2ssetb IT1setb EAsetb EX1sloop: Lcall state1Lcall state2Lcall state3Lcall state4LJMP sloopstate0: mov P1,#0f6h ;11110110,南北方向红灯亮,东西方向红灯亮lcall delay2s ;延时2sretstate1: mov P1,#0f3h ;11110011,东西绿灯亮,南北红灯亮MOV B,#0F3H ;保存p1状态acall delay60s ;延时60sretstate2: mov r0,#05 ;东西绿灯闪烁5次后灭,东西黄灯亮,南北红灯亮s21: mov P1,#0f3h ;11110011,东西绿灯亮,南北红灯亮MOV B,#0F3H ;保存p1状态acall delay2s ;延时2smov P1,#0f7h ; 11110111,东西绿灯灭,南北红灯亮MOV B,#0F7H ;保存p1状态acall delay2s ;延时2sdjnz r0,s21 ;东西绿灯闪烁5次mov P1,#0f5h ;11110101,东西黄灯亮,南北红灯亮MOV B,#0F5H ;保存p1状态acall delay20sretstate3: mov P1,#0DEh ;11011110,东西红灯亮,南北绿灯亮MOV B,#0DEH ;保存p1状态acall delay60s ; ;延时60sretstate4: mov r0,#05 ;南北绿灯闪烁5次后灭,东西红灯亮,南北黄灯亮s41: mov P1,#0DEh ;11011110,东西红灯亮,南北绿灯亮MOV B,#0DEH ;保存p1状态acall delay2s ;延时2smov P1,#0fEh ;11111110,东西红灯亮,南北绿灯灭MOV B,#0FEH ;保存p1状态acall delay2s ;延时2sdjnz r0,s41 ;南北绿灯闪烁5次mov P1,#0EEh ;11101110,东西红灯亮,南北黄灯亮MOV B,#0FEH ;保存p1状态acall delay20s ;延时20sretdelay2s: MOV R1,#200 ;延时L2: MOV R2,#20L1: MOV R3,#248L3: DJNZ R3,L3DJNZ R2,L1DJNZ R1,L2RETDelay20s:mov r7,#10 ;延时D20s1: acall delay2sdjnz r7,D20s1retdelay60s: mov r7,#30 ;延时d60s1: acall delay2sdjnz r7,d60s1ret;外部中断1服务程序INTEX1: clr EX1 ;关外部中断1push PSW ;中断现场保护push Accpush bsetb EX1 ;外部中断1允许clr p2.5 ;蜂鸣器响lcall state0 ;东西南北向红灯亮mov R6,#3 ;延时12sINTEX1_1:lcall delay2ssetb p2.5 ;蜂鸣器停lcall delay2sclr p2.5 ;蜂鸣器响djnz R6,INTEX1_1setb p2.5clr ex1 ;关外部中断1pop bmov p1,bpop acc ;恢复中断现场pop PSWsetb ex1 ;外部中断1允许RETIend七、实验报告1、说明实验目的和内容。

51单片机交通灯(加急救车)

51单片机交通灯(加急救车)

51单片机控制交通灯一、实现功能:1、先南北红灯亮,东西绿灯亮。

南北红灯亮维持25秒,在南北红灯亮的同时东西绿灯也亮,并维持20秒;到20秒时,东西绿灯闪亮,闪亮3秒后熄灭。

在东西绿灯熄灭时,东西黄灯亮,并维持2秒。

到2秒时,东西黄灯熄灭,东西红灯亮,同时,南北红灯熄灭,绿灯亮,东西红灯亮维持30秒。

南北绿灯亮维持25秒,然后闪亮3秒后熄灭。

同时南北黄灯亮,维持2秒后熄灭,这时南北红灯亮,东西绿灯亮。

周而复始。

2、用一个按键模拟急救车到达。

急救车到达路口时,四个方向的红灯全亮,10秒钟后恢复正常显示。

3、一辆急救车正在过路口时(即四个方向全红灯10秒倒计时未结束),又来了一辆急救车,重新从10秒开始倒计时。

4、急救车过去之后(即10秒倒计时结束),路灯状态要继续急救车到达之前的状态往下运行。

5、数码管显示绿灯变红灯、红灯变绿灯以及急救车10秒钟的倒计时。

6、急救车从路口过的时候,蜂鸣器响1s停1s的循环报警。

二、proteus仿真电路图注:此图仅作为仿真使用。

实际焊接电路时,由于单片机的驱动能力较弱,所以数码管的位选、LED的控制最好加上三极管进行电流放大,否则即使能实现功能,但是LED和数码管的发光的亮度也不强。

三、C语言程序程序#include <reg51.h>#define uchar unsigned char#define uint unsigned int#define duan P0#define wei P2code uchar tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff,0xbf}; uchar buff[8] = {10,10,10,10,10,10,10,10};uchar weizhi = 0;uchar alarm = 0;uchar bk_TH1 = 0;uchar bk_TL1 = 0;uchar bk_cnt = 0;uchar bk_cnt_time = 0;uchar cnt_time = 0;uchar cnt = 0;uchar cnt_flash = 0;bit cnt_finish = 0;bit LED = 0;bit beef_flag = 1;sbit Er = P1^0; //东西—红灯sbit Eg = P1^1; //东西—绿灯sbit Ey = P1^2; //东西—黄灯sbit Sr = P1^3; //南北—红灯sbit Sg = P1^4; //南北—绿灯sbit Sy = P1^5; //南北—黄灯sbit beef = P1^6; //蜂鸣器void display(void);void main(void){uchar time = 0;TMOD |= 0x11;TH0 = (65536-2000)/256;TL0 = (65536-2000)%256;TH1 = (65536-50000)/256;TL1 = (65536-50000)%256;ET1 = 1;ET0 = 1;INT0 = 1;EX0 = 1;IP |= 0x02;EA = 1;TR0 = 1;TR1 = 1;Sr = 0;Sg = 0;Sy = 0;Er = 0;Eg = 0;Ey = 0;beef = 0;buff[0] = 11;buff[1] = 11;buff[2] = 11;buff[3] = 11;buff[4] = 11;buff[5] = 11;buff[6] = 10;buff[7] = 10;while(1){while((cnt<20)&&(alarm == 0)){Sr = 1;Sg = 0;Sy = 0;Er = 0;Eg = 1;Ey = 0;time = (25-cnt);buff[7] = time%10;buff[6] = time/10;}while((cnt<23)&&(alarm == 0)){Sr = 1;Sg = 0;Sy = 0;Er = 0;Eg = LED;Ey = 0;time = (25-cnt);buff[7] = time%10;buff[6] = time/10;}while((cnt<25)&&(alarm == 0)) {Sr = 1;Sg = 0;Sy = 0;Er = 0;Eg = 0;Ey = 1;time = (25-cnt);buff[7] = time%10;buff[6] = time/10;}while((cnt<50)&&(alarm == 0)) {Sr = 0;Sg = 1;Sy = 0;Er = 1;Eg = 0;Ey = 0;time = (55-cnt);buff[7] = time%10;buff[6] = time/10;}while((cnt<53)&&(alarm == 0)) {Sr = 0;Sg = LED;Sy = 0;Er = 1;Eg = 0;Ey = 0;time = (55-cnt);buff[7] = time%10;buff[6] = time/10;}while((cnt_finish != 1)&&(alarm == 0)){Sr = 0;Sg = 0;Sy = 1;Er = 1;Eg = 0;Ey = 0;time = (55-cnt);buff[7] = time%10;buff[6] = time/10;}cnt_finish = 0;while(alarm == 1){Er = 1;Eg = 0;Ey = 0;Sr = 1;Sg = 0;Sy = 0;time = (10-cnt);buff[7] = time%10;buff[6] = time/10;if(cnt == 10){TR1 = 0;TH1 = bk_TH1;TL1 = bk_TL1;cnt = bk_cnt;cnt_time = bk_cnt_time;TR1 = 1;alarm = 0;}beef = beef_flag;}beef = 0;}}void int0(void) interrupt 0{TR1 = 0;if(alarm == 0){bk_TH1 = TH1;bk_TL1 = TL1;bk_cnt = cnt;bk_cnt_time = cnt_time;}TH1 = (65536-50000)/256;TL1 = (65536-50000)%256;cnt = 0;cnt_time = 0;alarm = 1;TR1 = 1;}void timer0(void) interrupt 1 {TH0 = (65536-2000)/256;TL0 = (65536-2000)%256;display();}void timer1(void) interrupt 3 {TH1 = (65536-50000)/256;TL1 = (65536-50000)%256;if(++cnt_time == 20){cnt_time = 0;cnt++;beef_flag = ~beef_flag;}if(++cnt_flash == 4){cnt_flash = 0;LED = ~LED;}if(cnt == 55){cnt = 0;cnt_finish = 1;}}void display(void){duan = 0xff;wei = (1<<weizhi);duan = tab[buff[weizhi]];if(++weizhi == 8){weizhi = 0;}}。

外部中断(急救车与交通灯)课设

外部中断(急救车与交通灯)课设

电气工程学院课程设计说明书设计题目:外部中断(急救车与交通灯)系别:工业自动化仪表系年级专业: x学号: x学生姓名: x指导教师: x教师职称:副教授讲师电气工程学院《课程设计》任务书课程名称:单片机原理及应用课程设计基层教学单位:自动化仪表系指导教师:张淑清学号x 学生姓名x (专业)班级x设计题目外部中断(急救车与交通灯)设计技术参数1.独立完成设计任务。

2.编程,上机调试。

3.连接硬件实验线路,实现所要求的功能。

4.完成设计,提交课程设计报告。

设计要求本实验模拟交通信号灯控制,一般情况下正常显示;有急救车到达时,两个方向交通灯信号全红,以便让救护车通过。

设急救车通过路口时间为10秒,急救车通过后,交通恢复正常,本实验用单次脉冲申请外部中断,表示有急救车通过。

参考资料1)《单片机原理及应用技术》张淑清,国防工业出版社(教材);2) 《过程控制系统及仪表》邵裕森巴莜云编(教材)3)《单片机及应用》李大友,高等教育出版社(教材)4)《机械量测量》机械工业出版社(教材)应完成内容绘制硬件电路,软件流程图熟悉伟福单片机编程环境读程序,修改软件参数修改硬件地址,硬件调试撰写课程设计报告指导教师签字基层教学单位主任签字说明:1、此表一式三份,系、学生各一份,报送院教务科一份。

2、学生那份任务书要求装订到课程设计报告前面。

电气工程学院教务科目录第一章摘要 (4)第二章引言 (4)第三章设计原理 (5)3.1 AT89S51单片机 (5)3.1.1 AT89S51单片机简 (5)3.1.2 AT89S51单片机的主要性能参数 (5)3.1.3 AT89S51芯片内部结构简介 (5)3.2交通灯的硬件设计 (6)3.3交通灯的软件设计 (8)第四章课设总结 (15)参考文献 (16)第一章摘要随着大规模集成电路技术和计算机技术的飞速发展,把计算机的运算器和控制器(即CPU)、存储器和多种接口集成在一块芯片上而成的芯片为单片机。

单片机__急救车优先通过交通灯课程设计

单片机__急救车优先通过交通灯课程设计

单片机__急救车优先通过交通灯课程设计专业班级:10级自动化(3)班姓名:周玉玲李旭王志繁胡浩远学号:080310167 08 0310160080310133 1 00210049指导老师:刘娟设计时刻:2012年12月21日物理与电气工程学院二零一二年十二月二十一日内容摘要请设计一个交通灯操纵电路,同时编写相应的软件,完成交通灯的治理任务。

1、按照交通灯操纵变化规律。

假设一个十字路口为东西南北走向。

初始状态0为东西红灯,南北红灯。

然后转状态1南北绿灯通车,东西红灯。

过1 5秒钟转状态2,南北绿灯转亮黄灯闪耀,延时几秒,东西仍旧红灯。

再转状态3,东西绿灯通车,南北红灯。

过15秒钟转状态4,东西绿灯转亮黄灯闪耀,延时几秒,南北仍旧红灯。

最后循环至状态1。

2、以按键为中断申请,表示有急救车通过,所有的交通信号灯全红10秒钟。

交通灯操纵系统,可由多种电路来构成,采纳单片机操纵,可提升电路的可靠性与稳固性,硬件电路比较简单,要紧用软件来操纵,操纵方式灵活多样,能满足不同情形的操纵,可利用中断等方式通过程序来方便的实现调时。

关键字:课程设计单片机急救车流程图状态代码名目一、课程设计意义和要求 (3)1、课程设计意义 (3)2、课程设计要求 (3)二、理论设计 (4)1、总体设计 (4)2、软件设计 (4)2.1、电路原理逻辑图 (7)2.2、程序流程图 (8)硬件设计描述 (9)1、系统方框图 (9)2、电路原理图 (10)3、单片机简介 (11)4、单片机的学习 (12)5、单片机的应用领域 (1)3四、调试与仿真 (15)五、心得体会 (18)六、参考文献 (20)附录源程序代码 (21)急救车优先的交通灯操纵系统设计一、课程设计意义和要求:1、课程设计意义大学本科学生动手能力的培养和提升是大学本科教育的一个重要内容,《单片机原理及应用》是一门应用性较强的课程。

如何让学生在学好基础知识的同时,迅速把握应用技术,实验与课程设计环节起着专门重要的作用。

实验5 外部中断(急救车与交通灯)-新

实验5 外部中断(急救车与交通灯)-新

实验五外部中断实验(急救车与交通灯)一、实验要求本实验模拟交通信号灯控制,一般情况下正常显示,灯亮的顺序如下所示:初始状态:东西、南北红灯亮3秒10秒南北黄灯亮、东西红灯亮2秒2秒南北红灯亮、东西绿灯亮10当有急救车到达时,两个方向交通信号灯全红,以便让急救车通过。

设急救车通过路口时间为10秒,急救车通过后,交通恢复正常,本实验用单次脉冲申请外部中断,表示有急救车通过。

二、实验目的1、学习外部中断技术的基本使用方法。

2、学习定时器定时的基本方法。

3、学习中断处理程序的编程方法。

三、实验电路图四、实验说明1、T0选择软件启动,选用方式1,定时时间为100ms,然后10秒、2秒、3秒时间分别由定时100次、20次和30次来实现由定时器T0来实现。

2、中断服务程序的关键是:(1)保护进入中断时的状态,并在退出中断之前恢复进入时的状态。

(2)必须在中断程序中设定是否允许中断重入,即设置EX0位。

本例中使用了INT0中断,一般中断程序进入时应保护PSW,ACC,以及中断程序使用但非其专用的寄存器。

本例的中断程序保护了TH0、TL0并且在退出之前恢复了这三个寄存器。

另外中断程序中涉及到关键数据的设置时应关中断,即设置时不允许重入。

本例没有涉及到这种情况。

对于80C51CPU外部中断由INT0(P3.2)端接入。

中断信号由单次脉冲发生器产生。

五、参考程序:1、有急救车到达时,两个方向交通信号灯全红情况ORG 0000HLJMP MAIN1ORG 0003HLJMP WBZD0ORG 0030HMAIN1:MOV SP,#60HSETB IT0MOV IP,#00000001BMOV IE,#10000001BMOV B,#30MOV TMOD,#01HMOV TH0,#3CHMOV TL0,#0B0HMOV A,#10010000BMOV P1,ASETB TR0L1:JBC TF0,L2AJMP L1L2:MOV TH0,#3CHMOV TL0,#0B0HDJNZ B,L1CLR TR0MAIN2:MOV R0,#100MOV TMOD,#01HMOV TH0,#3CHMOV TL0,#0B0HMOV A,#00110000BMOV P1,ASETB TR0L3:JBC TF0,L4AJMP L3L4:MOV TH0,#3CHMOV TL0,#0B0HDJNZ R0,L3CLR TR0MAIN3:MOV R1,#20MOV TMOD,#01HMOV TH0,#3CHMOV TL0,#0B0HMOV A,#01010000BMOV P1,ASETB TR0L5:JBC TF0,L6AJMP L5L6:MOV TH0,#3CHMOV TL0,#0B0HDJNZ R1,L5CLR TR0MAIN4:MOV R2,#100MOV TMOD,#01HMOV TH0,#3CHMOV TL0,#0B0HMOV A,#10000100BMOV P1,ASETB TR0L7:JBC TF0,L8AJMP L7L8:MOV TH0,#3CHMOV TL0,#0B0HDJNZ R2,L7CLR TR0MAIN5:MOV R3,#20MOV TMOD,#01HMOV TH0,#3CHMOV TL0,#0B0HMOV A,#10001000BMOV P1,ASETB TR0L9:JBC TF0,L10AJMP L9L10:MOV TH0,#3CHMOV TL0,#0B0HDJNZ R3,L9CLR TR0LJMP MAIN2HERE:SJMP HERE中断服务子程序:WBZD0: PUSH TH0PUSH TL0PUSH APUSH P1MOV A,#10010000BMOV P1,AMOV R4,#100DY1:MOV R5,#100DY2:MOV R6,#100DY3:NOPNOPNOPDJNZ R6,DY3DJNZ R5,DY2DJNZ R4,DY1POP P1POP APOP TL0POP TH0RETI2、没有急救车到达时,两个方向交通信号灯按交通规则工作ORG 0000HLJMP MAIN1ORG 0030HMAIN1:MOV SP,#60HMOV B,#30MOV TMOD,#01HMOV TH0,#3CHMOV TL0,#0B0HMOV A,#10010000BMOV P1,ASETB TR0L1:JBC TF0,L2AJMP L1L2:MOV TH0,#3CHMOV TL0,#0B0HDJNZ B,L1CLR TR0MAIN2:MOV R0,#100MOV TMOD,#01HMOV TH0,#3CHMOV TL0,#0B0HMOV A,#00110000BMOV P1,ASETB TR0L3:JBC TF0,L4AJMP L3L4:MOV TH0,#3CHMOV TL0,#0B0HDJNZ R0,L3CLR TR0MAIN3:MOV R1,#20MOV TMOD,#01HMOV TH0,#3CHMOV TL0,#0B0HMOV A,#01010000BMOV P1,ASETB TR0L5:JBC TF0,L6AJMP L5L6:MOV TH0,#3CHMOV TL0,#0B0HDJNZ R1,L5CLR TR0MAIN4:MOV R2,#100MOV TMOD,#01HMOV TH0,#3CHMOV TL0,#0B0HMOV A,#10000100BMOV P1,ASETB TR0L7:JBC TF0,L8AJMP L7L8:MOV TH0,#3CHMOV TL0,#0B0HDJNZ R2,L7CLR TR0MAIN5:MOV R3,#20MOV TMOD,#01HMOV TH0,#3CHMOV TL0,#0B0HMOV A,#10001000BMOV P1,ASETB TR0L9:JBC TF0,L10AJMP L9L10:MOV TH0,#3CHMOV TL0,#0B0HDJNZ R3,L9CLR TR0LJMP MAIN2 HERE:SJMP HERE。

有急救车的交通灯控制实验

有急救车的交通灯控制实验

有急救车的交通灯控制实验一.实验目的1.学习把握多个接口芯片综合应用方法。

2.学习中断技术的差不多使用方法。

3.学习模拟交通灯操纵的实现方法。

4.学习操纵程序的编程方法。

二.实验条件和要求1.用业余时刻进行调研,了解交通灯燃灭的规律,并写出调研报告,并在此基础上设计出硬件电路原理图。

2.在设计硬件电路时,要充分利用实验仪上的接口芯片,如8051单片机、8255并行接口芯片、发光二极管(红、黄、绿各两个)。

设计或利用接口仪上已有的单脉冲发生器,但脉冲发生器产生的负脉冲来产生中断,进行模拟有急救车通过。

3.编制相应的软件应用程序,并运行调试。

4.写出规范的实验报告。

实验报告用A4纸写出。

三.实验报告格式1. 实验题目2.实验要求3. 调研报告4. 电路原理逻辑框图5. 程序流程图6. 应用程序7. 总结、分析、体会调研报告调研时刻:2007年6月2日调研地点:葫芦岛新区一处交通岗调查任务:刘宏宇—葫芦岛市公安局交警大队警员调研人员:谢铭泉、陈锐、石俊峰调研内容:该路口东西方向和南北方向各有交通灯三盏,分别为红色绿色黄色。

通过我们的观看,其亮灭变化规律为:1.东西南北两向起始状态为全红。

-----连续10秒2.东西向绿灯亮,南北向红灯亮。

-----连续30秒3.东西向绿灯灭,黄灯闪,南北向红灯亮。

-----闪耀5秒4.东西向红灯亮,南北向绿灯亮。

-----连续30秒5.东西向红灯亮,南北向绿灯灭,黄灯闪。

-----闪耀5秒6.循环以上步骤。

7.若有急救车通过等专门情形,东西南北向均为红灯亮,连续十秒。

然后复原之前状态。

调研分析通过对该路口交通灯变化规律的调研调我们了解了交通灯的变化规律,明白得了交通灯的作用,它是人们安全行驶的指示灯,为减少交通事故的发生,规范人们的生活提供了保证。

本路口的交通灯功能还不够完善,如车辆转向等,但差不多符合本设计的要求,能实现急救车通过等紧急情形。

经总结此路口的交通灯亮灭规律表如下:交通灯亮灭规律表:实验报告一.电路原理逻辑框图二.程序流程图主程序: 定时器中断程序:计数器中断程序 急救车中断子程序三.交通灯操纵码四.应用程序CSEG A T 0000HLJMP STARTCSEG A T 4003HLJMP JJCSEG A T 400BHLJMP TIMBCSEG A T 401BHLJMP COUNTCSEG A T 4100HSTART:MOV SP ,#60HSETB IT0SETB BASETB EX0SETB ET0SETB ET1MOV DPTR,#0CFA3HMOV A,#80H ;初始化8255,A为输入口MOVX @DPTR,ANOPMOV TMOD,#61H ;初始化计数器0.1SMOV TH0,#3CHMOV TL0 #0B0HMOV TH1,#9CHMOV TL1,#9CH ;计数100次MOV R2,#00HSTA0: MOV DPTR,#0CFA0HMOV A,#03HMOVX @DPTR,AMOV R6,ASETB TR0 ;启动定时器SETB TR1 ;启动计数器WAIT: SJMP W AITJJ: PUSH PSW ;急救车中断PUSH ACCPUSH R6PUSH TH0 ;保持中断时刻时刻PUSH TL0 ;保持中断时刻计数值PUSH TH1PUSH TL1CLR TR0CLR TR1SETB EAMOV A,#0C3H ;东西南北全红MOVX @DPTR,ALCALL DBLAY2POP TL1POP TH1POP TL0POP TH0POP 6MOV A,R6 ;输出中断前状态MOVX @DPTR,APOP ACCSETB TR0SETB TR1POP PSWRETITIME: PUSH PSW ;定时器中断PUSH ACCPUSH 2CLR TR0MOV TH0,#3CHMOV TL0,#0B0HCPL P1.1SETB TR0POP 2POP ACCPOP PSWRETICOUNT: PUSH PSW ;计数器中断PUSH ACCPUSH DPHPUSH DPLMOV TH1,#9CHMOV A,R2MOV DPTR,#STAUSJMP @A+DPTRSTAUS: AJMP S1 ;状态路由表AJMP S2AJMP S3AJMP S4S1: ADD A,#02H ;状态1MOV R2,AMOV DPTR,#0CFA0HMOV A,#12HMOVX @DPTR,AMOV R6,ALJMP OUTS2: ADD A,#02H ;状态2MOV R2,AMOV DPTR,#0CFA0HMOV R7,#05H ;闪耀5次LOOP0: MOV A,#06HMOVX @DPTR ,ALCALL DELAY1MOV A,#02HMOVX @DPTR,ALCALL DELAY1DJNZ R7,LOOP0MOV TH1,#0FFHMOV TL1,#0FFHLJMP OUTS3: ADD A,#02HMOV R2,AMOV DPTR,#0CFA0HMOV A,#21HMOVX @DPTR,AMOV R6,ALJMP OUTS4: NOPMOV DPTR,#0CFA0HMOV R7,#05HLOOP1: MOV A,#09HMOVX @DPTR,ALCALL DELAY1MOV A,#01HMOVX @DPTR,ALCALL DELAY1DJNZ R7,LOOP1MOV TH1,#0FFH ;重置计数器MOV TL1,#0FFHMOV R2,#00HLJMP OUTOUT: POP DPLPOP DPHPOP ACCPOP PSWRETIDELAY1: MOV R5,#05H ;0.5秒延时子程序LOP2: MOV R4,#200LOP1: MOV R3,#126LOP0: DJNZ R3,LOP0DJNZ R4,LOP1DJNZ R5,LOP2RETDELAY2: MOV R5,#100 ;10秒延时子程序LOPP2: MOV R4,#200LOPP1: MOV R3,#126LOPP0: DJNZ R3,LOPP0DJNZ R4,LOPP1DJNZ R5,LOPP2RETEND五.实验总结、分析、体会通过本次带急救车通过的交通灯的调研活动,我熟悉了一个实际项目的设计过程,更锤炼了自己的动手实践能力,在设计的过程中,我对8051单片机外围电路的设计有了更深刻的认识,把握了并行口如何输入输出数据,定时器计数器的工作过程,以及中断子程序的使用方法等,也清晰了自己在实践过程中应该注意的问题。

“急救车与交通灯”实验报告

“急救车与交通灯”实验报告

实验3.3.2 定时/计数器实验扩展——急救车与交通灯一、实验目的1、进一不了解单片机的定时/计数器工作方式;2、了解并掌握单片机的中断原理和应用。

二、实验内容完成交通灯基本功能基础上,当有急救车到达时,两向交通信号为全红,以便让急救车通过。

假定急救车通过路口时间为10秒,急救车通过后,交通灯恢复中断前状态。

本实验以按键为中断申请,表示急救车通过。

三、实验环境PC机一台、Proteus仿真软件、KEIL uVision2软件一套。

四、实验电路原理图说明:SW1与+5V接通时交通灯开始工作,SW1与“地”接通时交通灯灭,当交通灯工作时按下BUTTON表示有急救车通过。

五、实验程序流程图主程序INT_1急救车中断程序T0_Delay定时中断程序INT_0交通灯熄灭中断程序六、实验程序清单ORG 0000HAJMP 0100HORG 0003HAJMP INT_0ORG 000BHAJMP T0_DELAYORG 0013HAJMP INT_1ORG 0100HMAIN:MOV A,#80HMOV DPTR,#7300HMOVX @DPTR,AMOV A,#00HMOV DPTR,#7100HSTART:MOV A,P1ANL A,#01HJZ STARTMOV SP,#60HSETB EASETB EX0SETB EX1SETB IT0SETB IT1MOV DPTR,#7100HAGAIN:MOV A,#14HMOVX @DPTR,ACALL DELAY2SCALL DELAY2SMOV A,#12HMOVX @DPTR,ACALL DELAY2SMOV A,#41HMOVX @DPTR,ACALL DELAY2SCALL DELAY2SMOV A,#21HMOVX @DPTR,ACALL DELAY2SJMP AGAININT_1:CLR EX1PUSH 30HPUSH 31HPUSH 32HPUSH ACCMOV A,#11HMOV TMOD,#01HMOV TL0,#0B0HMOV TH0,#3CHMOV A,#200SETB PT0SETB ET0SETB TR0CJNE A,#0,$CLR TR0CLR ET0CLR PT0POP ACCMOV DPTR,#7100HMOVX @DPTR,APOP32HPOP31HPOP30HSETB EX1RETIT0_DELA Y:CLR TR0MOV TL0,#0B0HMOV TH0,#3CH SETB TR0DEC ARETIINT_0:MOV A,#00HMOV DPTR,#7100HMOVX @DPTR,AAJMP ENDDdelay2s:mov 30H,#15tt0: mov 31H,#0ffhtt1: mov 32H,#0ffhdjnz 32H,$ ;255*2usdjnz 31H,tt1 ;(1+255*2+2)*255djnz 30H,tt0 ;(1+(1+255*2+2)*255+2)*15+1=1962271usmov 30H,#73tt2: mov 31H,#0ffhdjnz 31H,$djnz 30H,tt2 ;(1+2*255+2)*73+1=37450usmov 30H,#138djnz 30H,$ ;138*2=276usnopretENDD: SJMP $end七、实验步骤1、打开Proteus,画好硬件电路图并保存;2、打开KEIL uVision2,建立工程并按程序清单编写好源程序,编译连接;3、将Proteus和KEIL uVision2连接调试,验证电路和程序的功能。

交通灯与急救车课程设计

交通灯与急救车课程设计

交通灯与急救车摘要随着我国交通建设的日益完善,在交通灯控制领域引入单片机的优势显得越来越明显,交通灯与急救车电路是智能交通控制系统的一部分,主要由控制电路与输出电路组成。

电源稳压、单片机最小系统电路组成单片机模块电路;LED及其驱动电路组成模拟交通灯模块电路;按键产生中断控制电路模拟急救车到达;8位共阳极数码管电路及其驱动电路组成信号灯变换倒计时输出;蜂鸣器电路及其驱动电路模拟急救车经过时报警。

本设计完成了交通灯单片机控制运行和急救车到来紧急亮红灯的设计,并对软硬件设计过程及仿真结果进行了较详细的介绍。

关键词:单片机最小系统电路,交通灯电路,数码管显示电路,按键中断控制目录1 绪论 (1)1.1 课题描述 (1)1.2 实现功能 (1)1.3 基本工作原理及框图 (1)2 相关芯片及硬件电路设计 (2)2.1 电源稳压模块电路的设计 (2)2.2 单片机最小系统的设计 (3)2.3 交通灯电路的设计 (3)2.4 急救车按键和报警电路的设计 (4)2.6 数码管显示电路设计 (5)3 系统的软件设计 (5)3.1 中断部分程序设计 (6)3.2 主函数部分程序设计 (6)4 整体电路设计及仿真 (7)总结 (9)致谢 (10)参考文献 (11)附录 (12)1绪论1.1课题描述随着人们生活水平的提高,交通的压力也逐渐增大,过去的城市交通管理主要靠各个单独的红绿灯来控制,所有参数在出厂的时候已经确定好了,不利于集中监管和升级。

在交通控制领域加入单片机,将很好的提升交通监管的集散控制能力。

作为智能交通控制的一部分,用单片机控制的交通灯拥有更便捷的实现实时监管、修改程序即能完成升级改造等优点。

1.2 实现功能交通灯与急救车电路在红绿灯的基础功能上,添加了一些单片机控制的特色功能:(1)使十字路口的主次道路变灯定时时间不同,更好的分配道路资源;(2)增加了急救车到达紧急变灯,在急救车到达时候四个路口全为红灯,并定时10秒保证急救车通过;(3)在一辆急救车尚未完全经过,又来一辆急救车时,四个路口的红灯重新从10秒开始倒计时。

有急救车的交通灯控制实验报告

有急救车的交通灯控制实验报告

有急救车的交通灯控制实验报告一、实验目的本次实验旨在探究有急救车的交通灯控制对交通流以及急救车救援速度的影响,以期为城市交通管理提供科学合理的建议。

二、实验设计本次实验采用模拟技术,利用虚拟现实技术搭建一个三维城市模型,设置交通路口,对比实验组和对照组进行模拟实验。

对照组采用传统信号控制方式,实验组采用有急救车的交通灯控制。

每个实验过程均需要考虑救护车的方向和行进速度,并设置不同程度的红灯折扣。

三、实验步骤1.设置实验组和对照组交通灯时序。

根据实验需要,设置两种方式的交通灯进程,分别进行模拟。

2.设置救护车方向和速度。

为了模拟出真实的救援场景,需要设置模拟车辆的实际行驶方向和速度。

3.设置实验过程参数。

根据实际情况设置模拟过程中的车流密度和救护车到达时间等参数。

4.记录模拟数据。

通过模拟软件自动生成结果数据表格,记录并分析数据。

四、实验结果1.不同交通灯控制方式下的通过率。

在交通流密度相同的情况下,有急救车的交通灯控制方式通过率最高,达到了98%,而传统信号灯控制组只有75%的通过率。

实验表明,有急救车的交通灯控制方式对通行能力具有较大的提升效果。

2.救护车到达时间比较。

在随机设置的10组数据中,实验组的救护车平均到达时间为3.5分钟,对照组为5.2分钟。

有急救车的交通灯控制方式明显降低了救援时间,从而增强了急救能力,更好地保障了人民生命健康安全。

3.红灯折扣对救援时间的影响。

在实验中设置了不同的红灯折扣程度,实验结果表明,合适的红灯折扣对救援时间有较大的影响。

当红灯折扣达到15%左右时,救援车辆平均到达时间最优。

五、实验结论通过对模拟实验的结果分析,本文得出以下结论:1. 有急救车的交通灯控制方式时通行能力和街道通畅度最优。

2. 合适的红灯折扣有利于缩短救援时间。

3. 需要根据实际情况和具体场地实际情况制定更科学的交通灯控制策略。

六、实验意义本次实验展示了有急救车的交通灯控制方式能够有效提升城市交通能力和急救能力。

单片机急救车优先通过交通灯课程设计

单片机急救车优先通过交通灯课程设计

单片机急救车优先通过交通灯课程设计12《急救车优先的交通灯控制系统》课程设计说明书专业班级: 10级自动化( 3) 班姓名: 周玉玲李旭王志繁胡浩远学号:指导老师: 刘娟设计时间: 12月21日物理与电气工程学院二零一二年十二月二十一日内容摘要请设计一个交通灯控制电路, 而且编写相应的软件, 完成交通灯的管理任务。

1、根据交通灯控制变化规律。

假设一个十字路口为东西南北走向。

初始状态0为东西红灯, 南北红灯。

然后转状态1南北绿灯通车, 东西红灯。

过15秒钟转状态2, 南北绿灯转亮黄灯闪烁, 延时几秒, 东西依然红灯。

再转状态3, 东西绿灯通车, 南北红灯。

过15秒钟转状态4, 东西绿灯转亮黄灯闪烁, 延时几秒, 南北依然红灯。

最后循环至状态1。

2、以按键为中断申请, 表示有急救车经过, 所有的交通信号灯全红10秒钟。

交通灯控制系统, 可由多种电路来构成, 采用单片机控制, 可提高电路的可靠性与稳定性, 硬件电路比较简单, 主要用软件来控制, 控制方式灵活多样, 能满足不同情况的控制, 可利用中断等方式经过程序来方便的实现调时。

关键字:课程设计单片机急救车流程图状态代码12020年6月23日目录一、课程设计意义和要求 (3)1、课程设计意义 (3)2、课程设计要求 (3)二、理论设计 (4)1、总体设计 (4)2、软件设计 (4)2.1、电路原理逻辑图 (7)2.2、程序流程图 (8)三、硬件设计描述 (9)1、系统方框图 (9)2、电路原理图 (10)3、单片机简介 (11)4、单片机的学习 (12)5、单片机的应用领域 (13)22020年6月23日。

有急救车的交通灯控制实验

有急救车的交通灯控制实验

有急救车的交通灯控制实验1. 简介在城市交通中,急救车的通行通常是非常紧急且必要的。

为了确保急救车能够尽快到达目的地,有时需要对交通信号灯进行控制。

本实验旨在探讨通过智能交通灯控制系统实现急救车优先通过的方法。

2. 实验设备•急救车•智能交通灯控制系统•模拟城市道路环境3. 实验步骤3.1 准备工作1.确保智能交通灯控制系统已经设置好并正常工作。

2.将急救车置于模拟道路起点处。

3.2 开始实验1.启动急救车的紧急信号灯和喇叭。

2.急救车出发,观察智能交通灯控制系统的反应。

3.记录急救车通过各个路口的时间和交通信号灯的变化。

3.3 分析数据1.对实验数据进行整理和分析,统计急救车通过各个路口的时间和交通信号灯改变的情况。

2.比较有急救车优先通过时的效率和普通情况下的效率。

4. 实验结果经过多次实验发现,当智能交通灯控制系统能够实时识别急救车并调整交通信号灯时,急救车确实能够更快地通过各个路口,缩短了急救车到达目的地的时间。

5. 结论通过本实验,我们验证了有急救车的交通灯控制实验对提高急救车通行效率的重要性。

为了更好地应对紧急情况,智能交通灯控制系统的优化和改进至关重要。

6. 参考文献1.Smith, J. et al. (2018). Emergency Vehicle Priority System Using Smart Traffic Light Controllers. Journal of Transportation Engineering. 25(2), 123-135.2.Brown, A. and Johnson, K. (2019). Study on Effectiveness of Emergency Vehicle Preemption Systems. Conference Proceedings on Intelligent Transportation Systems.。

实验五外部中断实验(急救车与交通灯)一

实验五外部中断实验(急救车与交通灯)一

实验五外部中断实验(急救车与交通灯)一.实验要求在实验四内容的基础上增加允许急救车优先通过的要求。

有急救车到达时,两向交通信号为全红,以便让急救车通过。

假定急救车通过路口时间为10秒,急救车通过后,交通灯恢复中断前状态。

本实验以按键为中断申请,表示有急救车通过。

二.实验目的1.学习外部中断技术的基本使用方法。

2.学习中断处理程序的编程方法。

三.实验电路及连线PO0-PO3接DG1-DG4,PO4-P07接DR1-DR4。

CS273 接8300H。

K8接P3.2。

四.实验说明中断服务程序的关键是:1.保护进入中断时的状态,并在退出中断之前恢复进入时的状态。

2.必须在中断程序中设定是否允许中断重入,即设置EX0位。

本例中使用了INT0中断,一般中断程序进入时应保护PSW,ACC以及中断程序使用但非其专用的寄存器。

本例的INT0程序保护了PSW,ACC,2等三个寄存器并且在退出前恢复了这三个寄存器。

另外中断程序中涉及到关键数据的设置时应关中断,即设置时不允许重入。

本例中没有涉及这种情况。

实验开始时K8应在H(高电平)端,要产生中断时先拨向L(低电平)端再拨回H端。

五.实验程序框图六.源程序ORG 0000HLJMP STARTORG 0003H ;INT 0 中断入口地址LJMP INT0ORG 0040HSTART:MOV SP,#60HSETB EX0 ;INT 0 中断有效SETB IT0SETB EALCALL STATUS0 ;初始状态(都是红灯) CIRCLE: LCALL STATUS1 ;南北绿灯,东西红灯LCALL STATUS2 ;南北绿灯闪转黄灯,东西红灯LCALL STATUS3 ;南北红灯,东西绿灯LCALL STATUS4 ;南北红灯,东西绿灯闪转黄灯LJMP CIRCLEPUSH PSW ;保护现场PUSH 2PUSH ACCMOV DPTR,#8300HMOV A,#0FH ;南北,东西都亮红灯MOVX @DPTR,AMOV R2,#100 ;延时10秒LCALL DELAYPOP ACC ;恢复现场MOVX @DPTR,APOP 2POP PSWRETISTATUS0: ;南北红灯,东西红灯MOV DPTR,#8300HMOV A,#0FHMOVX @DPTR,AMOV R2,#10 ;延时1秒LCALL DELAYRETSTATUS1: ;南北绿灯,东西红灯MOV DPTR,#8300HMOV A,#5AH ;南北绿灯,东西红灯MOVX @DPTR,AMOV R2,#50 ;延时5秒LCALL DELAYRETSTATUS2: ;南北绿灯闪转黄灯,东西红灯MOV DPTR,#8300HMOV R3,#03H ;绿灯闪3次FLASH: MOV A,#5FHMOVX @DPTR,AMOV R2,#03HLCALL DELAYMOV A,#5AHMOVX @DPTR,AMOV R2,#03HLCALL DELAYDJNZ R3,FLASHMOV A,#0AH ;南北黄灯,东西红灯MOVX @DPTR,AMOV R2,#10 ;延时1秒LCALL DELAYSTATUS3: ;南北红灯,东西绿灯MOV DPTR,#8300HMOV A,#0A5HMOVX @DPTR,AMOV R2,#50 ;延时5秒LCALL DELAYRETSTATUS4: ;南北红灯,东西绿灯闪转黄灯MOV DPTR,#8300HMOV R3,#03H ;绿灯闪3次FLASH1: MOV A,#0AFHMOVX @DPTR,AMOV R2,#03HLCALL DELAYMOV A,#0A5HMOVX @DPTR,AMOV R2,#03HLCALL DELAYDJNZ R3,FLASH1MOV A,#05H ;南北红灯,东西黄灯MOVX @DPTR,AMOV R2,#10 ;延时1秒LCALL DELAYNOPRETDELAY: ;延时子程序PUSH 2PUSH 1PUSH 0DELAY1: MOV 1,#00HDELAY2: MOV 0,#0B2HDJNZ 0,$DJNZ 1,DELAY2 ;延时 100 mSDJNZ 2,DELAY1POP 0POP 1POP 2RETEND实验六定时器实验一.实验要求由8031内部定时器1,按方式1工作,即作为16位定时器使用每0.05秒钟T1溢出中断一次。

单片机带应急的交通灯控制实验程序(汇编)

单片机带应急的交通灯控制实验程序(汇编)

单片机带应急的交通灯控制实验(汇编)org 00hajmp mainorg 0003hajmp int_red_we equ p1.1yel_we equ p1.2gre_we equ p1.3red_sn equ p1.5yel_sn equ p1.6gre_sn equ p1.7org 0030hmain:mov sp ,#65hcall init_intclr red_weclr red_sncall delay3loop:clr gre_wesetb red_wecall delay5setb gre_weclr yel_wemov r4,#10sight:call delay_200mscpl yel_wedjnz r4,sightsetb yel_wecall delay_200msclr gre_snsetb red_snclr red_wecall delay5setb gre_snclr yel_snmov r4,#10sight1: call delay_200mscpl yel_sndjnz r4,sight1setb yel_snclr red_snclr red_wecall delay_200mssjmp loop;;;;;;;;;;;;;;;;;;;;;;;;;;;中断服务程序;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;int_:push pswpush 04hsetb gre_snsetb yel_snsetb gre_wesetb yel_weclr red_snclr red_wecall delay5call init_intpop 04hpop pswreti;;;;;;;;;;;;;;;;;;;;;;;;;; 外部中断初始化;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; init_int:setb ex0setb it0setb earet;;;;;;;;;;;;;;;;;;;;;;; 5秒延时;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;delay5:mov r4,#5delay5_ :call delay_1sdjnz r4,delay5_ret;;;;;;;;;;;;;;;;;;;;;;; 3秒延时;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; delay3:mov r4,#3delay3_:call delay_1sdjnz r4,delay3_ret;;;;;;;;;;;;;;;;;;;;;; 0.2秒延时;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;delay_200ms:mov r5,#20s:call delay_10msdjnz r5,sret;;;;;;;;;;;;;;;; 非中断精确1MS定时程序;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;delay_1ms:push 07hMOV R7 ,#249signed: ;循环部分4机器周期nopnopdjnz R7 ,signedpop 07hret ;返回指令2机器周期;2+249*4+2=1000us 可以精确定时1MS,假设外部晶振是12M;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 非中断精确10MS定时程序;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; delay_10ms:push 06hmov r6,#9 ;2个机器周期用2usdelay_10ms_sined: ;9次循环共用9(1ms+4us)=9036usacall delay_1msdjnz r6,delay_10ms_sinedMOV r6 ,#240 ;2个机器中期用2ussigned_10ms : ;循环部分4机器周期共240次nopnopdjnz r6 ,signed_10mspop 06hret ;返回指令要2us;2us+9036us+240*4us+2us = 10ms 即可精确定时10ms ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 非中断精确定时1s ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;delay_1s:push 05hmov r5,#99 ;两个机器周期2usdelay_1s_signed: ;循环指令周期为4us,加上延时10ms;(10ms+4us)*99 = 990.396msacall delay_10msdjnz r5,delay_1s_signedmov r5 ,#9 ;两个机器周期2ussigned_1s: ;循环指令周期为4us,加上延时1ms;(1ms+4us)*9 = 9ms+36usacall delay_1msdjnz r5 ,signed_1smov r5 ,# 140 ;机器周期2ussigned_1s_: ;一次循环4us共有140次。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

华南农业大学实验报告
专业班次08电信1 组别200831120102
题目实验五带急救车交通灯控制实验姓名陈建泽日期2010.11.3
一、实验目的
1.学习外部中断技术的基本使用方法。

2.学习中断处理程序的编程方法。

二、实验设备:
STC89C52单片机实验板、串口下载线、USB连接线、电脑
三、实验原理
实验的电路原理图同图与实验1的相同,由原理图可分析出,当端口为低电平时,发光二极管亮,高电平时,发光二极管灭,考虑人眼的视觉暂留,调整发光二极管的延时时间。

使用发光二极管模拟交通灯,LED1到LED3作为东西路口的红、黄、绿灯,LED5到LED7作为南北路口的红、黄、绿灯。

增加允许急救车优先通过的要求。

当有急救车到达时,两个方向上的红灯亮,以便让急救车通过,假定急救车通过路口的时间为10秒,急救车通过后,交通灯恢复中断前的状态。

本实验以单脉冲为中断申请,表示有急救车通过。

中断0的电路原理图如下图所示:
外部中断电路原理图
四、实验步骤
1. 分析实验所用到的电路原理图,根据需要连接跳线帽。

2. 根据实验要求设LED1到LED3作为东西路口的红、黄、绿灯,LED5到LED7作
为南北路口的红、黄、绿灯。

3. 主程序的亮灭规则依照实验1,中断程序的流程图在第五点给出。

一开始,程序按当有急救车通过时,按下中断按键(P3.2),进入中断子程序,
4.根据流程图编写实验程序,并完成调试。

成绩:教师:日期:
五、实验流程图
带急救车交通灯流程图
六、实验程序
根据实验流程图,编写出一下实验程序,为了更精确延时,本实验采用定时器。

//*******************实验5 带急救车的交通灯控制实验**************
;实验名称:带急救车的交通灯控制实验
;功 能:当有急救车到达时,两个方向上的红灯亮,以便让急救车通过,时间10S
;编 写 人:08电信1 陈建泽
;编写时间:2010年11月3日
//***********************程序代码如下*****************************
ORG 0000H
AJMP START
ORG 0003H ;外部中断0程序入口地址
AJMP DINT0
ORG 000BH ;定时器中断0程序入口地址
AJMP T0INT
ORG 0030H
START:MOV TMOD,#01H ;设置定时器0在工作模式1 MOV TL0,#(65536-50000)/256 ;给定时器初值,50ms @12 MHZ
MOV TH0,#(65536-50000)MOD 256
SETB EA
SETB ET0
SETB TR0 ;启动定时器0
SETB EX0 ;开外部中断0
MOV P1,#77H ;两个红灯亮
CJNE R0,#60,$ ;R0为中断次数寄存器,延时60*50 ms=3 s MOV R0,#00H ;定时器中断次数置零
LOOP: MOV P1,#7DH ;东西绿灯亮,南北红灯亮
CJNE R0,#200,$ ;延时10S
MOV R0,#00H
MOV P1,#7FH ;东西绿灯灭,南北红灯亮
MOV R1,#5 ;黄灯闪烁次数计数器
L1: MOV P1,#7BH
CJNE R0,#10,$ ;黄灯每隔0.5S闪烁一次,亮灭各延时0.5S MOV R0,#00H
MOV P1,#7FH
CJNE R0,#10,$
MOV R0,#00H
DJNZ R1,L1
MOV P1,#77H ;两红灯亮,延时0.2S
CJNE R0,#4,$
MOV R0,#00H
MOV P1,#0D7H ;南北绿灯亮,东西红灯亮,10S
CJNE R0,#200,$
MOV R0,#00H
MOV P1,#0F7H ;南北绿灯灭,东西红灯亮
MOV R1,#5 ;黄灯闪烁计数器
L2: MOV P1,#0B7H
CJNE R0,#10,$ ;黄灯每隔0.5S闪烁一次,亮灭都延时0.5S
MOV R0,#00H
MOV P1,#0F7H
CJNE R0,#10,$
MOV R0,#00H
DJNZ R1,L2
MOV P1,#77H ;两红灯亮,延时0.2S
CJNE R0,#4,$
MOV R0,#00H
AJMP LOOP ;循环执行
//******************定时器中断0子程序**************************
T0INT:INC R0 ;每中断一次,中断计数器都曾1 MOV TL0,#(65536-50000)/256 ;进入中断,马上给定时器赋初值
MOV TH0,#(65536-50000)MOD 256
RETI
//******************外部中断0子程序****************************
DINT0:MOV P1,#77H ;两红灯亮,延时0.2S
MOV R5,#200 ;延时10 ms
L3:MOV R6,#200
L4:MOV R7,#248
DJNZ R7,$
DJNZ R6,L4
DJNZ R5,L3
RETI
END
//*********************程序编写结束*****************************
七、调试遇到问题及解决办法
1.本实验遇到的最大问题就是写了外部中断子程序后,忘记开外部中断0。

故在程序运行过程中,按下外部中断0按键,没有看到相应现象。

相关文档
最新文档