单片机实验三(急救车与交通灯)
单片机课程设计急救车优先的交通灯控制系统
《急救车优先的交通灯控制系统》课程设计说明书专业班级: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课程设计意义大学本科学生动手能力的培养和提高是大学本科教育的一个重要内容,《单片机原理及应用》是一门应用性较强的课程。
如何让学生在学好基础知识的同时,迅速掌握应用技术,实验与课程设计环节起着非常重要的作用。
本课程设计的意义,是让学生通过课程设计,首先建立起单片机应用系统的概念,根据实际的系统设计要求,掌握初步的单片机系统设计方法,从硬件系统和软件系统设计两个方面得到实际的提高,为今后的毕业设计打下良好的基础。
单片机-急救车交通灯
目录任务书 (2)一课程设计的目的和要求 (3)二.总体设计 (3)2.1基本工作原理 (3)2.2硬件总体设计 (4)2.3软件总体设计 (4)三.硬件设计 (6)四.软件设计 (7)1.程序流程图 (7)2.程序清单 (8)五.结束语 (11)六.参考文献 (11)机械系统单片机控制训练任务书设计题目:中断应用设计—有急救车的交通灯控制根据学号选择题目,每个人根据具体题目填写设计内容:1、总体方案设计2、选择可编程接口芯片3、设计硬件电路4、编写汇编语言程序5、程序调试及验证6、编写课程设计说明书(参考目录见第一部分)时间安排:1、总体设计1天2、选择芯片及设计硬件电路1天3、编写汇编语言程序1天4、程序调试及验证1天5、编写课程设计说明书0.5天6、答辩0.5天指导教师:教研室主任:主管院长:年月日一.课程设计的目的和要求1.1、课程设计的目的1.掌握用定时器延时或软件延时进行定时控制的方法。
2.掌握外部中断技术的基本使用方法。
3.掌握中断处理程序的编程方法。
1.2、课程设计的基本要求设计制作一个模拟的十字路口交通灯控制系统要求:1.正常情况下东西与南北两个方向轮流点亮红、绿灯信号,每次持续时间30S,中间有2S的黄灯过度。
2.东西与南北两个方向各设一个紧急切换按钮。
某个方向按下时,该方向紧急切换为绿灯,以便于特种车辆通过。
3.扩展实验箱上的74LS273做为输出口,控制六个发光二极管亮灭,模拟交通灯管理。
4.当有急救车到达时,两个方向上的红灯亮,以便让急救车通过,假定急救车通过路口的时间为10秒,急救车通过后,交通灯恢复中断前的状态。
本题目以单脉冲为中断申请,表示有急救车通过。
二.总体设计2.1、基本工作原理首先必须了解交通路灯的亮灭规律。
本题目需要用到实验箱上八个发光二极管中的六个,即红、黄、绿各两个。
不妨将L1(红)、L2(绿)、L3(黄)做为东西方向的指示灯,将L5(红)、L6(绿)、L7(黄)做为南北方向的指示灯。
单片机__急救车优先通过交通灯课程设计.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)在人们的日常生活中,几乎与每个人都息息相关。
单片机交通灯实验报告
单片机交通灯实验报告一、实验目的二、实验原理三、实验器材四、实验步骤五、实验结果六、实验分析与讨论七、实验总结一、实验目的:本次单片机交通灯实验的主要目的是通过使用单片机控制LED灯的亮灭,模拟交通信号灯的运行状态,并能够正确地掌握单片机编程技巧和硬件连接技术。
二、实验原理:本次交通灯实验采用了单片机作为中央处理器,通过编写程序控制LED灯的亮灭来模拟交通信号灯。
在程序中,我们需要使用到延时函数和条件判断语句。
具体来说,在红绿黄三个LED灯之间切换时,需要设定一个时间段,并在该时间段内循环执行红绿黄三个LED灯亮度变化的循环语句。
三、实验器材:1. 单片机开发板一块;2. LED 灯若干;3. 杜邦线若干。
四、实验步骤:1. 将红色 LED 灯连接至 P0 口;2. 将黄色 LED 灯连接至 P1 口;3. 将绿色 LED 灯连接至 P2 口;4. 将单片机开发板与电脑连接,打开 Keil 软件;5. 编写程序,将红色 LED 灯亮起来;6. 编写程序,将黄色 LED 灯亮起来;7. 编写程序,将绿色 LED 灯亮起来;8. 编写程序,模拟交通信号灯的运行状态。
五、实验结果:在完成了上述步骤后,我们成功地模拟出了交通信号灯的运行状态。
具体来说,在程序中我们设定了一个时间段为10s,在这个时间段内,红灯亮 5s,黄灯亮 2s,绿灯亮 3s。
在这个时间段结束后,循环执行该过程。
六、实验分析与讨论:通过本次交通灯实验,我们学习到了如何使用单片机控制LED灯的亮灭,并能够正确地编写程序模拟交通信号灯的运行状态。
在编写过程中需要注意以下几点:1. 在使用延时函数时要注意时间单位和精度;2. 在编写条件判断语句时要注意逻辑结构和语法规范;3. 在硬件连接时要注意杜邦线的颜色对应关系和插口位置。
七、实验总结:本次单片机交通灯实验是一次非常有意义的实践活动。
通过此次实验,我们掌握了单片机编程技巧和硬件连接技术,并能够正确地模拟交通信号灯的运行状态。
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;}}。
实验三 急救车与交通灯实验(4学时)
实验三急救车与交通灯实验(4学时)一、实验目的(1)了解8255芯片的结构、工作方式及编程方法(2)学习模拟十字路口交通控制的实现方法;(3)熟练掌握外部中断技术的使用方法。
二、实验内容(1)在实验箱上完成:用8255的PA口、PB口的低四位做输出口,控制十二个发光二极管亮灭,模拟十字路口交通灯管理。
一般情况下正常显示,有急救车到达时,两个方向四个路口交通信号灯全红,以便让急救车通过。
设急救车通过路口时间为10秒,急救车通过后,交通恢复正常。
本实验用单次脉冲申请外部中断,表示有急救车通过。
(2)用Proteus软件参照实验电路连线并仿真运行,得出与实验箱上相同的软件仿真结果。
所用元器件:单片机AT89C51、可编程并口芯片8255A、按键BUTTON、发光二极管LED-GREEN(RED、BLUE)、8位锁存器74LS273或74LS373、3-8译码器74LS138、或非门74LS02、排阻或电阻RESPACK-8(RES) 、8位缓冲器74LS244参考仿真电路图:三、程序框图四、实验连线(只连图中粗实线)五、实验步骤①8255 PB3~PB0、PA7~PA0依次接发光二极管L1~L12。
②编写程序,初始态为四个路口的红灯全亮之后,东西路口的绿灯亮南北路口的红灯亮,东西路口方向通车。
延时一段时间后东西路口的绿灯熄灭,黄灯开始闪耀。
闪耀若干次后,东西路口红灯亮,而同时南北路口的绿灯亮,南北路口方向开始通车,延时一段时间后,南北路口的绿灯熄灭,黄灯开始闪耀。
闪耀若干次后,再切换到东西路口方向,之后重复以上过程。
六、实验说明中断服务程序的关键是:①保护进入中断时的状态,并在退出中断之前恢复进入时的状态。
②必须在中断程序中设定是否允许中断重入,即设置EX0位。
本例中使用了INT0中断(P3.2),一般中断程序进入时应保护PSW、ACC以及中断程序使用但非其专用的寄存器。
本例的中断程序保护了PSW、ACC等三个寄存器并且在退出前恢复了这三个寄存器。
外部中断(急救车与交通灯)课设
电气工程学院课程设计说明书设计题目:外部中断(急救车与交通灯)系别:工业自动化仪表系年级专业: 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、课程设计意义大学本科学生动手能力的培养和提升是大学本科教育的一个重要内容,《单片机原理及应用》是一门应用性较强的课程。
如何让学生在学好基础知识的同时,迅速把握应用技术,实验与课程设计环节起着专门重要的作用。
单片机交通灯实验报告
单片机交通灯实验报告实验目的:1.熟悉单片机的基本工作原理和编程方法。
2.学习如何使用单片机控制交通灯的运行。
3.加深对电子元器件和电路原理的理解和掌握。
实验器材:1.51系列单片机开发板:包括单片机主控板、显示器板、外部扩展板等。
2.LED灯:红色、黄色、绿色各一颗。
3.电阻:用于限流。
4.连接线:用于连接各个电子元器件。
实验原理:在交通中,红灯代表停止、黄灯代表警告、绿灯代表通行。
在本实验中,我们将使用单片机控制三个LED灯实现交通灯的运行。
具体原理如下:1.使用单片机的IO口控制LED灯的亮灭。
2.根据交通灯的运行状态,通过改变LED灯的亮灭顺序来模拟交通的运行。
实验步骤:1.连接电路:将三个LED灯连接到单片机的IO口,并通过电阻限流。
2.编写程序:使用C语言编写程序,在主函数中设置交通灯的运行状态和亮灭顺序。
3.烧写程序:将编写好的程序烧写到单片机中。
4.运行实验:启动单片机,观察LED灯的亮灭情况,验证交通灯是否能正常工作。
实验结果:经过实验,我们成功地实现了单片机交通灯的控制。
在程序运行过程中,红灯先亮,表示停止;然后黄灯亮,表示警告;最后绿灯亮,表示通行。
整个过程循环不断,符合实际交通灯的运行规律。
实验总结:通过这次实验,我深入了解了单片机的基本工作原理和编程方法,掌握了使用单片机控制交通灯的技巧。
同时,我也加深了对电子元器件和电路原理的理解和掌握。
这些知识将对我今后的学习和工作产生积极影响。
然而,在实验过程中也遇到了一些问题。
比如,如果LED灯连接不正确或程序编写有误,交通灯可能无法正常运行。
因此,在进行单片机实验时,我们需要仔细检查电路连接和程序编写,确保一切正常。
总之,单片机交通灯实验是一次充满趣味和挑战的实践活动。
通过这次实验,我不仅学到了许多知识,而且培养了动手能力和实践能力。
希望将来能有更多这样的实验机会,继续提升自己的电子技术水平。
有急救车的交通灯控制实验
有急救车的交通灯控制实验一.实验目的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秒开始倒计时。
单片机急救车优先通过交通灯课程设计
单片机急救车优先通过交通灯课程设计专业班级:10级自动化(3)班姓名:周玉玲李旭王志繁胡浩远学号:080310167 080310160 080310133 100210049指导老师:刘娟设计时刻:2020年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、课程设计意义大学本科学生动手能力的培养和提高是大学本科教育的一个重要内容,《单片机原理及应用》是一门应用性较强的课程。
如何让学生在学好基础知识的同时,迅速把握应用技术,实验与课程设计环节起着专门重要的作用。
单片机急救车优先通过交通灯课程设计
单片机急救车优先通过交通灯课程设计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、学习中断处理程序的编程方法。
二、实验设备:EL-8051-III型单片机实验箱三、实验内容:在实验三的内容的基础上增加允许急救车优先通过的要求。
当有急救车到达时,两个方向上的红灯亮,以便让急救车通过,假定急救车通过路口的时间为10秒,急救车通过后,交通灯恢复中断前的状态。
本实验以单脉冲为中断申请,表示有急救车通过。
四、实验原理:交通灯的燃灭规律见实验三。
本实验中断处理程序的应用,最主要的地方是如何保护进入中断前的状态,使得中断程序执行完毕后能回到交通灯中断前的状态。
要保护的地方,除了累加器ACC、标志寄存器PSW外,还要注意:一是主程序中的延时程序和中断处理程序中的延时程序不能混用,本实验给出的程序中,主程序延时用的是R5、R6、R7,中断延时用的是R3、R4和新的R5。
第二,主程序中每执行一步经74LS273的端口输出数据的操作时,应先将所输出的数据保存到一个单元中。
因为进入中断程序后也要执行往74LS273端口输出数据的操作,中断返回时如果没有恢复中断前74LS273端口锁存器的数据,则显示往往出错,回不到中断前的状态。
还要注意一点,主程序中往端口输出数据操作要先保存再输出,例如有如下操作:MOV A,#0F0H (0)MOVX @R1,A (1)MOV SAVE,A (2)程序如果正好执行到(1)时发生中断,则转入中断程序,假设中断程序返回主程序前需要执行一句MOV A,SAVE指令,由于主程序中没有执行(2),故SAVE中的内容实际上是前一次放入的而不是(0)语句中给出的0F0H,显示出错,将(1)、(2)两句顺序颠倒一下则没有问题。
发生中断时两方向的红灯一起亮10秒,然后返回中断前的状态。
五、实验原理图:(同实验三)六、实验步骤:74LS273的输出O0~O7接发光二极管L1~L8,74LS273的片选CS273\接片选信号CS2,此时74LS273的片选地址为CFB0H~CFB7H之间任选。
单片机交通灯控制实验报告
单片机交通灯控制实验报告单片机交通灯控制实验报告引言:交通灯是城市交通管理的重要组成部分,它能够有效地引导车辆和行人的交通流动,提高交通效率和安全性。
本实验旨在利用单片机技术设计一个简单的交通灯控制系统,以模拟真实的交通流量情况,并通过实验结果评估其性能和可靠性。
实验设备和原理:本实验使用的设备包括单片机、LED灯、电路板、电源等。
单片机是一种集成电路,具有处理器、存储器和输入输出接口等功能。
它能够根据预设的程序指令,控制外围设备的工作状态。
实验过程:首先,通过连接电路板和电源,将单片机与LED灯相连。
然后,编写单片机的程序,实现交通灯的控制逻辑。
在程序中,我们设置了三个状态:红灯亮、绿灯亮和黄灯亮。
根据预设的时间间隔,单片机会自动切换这些状态,模拟真实的交通灯工作过程。
实验结果:经过实验,我们观察到交通灯按照预设的时间间隔进行状态切换。
当红灯亮时,其他方向的灯都会熄灭;当绿灯亮时,其他方向的灯也会熄灭;当黄灯亮时,其他方向的灯同样会熄灭。
这样,交通灯能够有效地引导车辆和行人的通行,确保交通的有序进行。
实验分析:通过对实验结果的观察和分析,我们发现单片机交通灯控制系统具有以下优点:1. 精确控制:单片机能够精确计时,根据预设的时间间隔进行状态切换,保证交通灯的正常工作。
2. 灵活性:通过修改程序中的时间间隔和状态切换逻辑,可以灵活调整交通灯的工作模式,以适应不同的交通流量情况。
3. 可靠性:单片机具有较高的稳定性和可靠性,能够长时间稳定工作,减少交通灯故障的发生。
然而,单片机交通灯控制系统也存在一些不足之处:1. 依赖电力:交通灯需要外部电源供电,一旦供电中断,交通灯将无法正常工作,可能导致交通混乱。
2. 缺乏灵活性:单片机交通灯控制系统的状态切换逻辑是固定的,无法根据实时的交通流量情况进行动态调整。
结论:通过本次实验,我们成功设计并实现了一个简单的单片机交通灯控制系统。
该系统具有精确控制、灵活性和可靠性等优点,能够有效地引导交通流动。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机技术与应用
实验报告
实验名称:外部中断实验(急救车与交通灯)班级:11062811
学号:********
*名:***
指导老师:**
2013年5月20日
1. 实验要求
由以74LS273作为输出口,控制4个双色LED灯(可发红,绿,黄光),模拟交通灯管理,并允许急救车优先通过的要求。
有急救车到达时,两向交通信号为全红,以便让急救车通过。
假定急救车通过路口时间为10秒,急救车通过后,交通灯恢复中断前状态。
本实验以按键为中断申请,表示有急救车通过。
2. 实验目的
1.学习外部中断技术的基本使用方法。
2.学习中断处理程序的编程方法。
3. 程序说明:
在本次实验中,我们可以确定外部中断的作用是用于有救护车行驶过来时对程序的进行的简单的控制。
对于正常的红绿灯的亮灭我们可以参考第一个实验中流水灯的设计理念。
综上所述我们这一次的实验就是流水灯与外部中断的结合。
通过对七种情况的罗列
1 0 0 1 0 1 1 0 南北绿,东西红
0 1 1 0 1 0 0 1 南北红,东西绿
1 0 0 1 1 1 1 1 只亮东西红
0 1 1 0 1 1 1 1 只亮南北红
0 0 0 0 0 1 1 0 南北黄,东西红
0 0 0 0 1 0 0 1 南北红,东西黄
0 0 0 0 1 1 1 1 全红
我们可以利用XBYTE[0xf200]这个函数对这几种情况进行读取与显
示,在不同情况进行显示的过程中我们用以前的delay函数进行时间上的规划从而达到依次显示的效果。
0x0f 全红XBYTE[0xf200]=0x0f;
0x96 南北绿,东西红XBYTE[0xf200]=0x96;
0x9f 只亮东西红XBYTE[0xf200]=0x9f;
0x06 南北黄,东西红XBYTE[0xf200]=0x06;
0x69 南北红,东西绿XBYTE[0xf200]=0x69;
0x6f 只亮南北红XBYTE[0xf200]=0x6f;
0x09 南北红,东西黄XBYTE[0xf200]=0x09;
在具体的实验代码编写过程中,我们会用到EA=1;EX0=1;IT0=1;用于设定外部中断0为跳变沿触发方式,默认为电平触发方式。
interrupt 0函数是处理有救护车驶过时的情况。
至此,程序编写完成,放入软件中进行编译和下载。
2. 上机调试说明
将程序编写成功后,我们就上机进行调试。
下载成功后,拨动k7这个拨动开关形成外部中断的信号,在单片机的实验板上我们可以清楚地看到随着时间灯南北东西的一对一对的红黄绿的交替闪烁。
然后以按键开光来表示救护车的通过,然后看见所有的灯都变成红色。
至此实验仿真过程结束。
3. 写出源程序清单及执行结果。
源程序:
#include <reg52.h>
#include<absacc.h> //可使用其中定义的宏来访问绝对地址
#include <intrins.h>
#define uchar unsigned char·
#define uint unsigned int
void delay(uint xms)
{
unsigned int i,j;
for(i=xms;i>0;i--)
for(j=110;j>0;j--);
}
void main()
{
EA=1;
EX0=1;
IT0=1; //设定外部中断0为跳变沿触发方式,默认为电平触发方式IP=0x01; //外部中断0设置为高优先级中断
XBYTE[0xf200]=0x0f; //单片机端口P1输出0xf200绝对物理地址,全红
delay(5000); //延时5s
while(1)
{
XBYTE[0xf200]=0x96; //南北绿,东西红
delay(5000); //持续5s,之后为绿灯闪烁(绿转黄)XBYTE[0xf200]=0x9f;
delay(1000); //闪烁频率为1s
XBYTE[0xf200]=0x96;
delay(1000);
XBYTE[0xf200]=0x9f;
delay(1000);
XBYTE[0xf200]=0x96;
delay(1000);
XBYTE[0xf200]=0x9f;
delay(1000);
XBYTE[0xf200]=0x06; //黄灯持续5s
delay(5000);
XBYTE[0xf200]=0x69; //南北红,东西绿,持续5s
delay(5000);
XBYTE[0xf200]=0x6f;
delay(1000); //闪烁频率为1s
XBYTE[0xf200]=0x69;
delay(1000);
XBYTE[0xf200]=0x6f;
delay(1000);
XBYTE[0xf200]=0x69;
delay(1000);
XBYTE[0xf200]=0x6f;
delay(1000);
XBYTE[0xf200]=0x09;
delay(5000);
}
}
void exter0() interrupt 0 //中断服务程序,中断为外部中断0
{
XBYTE[0xf200]=0x0f;
delay(10000); //全红10s,急救车通过
}
4. 心得体会
本次实验中我们做的是一个交通灯的控制与救护车通过时的一个中断问题。
我想这次实验是上两次实验的结合。
然后我想对于一些看似很复杂的问题,如果我们可以将其分解为一些我们学过的会做的问题的话,问题就会迎刃而解。