《2022年自动化大学方案单片机交通灯系统方案.docx》由会员分享,可在线阅读,更多相关《2022年自动化大学方案单片机交通灯系统方案.docx(32页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用南京化工职业技术学院毕业设计 论文)基于单片机的交通灯设计姓 名:XXX 所在系部 : 自动掌握系 专业班级 : 自动化 XXX 指导老师 :XXX 2022 年 12 月Nanjing College of Chemical Technology Graduation project:名师归纳总结 - - - - - - -第 1 页,共 21 页精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用 Based on SCM traffic light design Candidate :XX
2、X Supervisor : QXXX Dec,2022 目 录3.1 单片机概述 . . 7 3.2 芯片挑选与介绍 . 7 12 12 名师归纳总结 - - - - - - -第 2 页,共 21 页精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用 12 14 15 摘 要近年来随着科技的飞速进展,单片机的应用正在不断深化,同时带动传统掌握检测技术日 益更新;在实时检测和自动掌握的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面学问是不够的,仍应依据详细硬件结构软硬件结合,加以完善;十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊;那么靠
3、什么来实现这井 然秩序呢?靠的就是交通信号灯的自动指挥系统;交通信号灯掌握方式许多;本系统采纳 MSC-51 系列单片机 ATSC51和可编程并行 I/O 接口芯片 8255A 为中心器件来设计交通灯掌握器,实 8051 芯片的 P1 口设置红、绿灯燃亮时间的功能;红绿灯循环点 现了能依据实际车流量通过 亮,倒计时剩 5 秒时黄灯闪耀警示 交通灯信号通过 PA口输出,显示时间直接通过 8255 的 PC 口输出至双位数码管);车辆闯红灯报警;绿灯时间可检测车流量并可通过双位数码管显示;本系统有用性强、操作简洁、扩展功能强;关键词:单片机 交通灯 闯红灯 检测车流量第一章 引言当今,红绿灯安装在
4、各个道口上,已经成为疏导交通车辆最常见和最有效的手段;但这一 技术在 19 世纪就已显现了;名师归纳总结 - - - - - - -第 3 页,共 21 页精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用1858 年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械扳手式信号灯,用以指挥马车通行;这是世界上最早的交通信号灯;1868 年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世界上最早的煤气红绿灯;它由红绿两以旋转式方形玻璃提灯组成,红色表示“ 停止” ,绿色表示“ 留意” ;警察受伤,遂被取消;1869 年 1 月 2 日,煤气
5、灯爆炸,使电气启动的红绿灯显现在美国,这种红绿灯由红绿黄三色圆形的投光器组成,1914 年始安 装于纽约市 5 号大街的一座高塔上;红灯亮表示“ 停止” ,绿灯亮表示“ 通行” ;1918 年,又显现了带掌握的红绿灯和红外线红绿灯;带掌握的红绿灯,一种是把压力探测 器安在地下,车辆一接近红灯便变为绿灯;另一种是用扩音器来启动红绿灯,司机遇红灯时按 一下嗽叭,就使红灯变为绿灯;红外线红绿灯当行人踏上对压力敏锐的路面时,它就能察觉到 有人要过公路;红外光束能把信号灯的红灯延长一段时间,推迟汽车放行,以免发生交通事 故;信号灯的显现,使交通得以有效管制,对于疏导交通流量、提高道路通行才能,削减交通
6、事故有明显成效; 1968 年,联合国道路交通和道路标志信号协定对各种信号灯的含义作了 规定;绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某 一种转向;左右转弯车辆都必需让合法地正在路口内行驶的车辆和过人行横道的行人优先通 行;红灯是禁行信号,面对红灯的车辆必需在交叉路口的停车线后停车;黄灯是警告信号,面 对黄灯的车辆不能越过停车线,但车辆已非常接近停车线而不能安全停车时可以进入交叉路 口;其次章 交通治理方案论证2.1 设计任务:东西、南北两干道交于一个十字路口,各干道有一组红、黄、绿三色的指示灯,指挥车辆 和行人安全通行;红灯亮禁止通行,绿灯亮答应通行;黄灯亮
7、提示人们留意红、绿灯的状态即 将切换,且黄灯燃亮时间为东西、南北两干道的公共停车时间;设东西道比南北道的车流量 大,指示灯燃亮的方案如表 2;表 2 亮灯次序和间隔时间名师归纳总结 S 605S 0S 105S 第 4 页,共 21 页- - - - - - -精选学习资料 - - - - - - - - - 西道东灯亮红灯亮个人资料整理仅限学习使用黄绿黄灯亮灯亮北道南灯亮绿灯亮黄红黄灯亮灯亮2.2 方案介绍:1)当东西方向为红灯,此道车辆禁止通行,东西道行人可通过;南北道为绿灯,此道车辆通过,行人禁止通行;时间为 60 秒;2)黄灯闪耀 5 秒,警示车辆和行人红、绿灯的状态即将切换;3)当东
8、西方向为绿灯,此道车辆通行;南北方向为红灯,南北道车辆禁止通过,行人通行;时间为 100 秒; 东西方向车流大 通行时间长;4)这样如上表的时间和红、绿、黄显现的次序依次显现这样行人和车辆就能安全畅通的通行;5)此表可依据车流量动态设定红绿灯初始值;第三章 交通灯系统硬件设计3.1 单片机的概述:单片机是一块集成电路芯片上集中了掌握器、储备器、运算器和输入输出端口的单片微型运算机,它体积小,耗电省,主要用于构成工业掌握单元,在过程掌握、智能外表、机电一体化和家用电器等领域起着重要的掌握作用,所以精确反映单片机本质的叫法应是微掌握器、数据储备器 RAM、定时 / 计数器、并行接口、串行接口和中断
9、系统等几大单元及数据总线、地址总线和掌握总线等三大总线,现在我 们分别加以说明: 中心处理器:中心处理器 CPU是整个单片机的核心部件,是8 位数据宽度的处理器,能处理8 位二进制数据或代码, CPU负责掌握、指挥和调度整个单元系统和谐的工作,完成运算和掌握输入输 出功能等操作 4 ; 数据储备器 RAM 8051 内部有 128 个 8 位用户数据储备单元和128 个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放掌握指令数据,用户只能拜访,而不能用于存放用户数据,所 以,用户能使用的 RAM只有 128 个,可存放读写的数据,运算的中间结果或用户定义的字型表 4 ;名师归纳总结 -
10、 - - - - - -第 6 页,共 21 页精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用 图 1 8051 内部结构图 程序储备器 ROM:8051 共有 4096 个 8 位掩膜 ROM,用于存放用户程序,原始数据或表格 4 ; 定时 / 计数器 ROM:8051 有两个 16 位的可编程定时 / 计数器,以实现定时或计数产生中断用于掌握程序转向 4 ; 并行输入输出 I/O 口:8051 共有 4 组 8 位 I/O 口P0、 P1、P2 或 P3,用于对外部数据的传输 4 ; 全双工串行口:8051 内置一个全双工串行通信口,用于与其它设备间的串行数据
11、传送,该串行口既可以 用作异步通信收发器,也可以当同步移位器使用 4 ; 中断系统 :8051 具备较完善的中断功能,有两个外中断、两个定时满意不同的掌握要求,并具有2 级的优先级别挑选2 ; 时钟电路 :/ 计数器中断和一个串行中断,可8051 内置最高频率达12MHz的时钟电路,用于产生整个单片机运行的脉冲时序,但8051单片机需外置振荡电容;单 片 机的 结 构有 两种类 型 ,一 种是 程 序储备 器 和数 据存 储 器分开 的 形式 ,即 哈 佛 Harvard 结构,另一种是采纳通用运算机广泛使用的程序储备器与数据储备器合二为一的结 构,即普林斯顿 Princeton 结构; IN
12、TEL 的 MCS-51系列单片机采纳的是哈佛结构的形式,而 后续产品 16 位的 MCS-96系列单片机就采纳普林斯顿结构 7 ;下图是 MCS-51系列单片机的内部结构示意图3.2.2 8255 芯片简介名师归纳总结 - - - - - - -8255可编程并行接口芯片简介: 8255 可编程并行接口芯片有三个输入输出端口,即A 口、 B 口和 C 口,对应于引脚PA7PA0、PB7PB0和 PC7PC0;其内部仍有一个掌握寄存器,即掌握口;通常A 口、 B 口作为输入输出的数据端口; C 口作为掌握或状态信息的端口,它在方式字的掌握下,可以分成4 位的端口,每个端口包含一个4 位锁存器;
13、它们分别与端口A/B 协作使用,可以用作掌握信号输出或作为状态信号输入6 ;第 7 页,共 21 页精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用8255可编程并行接口芯片方式掌握字格式说明 : 8255 有两种掌握命令字;一个是方式挑选掌握字;另一个是C 口按位置位 / 复位掌握字;其中 C 口按位置位 / 复位掌握字方式使用较为繁难,说明也较冗长,故在此不作表达,需要时 用户可自行查找有关资料;方式掌握字格式说明如表 1:表 1、方式挑选掌握格式DDDDDDDD7 6 5 4 3 2 1 0 D7:设定工作方式标志, 1 有效;D6、D5:A口方式挑选 0 0
14、 方式 0 0 1 方式 1 1 方式 2 D4:A口功能 1= 输入, 0=输出)D3:C口高 4 位功能 1= 输入, 0=输出)D2:B口方式挑选 0=方式 0,1=方式 1)D1:B口功能 1= 输入, 0=输出)D0:C口低 4 位功能 1= 输入, 0=输出)8255可编程并行接口芯片工作方式说明 : 方式 0:基本输入 / 输出方式;适用于三个端口中的任何一个;每一个端口都可以用作输入 或输出;输出可被锁存,输入不能锁存 6 ;方式 1:选通输入 / 输出方式;这时 A 口或 B 口的 8 位外设线用作输入或输出,C口的 4 条 线中三条用作数据传输的联络信号和中断恳求信号 6
15、;方式 2 :双向总线方式;只有A 口具备双向总线方式, 8 位外设线用作输入或输出,此时C口的 5 条线用作通讯联络信号和中断恳求信号 6 ;2.3.3 74LS373 简介74LS373 是一种带三态门的 8D锁存器,其管脚示意图如下示:名师归纳总结 - - - - - - -第 8 页,共 21 页精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用其中: 1D-8D为 8 个输入端; 1Q-8Q 为 8 个输出端;LE为数据打入端:当 LE为“ 1” 时,锁存器输出状态同输入状态;当 LE由“1” 变“0” 时,数据打入锁存器OE为输出答应端:当 OE=0时,三
16、态门打开;当 OE=1时,三态门关闭,输出高阻;第四章 掌握器的软件设计4.1 每秒钟的设定延时方法可以有两种一中是利用MCS-51内部定时器才生溢出中断来确定1 秒的时间,另一种是采纳软延时的方法;4.2 计数器硬件延时4.2.1 计数器初值运算定时器工作时必需给计数器送计数器初值,这个值是送到TH和 TL 中的;他是以加法记数的,并能从全 1 到全 0 时自动产生溢出中断恳求;因此,我们可以把计数器记满为零所需的计数值设定为 C和计数初值设定为 TC 可得到如下运算通式: TC=M-C 式中, M为计数器摸值,该值和计数器工作方式有关;在方式 M的值为 216;在方式 2 和 3 为 28
17、;0 时 M为 213 ;在方式 1 时名师归纳总结 - - - - - - -第 9 页,共 21 页精选学习资料 - - - - - - - - - 4.2.2 运算公式个人资料整理仅限学习使用 T=MTC)T计数或 TCM-TT 计数T计数是单片机时钟周期 TCLK的 12 倍;TC为定时初值如单片机的主脉冲频率为 TCLK12MHZ ,经过 12 分频方式 0 TMAX2 13 1 微秒 8.192 毫秒方式 1 TMAX2 16 1 微秒 65.536 毫秒明显 1 秒钟已经超过了计数器的最大定时间,所以我们只有采纳定时器和软件相结合的办法才能解决这个问题 1 ;4.2.3 1 秒的
18、方法我们采纳在主程序中设定一个初值为 20 的软件计数器和使 TO定时 50 毫秒这样每当 TO到 50 毫秒时 CPU就响应它的溢出中断恳求,进入他的中断服务子程序;在中断服务子程序中, CPU先使软件计数器减 1,然后判定它是否为零,为零表示 1 秒已到可以返回到输出时间显示程序 1 ;4.2.4 相应程序代码)主程序定时器需定时 50 毫秒,故 T0 工作于方式 1;初值: TCM-T T ORG 1000H 计数 2 16 50ms/1us=15536=3CBOH START: MOV TMOD, #01H ; 令 T0 为定时器方式 1 MOV TH0, #3CH ; 装入定时器初值
19、 MOV TL0, #BOH ; MOV IE, #82H ; 开 T0 中断 SEBT TRO ; 启动 T0 计数器 MOV RO, #14H ; 软件计数器赋初值LOOP: SJMP $ ; 等待中断)中断服务子程序 ORG 000BH AJMP BRTO ORG 00BH BRTO:DJNZ RO,NEXT AJMP TIME ; 跳转到时间及信号灯显示子程序名师归纳总结 - - - - - - -第 10 页,共 21 页精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用DJNZ:MOV RO,#14H ; 复原 RO值 MOV TH0, #3CH MOV
20、TL0, #BOH MOV IE, #82H RET1 END 4.3 软件延时; 重装入定时器初值MCS-51的工作频率为 2-12MHZ,我们选用的 8051 单片机的工作频率为 6MHZ;机器周期与 主频有关,机器周期是主频的 12 倍,所以一个机器周期的时间为 12*1/6M)=2us;我们可以 知道详细每条指令的周期数,这样我们就可以通过指令的执行条数来确定 1 秒的时间;详细的延时程序分析:DELAY: MOV R4,#08H ;延时 1 秒子程序 DE2:LCALL DELAY1 DJNZ R4,DE2 RET DELAY1:MOV R6,#0 ;延时 125ms 子程序 MOV
21、 R5,#0 DE1: DJNZ R5,$ DJNZ R6,DE1 RET MOV RN,#DATA 字节数数为 2 ;机器周期数为1 所以此指令的执行时间为 2ms DELAY1 为一个双重循坏 循环次数为 256*256=65536 所以延时时间 =65536*2=131072us 约 为 125us DELAY R4设置的初值为 8 主延时程序循环 8 次,所以 125us*8= 1 秒名师归纳总结 由于单片机的运行速度很快其他的指令执行时间可以忽视不计4 ;第 11 页,共 21 页- - - - - - -精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用4
22、.4 时间及信号灯的显示4.4.1 8051 并行口的扩展8051 虽然有 4 个 8 位 I/O 端口, 但真正能供应借用的只有P1 口, 由于 P2 和 P0 口通常用于传送外部传送地址和数据 ,P3 口也有它的其次功能;因此,8031 通常需要扩展;由于我们用外 部输入设定红绿灯倒计时初值、数码管的输出显示、红绿黄信号灯的显示都要用到一个 I/O 端 口,明显 8031 的端口是不够,需要扩展;扩展的方法有两种: 1)借用外部 RAM地址来扩展 I/O 端口; 2)采纳 I/O 接口新片来扩充;我们用 8255 并行接口信片来扩展I/O 端口10 ;4.4.2 显示原理:当定时器定时为
23、1 秒,时程序跳转到时间显示及信号灯显示子程序,它将依次显示信号灯 时间 ,同时始终显示信号灯的颜色,这时在返回定时子程序定时一秒,在显示黄灯的下一个 时间,这样依次把全部的灯色的时间显示完后在重新给时间计数器赋初值,重新进入循环;4.4.3 8255PA 口输出信号接信号灯 由于发光二极管为共阳极接法,输出端口为低电平,对应的二极管发光,所以可以用置位 方法点亮红,绿,黄发光二极管;8255输出信号与数码管的连接 LED 灯的显示原理 : 通过同名管脚上所加电平的高低来掌握发光二极管是否点量而显示不同的字形如 SP,g,f,e,d,c,b,a管角上加上所以上为伏,不亮其余为高电平,全亮就显示
24、为10 ;采纳共阴级连接 : 其中 PC0PB0-a, PC1PB1-b, PC2PB2-c, PC3PB3-d, 名师归纳总结 - - - - - - -第 12 页,共 21 页精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用PC4PB4-e, PC5PB5-f, PC6PB6-g PC7PB7 -SP接地表 3 驱动代码表显示数值dop g f e d c b a 驱动代码 16 进制)0 与 8051 的连接0 0 1 1 1 1 1 1 3FH 1 0 0 0 0 0 1 1 0 06H 2 0 1 0 1 1 0 1 1 5BH 3 0 1 0 0 1
25、1 1 1 4FH 4 0 1 1 0 0 1 1 0 66H 5 0 1 1 0 1 1 0 0 6DH 6 0 1 1 1 1 1 0 0 7DH 7 0 0 0 0 0 1 1 1 07H 8 0 1 1 1 1 1 1 1 7FH 4.4.4 8255用 8051 的 P0 口的 p0.7 连接 8255 的片选信号 CS我们用 8031 的地址采纳全译码方式,当 p0.7 =0 时片选有效,其他无效 , p0.1 用于挑选 8255 端口;P0.7 p0.6 p0.5 p0.4 p0.3 p0.2 P0.1 P0.0 A7 A6 A5 A4 A3 A2 A1 A0 名师归纳总结 -
26、- - - - - -第 13 页,共 21 页精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用1 X XXXX 0 0 00H 为 8255 的 PA口1 X XXXX 0 1 01H 为 8255 的 PB口1 X XXXX 1 0 02H 为 8255 的 PC口1 X XXXX 1 1 03H 为 8255 的掌握口由于 8051 是分时对 8255 和储存器进行拜访所以 8051 的 P0 口不会发生冲突 10 ;4.5 程序设计名师归纳总结 4.5.1 流程图如下列图11第 14 页,共 21 页- - - - - - -精选学习资料 - - - - -
27、 - - - - 个人资料整理 仅限学习使用图 9 程序流程图4.5.2 程序源代码11;主程序的入口地址ORG 0000H LJMP MAIN ;跳转到主程序的开头处ORG 0003H ;外部中断 0 的中断程序入口地址 ORG 000BH LJMP T0_INT ORG 0013H ;定时器 0 的中断程序入口地址;跳转到中断服务程序处;外部中断 1 的中断程序入口地址名师归纳总结 - - - - - - -第 15 页,共 21 页精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用MAIN : MOV SP,#50H MOV IE,#8EH ;CPU开中断,答应
28、 T0中断, T1 中断和外部中断 1 中断 MOV TMOD,#51H ;设置 T1 为计数方式 ,T0 为定时方式,且都工作于模式1 MOV TH1,#00H ;T1 计数器清零 MOV TL1,#00H SETB TR1 ;启动 T1 计时器 SETB EX1 ;答应 INT1 中断 SETB IT1 ;挑选边沿触发方式 MOV DPTR ,#0003H MOV A, #80H ;给 8255 赋初值, 8255 工作于方式 0 MOVX DPTR, A AGAIN: JB P3.1,N0 ;判定是否要设定东西方向红绿灯时间的初值,如P3.1 为 1 就跳转 MOV A,P1 JB P1
29、.7,RED ;判定 P1.7 是否为 1,如为 1 就设定红灯时间,否就设定绿灯 时间 MOV R0,#00H ;R0清零 MOV R0,A ;存入东西方向绿灯初始时间 MOV R3,A LCALL DISP1 LCALL DELAY AJMP AGAIN RED: MOV A,P1 ANL A,#7FH ;P1.7 置 0 MOV R7,#00H ;R7清零 MOV R7,A ;存入东西方向红灯初始时间 MOV R3,A LCALL DISP1 LCALL DELAY AJMP AGAIN ;- 名师归纳总结 N0: SETB TR0 ;启动 T0 计时器第 16 页,共 21 页 MOV
30、 76H,R7 ;红灯时间存入 76H - - - - - - -精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用N00: MOV A,76H ;东西方向禁止,南北方向通行 MOV R3,A MOV DPTR,#0000H MOV A,#0DDH MOVX DPTR, A N01: JB P2.0,B0 N02: SETB P3.0 CJNE R3,#00H,N01 ;置 8255A口,东西方向红灯亮,南北方向绿灯亮;比较 R3中的值是否为 0,不为 0 转到当前指令处执行;-黄灯闪耀 5 秒程序 - N1: SETB P3.0 MOV R3,#05H MOV DP
31、TR,#0000H MOV A,#0D4H MOVX DPTR,A N11: MOV R4,#00H ;置 8255A口,东西,南北方向黄灯亮N12: CJNE R4,#7DH,$ ;黄灯连续亮 0.5 秒 N13: MOV DPTR,#0000H ; 置 8255A口,南北方向黄灯灭 MOV A,#0DDH MOVX DPTR,A N14: MOV R4,#00H CJNE R4,#7DH,$ ;黄灯连续灭 0.5 秒 CJNE R3,#00H,N1 ;闪耀时间达 5 秒就退出;-N2: MOV R7,#00H MOV A,R0 ;东西通行,南北禁止 MOV R3,A MOV DPTR,#0
32、000H MOV A,#0EBH MOVX DPTR,A N21: JB P2.0,T03 ; 置 8255A口,东西方向绿灯亮,南北方向红灯亮N22: CJNE R3,#00H,N21 名师归纳总结 ;-黄灯闪耀 5 秒程序 - 第 17 页,共 21 页- - - - - - -精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用N3: MOV R3,#05H MOV DPTR,#0000H MOV A,#0E2H MOVX DPTR,A N31: MOV R4,#00H ;置 8255A口,东西,南北方向黄灯亮 CJNE R4,#7DH,$ ;黄灯连续亮 0.5
33、秒 N32: MOV DPTR,#0000H ; 置 8255A口,南北方向黄灯灭 MOV A,#0EBH MOVX DPTR,A N33: MOV R4,#00H CJNE R4,#7DH,$ ;黄灯连续灭 0.5 秒 CJNE R3,#00H,N3 SJMP N00 ;闪耀时间达 5 秒就退出;-闯红灯报警程序 - B0: MOV R2,#03H ;报警连续时间 3 秒B01: MOV A,R3 JZ N1 ;如倒计时完毕,不再报警 CLR P3.0 ;报警 CJNE R2,#00H,B01 ;判定 3 秒是否终止SJMP N02 ;-1 秒延时子程序 - N7: RETI T0_INT:
34、MOV TL0,#9AH MOV TH0,#0F1H INC R4 INC R5 CJNE R5,#0FAH,T01 ;给定时器 T0 送定时 10ms的初值;判定延时是否够一秒,不够就调用显示子程序名师归纳总结 MOV R5,#00H ;R5清零第 18 页,共 21 页 DEC R3 ;倒计时初值减一 DEC R2 ;报警初值减一T01: ACALL DISP ;调用显示子程序 RETI ;中断返回;-显示子程序 - - - - - - - -精选学习资料 - - - - - - - - - 个人资料整理 仅限学习使用DISP: JNB P2.4,T02 DISP1: MOV B,#0AH
35、 MOV A,R3 DIV AB MOV 79H,A MOV 7AH,B ;R3中值二转十显示转换DIS: MOV A,79H ;显示十位 MOV DPTR,#TAB MOVC A,A+DPTR MOV DPTR,#0002H MOVX DPTR,A MOV DPTR,#0001H MOV A,#0F7H MOVX DPTR,A LCALL DELAY DS2: MOV A,7AH ;显示个位 MOV DPTR,#TAB MOVC A,A+DPTR MOV DPTR,#0002H MOVX DPTR,A MOV DPTR,#0001H MOV A,#0FBH MOVX DPTR,A RET ;
36、-东西方向车流量检测程序 - T03: MOV A,R3 SUBB A,#00H JZ N3 JB P2.0,T03 ;如绿灯倒计时完毕,不再检测车流量 INC R7 CJNE R7,#64H,E1 MOV R7,#00H ;中断到 100 次就清零 E1: SJMP N22 名师归纳总结 - - - - - - -第 19 页,共 21 页精选学习资料 - - - - - - - - - ;-东西方向车流量显示程序 - 个人资料整理仅限学习使用T02: MOV B,#0AH MOV A,R7 ;R7中值二转十显示转换 DIV AB MOV 79H,A MOV 7AH,B DIS3: MOV
37、A,79H ;显示十位 MOV DPTR,#TAB MOVC A,A+DPTR MOV DPTR,#0002H MOVX DPTR,A MOV DPTR,#0001H MOV A,#0F7H MOVX DPTR,A LCALL DELAY DS4: MOV A,7AH ;显示个位 MOV DPTR,#TAB MOVC A,A+DPTR MOV DPTR,#0002H MOVX DPTR,A MOV DPTR,#0001H MOV A,#0FBH MOVX DPTR,A LJMP N7 ;-延时 4MS子程序 - DELAY: MOV R1,#0AH LOOP: MOV R6,#64H NOP LOOP1: DJNZ R6,LOOP1 DJNZ R1,LOOP RET ;-字符表 - TAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH 名师归纳总结 - - - - - - -第 20 页,共 21 页精选学习资料 - -