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

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

ID:58017101

大小:29.50 KB

页数:4页

时间:2020-04-07

单片机实验5--带急救车的交通灯控制实验.doc_第1页
单片机实验5--带急救车的交通灯控制实验.doc_第2页
单片机实验5--带急救车的交通灯控制实验.doc_第3页
单片机实验5--带急救车的交通灯控制实验.doc_第4页
资源描述:

《单片机实验5--带急救车的交通灯控制实验.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、华南农业大学实验报告专业班次08电信1组别2题目实验五带急救车交通灯控制实验姓名陈建泽日期2010.11.3一、实验目的1.学习外部中断技术的基本使用方法。2.学习中断处理程序的编程方法。二、实验设备:STC89C52单片机实验板、串口下载线、USB连接线、电脑三、实验原理实验的电路原理图同图与实验1的相同,由原理图可分析出,当端口为低电平时,发光二极管亮,高电平时,发光二极管灭,考虑人眼的视觉暂留,调整发光二极管的延时时间。使用发光二极管模拟交通灯,LED1到LED3作为东西路口的红、黄、绿灯,LED5到LED7作为南北路口的红、黄、绿灯。增加允许急救车优先通过的要求。当有急救车到达时,两个

2、方向上的红灯亮,以便让急救车通过,假定急救车通过路口的时间为10秒,急救车通过后,交通灯恢复中断前的状态。本实验以单脉冲为中断申请,表示有急救车通过。中断0的电路原理图如下图所示:外部中断电路原理图四、实验步骤1.分析实验所用到的电路原理图,根据需要连接跳线帽。2.根据实验要求设LED1到LED3作为东西路口的红、黄、绿灯,LED5到LED7作为南北路口的红、黄、绿灯。3.主程序的亮灭规则依照实验1,中断程序的流程图在第五点给出。一开始,程序按当有急救车通过时,按下中断按键(P3.2),进入中断子程序,4.根据流程图编写实验程序,并完成调试。成绩:教师:日期:五、实验流程图开始两个红灯亮并延时

3、3S东西路口绿灯亮,南北路口红灯亮。并且延时10S东西路口绿灯灭,黄灯闪烁5次,亮灭各延时0.5S两红灯同时亮,并延时0.2S南北路口绿灯亮,东西路口红灯亮。并且延时10S南北路口绿灯灭,黄灯闪烁5次,亮灭各延时0.5S两红灯同时亮,并延时0.2S中断入口操作端口使红灯全亮黄灯、绿灯全灭延时10S中断返回带急救车交通灯流程图六、实验程序根据实验流程图,编写出一下实验程序,为了更精确延时,本实验采用定时器。//*******************实验5带急救车的交通灯控制实验**************;实验名称:带急救车的交通灯控制实验;功能:当有急救车到达时,两个方向上的红灯亮,以便让急救

4、车通过,时间10S;编写人:08电信1陈建泽;编写时间:2010年11月3日//***********************程序代码如下*****************************ORG0000HAJMPSTARTORG0003H;外部中断0程序入口地址AJMPDINT0ORG000BH;定时器中断0程序入口地址AJMPT0INTORG0030HSTART:MOVTMOD,#01H;设置定时器0在工作模式1MOVTL0,#(65536-50000)/256;给定时器初值,50ms@12MHZMOVTH0,#(65536-50000)MOD256SETBEASETBET0SETB

5、TR0;启动定时器0SETBEX0;开外部中断0MOVP1,#77H;两个红灯亮CJNER0,#60,$;R0为中断次数寄存器,延时60*50ms=3sMOVR0,#00H;定时器中断次数置零LOOP:MOVP1,#7DH;东西绿灯亮,南北红灯亮CJNER0,#200,$;延时10SMOVR0,#00HMOVP1,#7FH;东西绿灯灭,南北红灯亮MOVR1,#5;黄灯闪烁次数计数器L1:MOVP1,#7BHCJNER0,#10,$;黄灯每隔0.5S闪烁一次,亮灭各延时0.5SMOVR0,#00HMOVP1,#7FHCJNER0,#10,$MOVR0,#00HDJNZR1,L1MOVP1,#77

6、H;两红灯亮,延时0.2SCJNER0,#4,$MOVR0,#00HMOVP1,#0D7H;南北绿灯亮,东西红灯亮,10SCJNER0,#200,$MOVR0,#00HMOVP1,#0F7H;南北绿灯灭,东西红灯亮MOVR1,#5;黄灯闪烁计数器L2:MOVP1,#0B7HCJNER0,#10,$;黄灯每隔0.5S闪烁一次,亮灭都延时0.5SMOVR0,#00HMOVP1,#0F7HCJNER0,#10,$MOVR0,#00HDJNZR1,L2MOVP1,#77H;两红灯亮,延时0.2SCJNER0,#4,$MOVR0,#00HAJMPLOOP;循环执行//******************

7、定时器中断0子程序**************************T0INT:INCR0;每中断一次,中断计数器都曾1MOVTL0,#(65536-50000)/256;进入中断,马上给定时器赋初值MOVTH0,#(65536-50000)MOD256RETI//******************外部中断0子程序****************************DINT0:MOVP1,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。