单片机交通灯设计论文

时间:2024.4.21

单片机交通灯设计论文.txt我这人从不记仇,一般有仇当场我就报了。没什么事不要找我,有事更不用找我!就算是believe中间也藏了一个lie!我那么喜欢你,你喜欢我一下会死啊?我又不是人民币,怎么能让人人都喜欢我? 本文由阿东88888888贡献

doc文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。 引

在今天,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效 的手段。但这一技术在 19 世纪就已出现了。 1858 年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械扳 手式信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868 年,英国 机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世界上最 早的煤气红绿灯。它由红绿两以旋转式方形玻璃提灯组成,红色表示“停止” ,绿 色表示“注意” 。1869 年 1 月 2 日,煤气灯爆炸,使警察受伤,遂被取消。 1914 年,电气启动的红绿灯出现在美国。这种红绿灯由红绿黄三色圆形的投 光器组成,安装在纽约市 5 号大街的一座高塔上。红灯亮表示“停止” ,绿灯亮表 示“通行” 。 1918 年,又出现了带控制的红绿灯和红外线红绿灯。带控制的红绿灯,一种 是把压力探测器安在地下,车辆一接近红灯便变为绿灯;另一种是用扩音器来启 动红绿灯,司机遇红灯时按一下嗽叭,就使红灯变为绿灯。红外线红绿灯当行人 踏上对压力敏感的路面时,它就能察觉到有人要过马路。红外光束能把信号灯的 红灯延长一段时间,推迟汽车放行,以免发生交通事故。

信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交 通事故有明显效果。1968 年,联合国《道路交通和道路标志信号协定》对各种信号灯的含义 作了规定。绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志 禁止某一种转向。左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人 优先通行。红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。黄灯是警告 信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进 入交叉路口。

近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,同时也带 第 1 页共 14 页

动着传统控制的日新月异更新。在自动控制的单片机应用系统中,单片机往往是 作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构, 以及针对具体应用对象特点的软件结合,加以完善。 十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。那么靠什么 来实现这井然秩序呢?靠的是交通信号灯的自动指挥系统。交通信号灯控制方式 很多。本系统采用 MSC-51 系列单片机 AT89S52 为中心器件来设计交通灯控制器, 实现了能根据实际车流量通过单片机芯片的 P2 口设置红、绿灯燃亮时间的功能; 显示时间直接通过单片机的 P0、P3 口输出,系统实用性强、操作简单、扩展性强。 目录

引 言 ?? 1 摘 要 ?? 1 目录 ?? 2 一 设计要求 ?? 3 1.基本要求 ?? 3 2.创新部分 ?? 3 二 交通管理的方案论证 ?? 3 三 总体方案设计 ?? 4 1.系统框图 ?? 4 2.工作原理 ?? 5 3.计时控制方案 ?? 5 4.显示控制方案 ?? 5 四 芯片的选择与简介 ?? 6 1. MSC-51 芯片资源简介 ?? 6 2. 单片机的引脚 ?? 8 3. 89S51 单机的电源线 ?? 8 4. 89S51 单片机的外接晶体引脚 ?? 8 5. 89S51 单片机的控制线 ?? 8 6. 89S51 单片机复位方式 ?? 9 五 系统电路设计 ?? 10 1.电路原理图 ?? 10 2.电源电路 ?? 10 3.单片机最小系统 ?? 11 4.显示部分 ?? 12 5.信号

灯部分 ?? 12 六 系统软件设计 ?? 13 1.定时1秒的方法 ?? 13

第 2 页共 14 页

2.定时器初值计算 ?? 13 3.主程序模块 ?? 14 4.中断服务程序模块 ?? 14 5.显示程序模块 ?? 16 七 结论 ?? 16 八 致谢 ?? 17 九 参考文献 ?? 18 附录 1:程序清单 ?? 19

设计要求

1.基本要求 基本要求

(1)运用所学的知识设计一个交通灯控制系统。 (2)上电的时候南北方向的红灯亮 25 秒;东西方向的绿灯亮 20 秒,绿灯秒闪 2 秒,黄灯秒闪 3 秒。再接下来东西方向的红灯亮 25 秒;南北方向的绿灯亮 20 秒,绿灯秒闪 2 秒,黄灯秒闪 3 秒。如此循环。

2.创新部分 创新部分

(1)各种信号灯所亮的时间由数码管显示出来。 (2)在允许加器件的情况下实现在上电时南北方向和东西方向显示不一样的时 间。

交通管理的方案论证

东西、 南北两干道交于一个十字路口, 各干道有一组红、 黄、 绿三色的指示灯, 指挥车辆和行人安全通行。红灯亮禁止通行,绿灯亮允许通行。黄灯亮提示人们 注意红、绿灯的状态即将切换,且黄灯燃亮时间为东西、南北两干道的公共停车

第 3 页共 14 页

时间。设东西道比南北道的车流量大,指示灯燃亮的方案如表 2。 60S 东 西 红灯亮 道 南 北 绿灯亮 道 黄灯亮 红灯亮 黄灯亮 ?? 5S 黄灯亮 80S 绿灯亮 5S 黄灯亮 ?? ??

表 2 说明: (1)当东西方向为红灯,此道车辆禁止通行,东西道行人可通过;南北道 为绿灯,此道车辆通过,行人禁止通行。时间为 60 秒。 (2)黄灯闪烁 5 秒,警示车辆和行人红、绿灯的状态即将切换。 (3)当东西方向为绿灯,此道车辆通行;南北方向为红灯,南北道车辆禁 止通过,行人通行。时间为 80 秒。 东西方向车流大 通行时间长。 (4)这样如上表的时间和红、绿、黄出现的顺序依次出现这样行人和车辆 就能安全畅通的通行。( 5)此表可根据车流量动态设定红绿灯初始值。

总体方案设计

1.系统框图 .

交通灯控制的总体设计框图如图 2.1 所示。 电 源 信号灯时间 显示部分 震 部 荡 分 AT89S52

复 电

位 路

信号灯

第 4 页共 14 页

图2.1

2.工作原理 工作原理

由软件设置交通灯的初始时间,南北方向和东西方向各25秒,数码管的段码 用不同的口线,东西方向的是用的P0口,南北的使用P3口,用单片机来控制各种 信号灯的燃亮时间,通过单片机的P2口控制。

3.计时控制方案 计时控制方案

利用 MCS-51 内部的定时器/计数器进行定时,配合软件延时实现到计时。该 方案节省硬件成本,切能够使读者在定时器/计数器的使用、中断及程序设计方面 得到锻炼与提高,

4.显示控制方案 显示控制方案

显示分为静态示和动态显示静态显示由于占用较多的接口,在单片机设计中 常采用串行扩展来完成。该方案占用接口资源多,显示亮度由保证,但硬件开销 大,电路复杂,信息刷新速度慢,实用于并行接口资源较少以及对显示没有要求 的场合。LED 动态显示硬件连接简单,但动态扫描的显示方式需占用 CPU 较多的时 间,在该系统中由于单片机除了扫描 89S51 芯片外没有太多的实时测控任务,故 选用动态扫描方式。

第 5 页共 14 页

芯片的选择与简介

1. MSC-51 芯片资源简介 芯片资源 资源简介

89S51 是 MCS-51 系列单片机的典型产品,我们就这一代表性的机型进行系统的 讲解。89S51 单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/ 计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制 总线等三大总线,现在我们分别加以说明:

图 3.1

单片机内部结构示意图 单片机内部结构示意图

(1)中央处理器 中央处理器(CPU)是整个单片机的核心部件,是 8 位数据宽度的处理器,能处 理 8 位二进制数据或代码,CPU 负责控制、指挥和调度整个单元系统协调的工作, 第 6 页共 14 页

完成运算和控制输入输出功能等操作。 (2)数据存储器(RAM) 89S51 内部有 128 个 8 位用户数据存储单元和 128 个专用寄存器单元, 它们是 统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用 于存放用户数据,所以,用户能使用的 RAM 只有 128 个,可存放读写的数据,运 算的中间结果或用户定义的字型表。 (3)程序存储器(ROM) 89S51 共有 4KB 掩膜 ROM,最大可扩展 64K 字节,用于存放用户程序,原始数 据或表格。 (4)定时/计数器: 89S51 有两个 16 位的可编程定时/计数器,以实现定时或计数产生中断用于 控制程序转向。 (5)并行输入输出(I/O)口: 89S51 共有 4 组 8 位 I/O 口(P0、 P1、P2 或 P3),用于对外部数据的传输。 (6)中断系统 89S51 具备较完善的中断功能,有两个外中断、两个定时/计数器中断和一个 串行中断,可满足不同的控制要求,并具有 2 级的优先级别选择。

第 7 页共 14 页

2. 单片机的引脚 单片机的引脚

89S51 单片机内部总线是单总线结构,即数据总线和地址总线是公用的. 89S51 有 40 条引脚, 与其他 51 系列单片机引脚是兼容的. 这 40 条引脚可分为 I/O 接口 线、 电源线、 控制线、 外接晶体线 4 部分. 89S51 单片机为双列直插式封装结构, 如 图 3.2 所示. 图 3.2 89S51 引脚分配图

3.

89S51 单机的电源线

(1) VCC:+5V 电源线。电源线 (2) GND:接地线。

4.

89S51 单片机的外接晶体引脚

(1)XTAL1:片内振荡器反相放大器的输入端和内部时钟工作的输入端。采用 内部振荡器时,它接外部石英晶体和微调电容的一个引脚。 (2) XTAL2:片内振荡器反相放大器的

输出端,接外部石英晶体和微调电容的 另一端。采用外部振荡器时,该引脚悬空。外接晶体引脚。

5.

89S51 单片机的控制线

(1) RST:复位输入端,高电平有效。

第 8 页共 14 页

(2) ALE/PROG:地址锁存允许/编程线。 (3) PSEN:外部程序存储器的读选通线。 (4) EA/Vpp:片外 ROM 允许访问端/编程电源端。

6.

89S51 单片机复位方式

单片机在开机时或在工作中因干扰而使程序失控,或工作中程序处于某种死

循环状态,在这种情况下都需要复位. 复位的作用是使中央处理器 CPU 以及其他 功能部件都恢复到一个确定的初始状态,并从这个状态重新开始工作. 89S51 单片机的复位靠外部电路实现,信号由 RESET(RST)引脚输入,高电平有 效,在振荡器工作时,只要保持 RST 引脚高电平两个机器周期,单片机即复位. 复位 后,PC 程序计数器的内容为 0000H,片内 RAM 中内容不变. 复位电路一般有上电复 位、手动开关复位和自动复位电路 3 种,如图 3.3 所示.

+5V C 10μF R 8.2K VCC RST 89C51 GND 1K

+5V C 10μF R 8.2K VCC RST 89C51 GND MAX750

+5V VCC 10K RST 89C51 P1.0 WDC PESET 10μF WDI

c. 自动复位电路

a.上电复位电路

b. 手动复位电路

图 3.3 单片机复位电路

第 9 页共 14 页

系统电路设计 系统电路设计 电路

1.电路原理图 电路原理图

RP1

RESPACK-8

1

U1

19 XTAL1 P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7 P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15 P3.0/RXD P3.1/TXD P3.2/INT0 P3.3/INT1 P3.4/T0 P3.5/T1 P3.6/WR P3.7/RD 39 38 37 36 35 34 33 32 21 22 23 24 25 26 27 28 10 11 12 13 14 15 16 17

18

XTAL2

9

RST

29 30 31

PSEN ALE EA

1 2 3 4 5 6 7 8

P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 AT89C51

2 3 4 5 6 7 8 9

图3.2

2.电源电路 电源电路

采用经市电变压,稳压的稳压电源电路图如图 5.1 所示

第 10 页共 14 页

FU1

1A

7805

1 VI GND VO 3

+

IN4007

2

R1

in

47UF

out

C1

1000nF

500

_

图 5.1

电源电路

220V 市电经过降压后得到 12V 交流电,经二极管整流成脉动直流电,经过电 容滤波后再又经过 LM7805 稳压得到 5V 的直流电供系统工作,后面的发光二极管 是起一个电源指示的作用,470UF 的电容是起一个再次滤波的作用。

3.单片机最小系统 单片机最小系统

C1 U1

30pF 19 XTAL1 P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7 P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15 P3.0/RXD P3.1/TXD P3.2/INT0 P3.3/INT1 P3.4/T0 P3.5/T1 P3.6/WR P3.7/RD 39 38 37 36 35 34 33 32 21 22 23 24 25 26 27 28 10 11 12 13 14 15 16 17

X1 C2

30pF CRYSTAL 18

XTAL2

复位

C3

4.7uF 10k

9

RST

29 30 31

PSEN ALE EA

R2

1 2 3 4 5 6 7 8

P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 AT89C51

图5.2.1单片机最小系统 单片机最小系统以89c51为核心,外加时钟和复位电路,电路结构简单,抗干扰 能力强,成本相对较低,非常符合本设计的所有要求.89c51单片机系列是在MCS-51 系列的基础上发展起来的,是当前8位单片机的典型代表,采用CHMOS工艺,即互补 金属氧化物的HMOS工艺, CHMOS是CMOS和HMOS的结合,具有HMOS高速度和高密度的 特点,还具有CMOS低功耗的特点. 时钟电路在单片机的外部通过XTAL1,XTAL2这两个引脚跨接晶体振荡器和微 调电容,构成稳定的自激振荡器.本系统采用的为12MHz的晶振,一个机器周期为 第 11 页共 14 页

1us,C1,C2为30pF。 复位电路分为上电自动复位和按键手动复位,RST引脚是复位信号的输入端,复位 信号是高电平有效.上电自动复位通过电容C3和电阻R2来实现,按键手动复位是图 中复位键来实现的。

4.显示部分 显示部分

因为系统要求南北和东西方向的信号灯时间不一样,所以就利用单片机的p0和p3 口来做数码管的段码驱动,东西方向和南北方向的位线可以公共来使用,可以节 约单片机的口线。 数码管可以使用共阴数码管,数码管的每段的电流是10毫安。电路图如5.3所示 RP1

RESPACK-8

1

U1

19 XTAL1 P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7 P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15 P3.0/RXD P3.1/TXD P3.2/INT0 P3.3/INT1 P3.4/T0 P3.5/T1 P3.6/WR P3.7/RD 39 38 37 36 35 34 33 32 21 22 23 24 25 26 27 28 10 11 12 13 14 15 16 17

18

XTAL2

9

RST

29 30 31

PSEN ALE EA

1 2 3 4 5 6 7 8

P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 AT89C51

5.信号灯部分 信号灯部分

本设计利用单片机的 p2 口来驱动和控制各种信号灯的燃亮和燃亮时间,在实 际中,交通灯的信号灯需要用高电压控制,在这里我们只是模拟一下它的控制信 号,所以我们就只用单片机的信号引脚直接来控制发光二极管,电路图见图 5.4。

第 12 页共 14 页

2 3 4 5 6 7 8 9

图5.3

U1

19 XTAL1 P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7 P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15 P3.0/RXD P3.1/TXD P3.2/INT0 P3.3/INT1 P3.4/T0 P3.5/T1 P3.6/WR P3.7/RD 39 38 37 36 35 34 33 32 21 22 23 24 25 26 27 28 10 11 12 13 14 15 16 17

18

XTAL2

9

RST

29 30 31

PSEN ALE EA

1 2 3 4 5 6 7 8

P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 AT89C51

图 5.4

系统软件设计 系统软件设计

1.定时1秒的方法 定时1 定时

定时方法我们采用软硬件结合的方法,在主程序中设定一个初值为 20 的软件 计数器使定时器 0 工作于方式 1 定时 50 毫秒,这样每当 T0 到 50 毫秒时 CPU 就响 应它的溢出中断请求,进入他的中断服务子程序。在中断服务子程序中,CPU 先使 软件计数器减 1,然后判断它是否为零。为零表示 1 秒已到。

2.定时器初值计算 定时器初值计算

定时器工作时必须给计数器送初值,将这个值送到 TH 和 TL 中。他是以加法 记数的,并能从全 1 到全 0 时自动产生溢出中断请求。因此工作于方式 1,定时器 为 16 位计数器其定时时间由下式计算:

16 定时时间=(2 -X)×振荡周期×12(或)

X=216-定时时间/振荡周期×12 式中 x 为 T0 的初始值,该值和计数器工作方式有关。 如单片机的主脉冲频率为12MHZ 方式 0 方式 1 定时时间=213 定时时间=216 ,经过12分频

× 1 微秒=8.192 毫秒 × 1 微秒=65.536 毫秒

秒钟已经超过了计数器的最大定时间,所以我们只有采用定时器和软件相结 第 13 页共 14 页

合的办法才能解决这个问题,定时器需定时 50 毫秒,故T0 工作于方式 1,定时 20 次,就可定时一秒。

3.主程序模块 主程序模块

主程序初始化和按键控制,首先将时间、中断、次数、和显示分别进行初始 化,然后启动定时器对时间进行判断,将时间送数据缓冲区,调用显示程序,同 时扫描按键程序,用无条件跳转指令返回, 再调用显示程序,如此周而复始的循 环,如图 4.1 所示

开始

系统初始化

设置时间初值

初值送缓冲单元 拆分程序 初值自减

N 初值减到“0”? Y 返回 图 4.1 主程序流程

调用显示子程序

4.中断服务程序模块 中断服务程序模块

进入中断程序后,先保护现场,判断一秒钟到了吗?如果没有到将定时器重 装初值恢复现场,返回主程序,如果一秒钟到了,将软件计数器重初值;判断指

第 14 页共 14 页

示灯循环显示完了吗?如果没完,将保地址重新送入程序计数器中,然后再查表 下一地址,显示下一组指示灯状态和显示时间,保存下一组程序数据地址,将定 时器重装初值,恢复现场,返回主程序,查表首地址,查时间地址,保存下一地 址,将定时器重装初值,恢复

现场,返回主程序。同时一秒到了应先判断个位是 否为 0,如果个位是 0,判断十位是不是 0,如果十位也是 0,判断交通灯是否安 黄、绿、红的顺序循环完必,如果没循环完应查下一组数据继续循环,如果循环 完必,应查表首地址,周而复始的循环,如果十位不是 0,应将十位先减 1,个位 送 9,然后返回,再进行中断定时一秒,然后再判断,如果个位不是 0,应将个位 减 1,将定时器重装初值,恢复现场。重新周而复始的循环,如图 4.2 所示。 图 4.2 中断程序流程图

第 15 页共 14 页

5.显示程序模块 显示程序模块

显示程序采用动态显示,由位码控制那一个数码管显示,由段码控制数码管 显示什么数值,根据中断程序显示时间来查表显示数值,从第一位到第四位逐个 点亮,同时每显示一位判断一次四位显示完了吗?没有显示完进行显示下一位, 显示完了从头开始再循环。 七

结论

本系统就是充分利用了 AT89S52 芯片的 I/O 引角。系统统采用 MSC-51 系列单

片机为中心器件来设计交通灯控制器,实现了能根据实际车流量通过单片机芯片 的 P2 口设置红、绿灯燃亮时间的功能;p2 口和 p3 口外接数码管来显示各个信号 灯的时间。系统设计简便、实用性强、操作简单、程序设计简便。系统不足之处 不能控制车的左、右转、以及自动根据车流改变红绿灯时间等。这是由于本身地 理位子以及车流量情况所定,如果有需要可以设计扩充原系统来实现 通过这次毕业设计,使我得到了一次用专业知识、专业技能分析和解决问题 全面系统的锻炼。使我在单片机的基本原理、单片机应用系统开发过程,以及在 常用编程设计思路技巧(特别是汇编语言)的掌握方面都能向前迈了一大步,为 日后成为合格的应用型人才打下良好的基础。

第 16 页共 14 页

致谢

本课题在选题及研究过程中得到郭继红老师的悉心指导。郭老师多次询问研

究进程,并为我指点迷津,帮助我开拓研究思路,精心点拨、热忱鼓励。郭老师 一丝不苟的作风,严谨求实的态度,踏踏实实的精神,不仅授我以文,而且教我 做人,虽历时三载,却给以终生受益无穷之道。对郭老师的感激之情是无法用言 语表达的。 通过这次毕业设计,使我得到了一次用专业知识、专业技能分析和解决问题 全面系统的锻炼。使我在单片机的基本原理、单片机应用系统开发过程,以及在 常用编程设计思路技巧的掌握方面都能向前迈了一大步,为日后成为合格的应用 型人才打下良好的基础。我在指导老师郭老师的精心指导和严格要求下,获得了 丰富的理论知识,极大地提高了实践能力,并对当前电子领域的研究状况和发展 方向有了一定的了解,这对我今后进一步学习单片机方面的知识有极大的帮助。 在此,我忠心感谢郭继红指导和支持。在未来的工作和学习中,我将以更好的成 绩来回报老师。 在此,我还要感谢在一起愉快的度过大学生生活的机电系全体老师和同门, 正是由于你们的帮助和支持,我才能克服一个一个的困难和疑惑,直至本文的顺 利完成。

第 17 页共 14 页

在论文即将完成之际,我的心情无法平静,从开始进入课题到论文的顺利完 成,有多少可敬的师长、同学、朋友给了我无言的帮助,在这里请接受我诚挚的 谢意!最后我还要感谢培养我长大含辛茹苦的父母,谢谢你们!

参考文献

[1]胡汉才.单片机原理及其接口技术 [M]. 北京:清华大学出版,1996 [2]付家才. 单

片机控制工程实践技术[M]. 北京:化学工业出版社,2004.5 [3]潘新民.微型计算机控制技术 [M].北京:人民邮电出版社,1999.9 [4]余锡存 曹国华.单片机原理及接口技术[M].陕西:西安电子科技大学出版 社,2000.7 [5]雷丽文 等.微机原理与接口技术[M].北京:电子工业出版社,1997.2 [6]蒋万君 .在论循环时序电路的简便设计[J] .机电一体化,2005 第 5 期 第 18 页共 14 页

附录 1:程序清单 :

ORG LJMP

ORG LJMP

0000H START

000BH CTC0

ORG START: MOV MOV MOV MOV MOV MOV MOV MOV MOV

0030H TMOD , #01H TH0 TL0 R3 R5 30H , , , , , #3CH #0B0 #20 #03 #16H #16H ;定时器 T0 初始化 ;定时器 T0 初始化 ;定时器 T0 初始化 ; 定时器次数初始化 ; 循环次数初始化 ;数据缓冲区初始化 ;数据缓冲区初始化 ;数据缓冲区初始化 ;数据缓冲区初始化

31H , 32H

, #16H #16H

33H ,

第 19 页共 14 页

SETB SETB SETB MOV CLR MOVC MOV

INC CLR

EA ET0 TR0 DPTR ,#TAB A A ,@A+DPTR P3 , A

;总允许中断 ;T0 允许中断 ;启动 T0 ;置表格 TAB 起始值

;查表将结果送 P3 口

DPTR A

MOVC MOV MOV INC CLR MOVC MOV MOV INC CLR MOVC MOV MOV INC

CLR A

A

,@A+DPTR ;查表下一地址,结果送寄存器 R4 ;将结果送 30H

R4 , A 30H ,A DPTR A A , @A+DPTR A A

R6 , 31H , DPTR A

;查表下一地址,将结果送 R6 ;将结果送 31H

A , @A+DPTR R7 , A 32H , A DPTR ;查表下一地址,将结果送 R7 ;将结果送 32H MOVC A , @A+DPTR

MOV MOV INC MOV

R2 , A 33H , DPTR 50H , DPH A

;查表下一地址,将结果送 R7 ;将结果送 32H

;将下一地址送 50H 和 51H

第 20 页共 14 页

MOV LOOP: LCALL JB LCALL JB LOOP2 JNB MOV

MOV CLR TR0

51H, DPL DISPLAY P1.0 , LOOP1 ;调用显示程序 ;K1 键未按下,转 LOOP1 ;延时 10ms 消除抖动 ;K1 键未按下,转 LOOP1 ;K1 键按下,顺序执行 K1 键功能

DELAY1 P1.0 , LOOP1

P1.0 , LOOP2 A , P0

P0 , #11H

;送 11H 到 P0 口,使两个方向的灯都亮红灯

;定时器停止计数

MOV MOV MOV MOV ANJIAN: JB

30H , #16H 31H , #16H 32H , #16H 33H , #16H P1.1 , LOOP ;K2 键未按下,转 LOOP LCALL

DELAY JB P1.1 , LOOP P1.1, L2 TR0 P0 , A

;延时 10ms 消除抖动 ;K2 键未按下,转 LOOP ;K2 键按下,顺序执行 K2 键功能 ;重新启动定时器 ;将状态送 P0 口

L2

:

JNB SETB MOV LJMP

LOOP ACC PSW R3 , NEXT2 R3, #20 A,R4 A, #0FF , L15 ; (主干道)判断个位,个位不等 0,转 ;定时器一秒未到转 NEXT2 ;定时一秒到,送 20 到 R3 ;保护现场 CTCO:

PUSH PUSH DJNZ: MOV MOV CJNE

L15 MOV A, R6 ;个位等 0 顺续执行

第 21 页共 14 页

CJNE LJMP L16: DEC MOV LJMP L15 : L17; DJNZ DJNZ MOV MOV LJMP L8: MOV CJNE L11 MOV CJNE LJMP L12 : DEC MOV LJMP L11: L18: DJNZ DJNZ MOV MOV LJMP LL1: MOV MOV

LL2: CLR

A,#0FFH L17 R6 R4 , #09 L8 R4, L8 R5 , LL1 R5 , #05

, L16

; ; ; ;

判断十位,十位不等 0,转 L16 十位等 0,转 L17 十位减 1 个位送 9

;个位不为 0 时,个位减 1 ;未循环完,转 LL1 ;循环寄存器重装初值 ;将 TAB1 首地址送 DPTR

DPTR , #TAB1 LL2 A, R7 A,#0FFH ,L11

; (直干道)判断个位,个位不等 0,转

A,R2 A,#0FFH L18 R2 R7 , #09 NEXT1 ,L18

;个位等 0 顺续执行 ; 判断十位,十位不等 0,转 L18

;十位减 1 ;个位送 9

R7 , NEXT1 R5 , LL1 R5 , #05 DPTR , LL2 DPL, 50H #TAB1

;个位不为 0 时,个位减 1 ;未循环完,转 LL1 ;循环寄存器重装初值 ;将 TAB1 首地址送 DPTR

;重保存地址送 DPTR

DPH , 51H

A

MOVC A , @A+DPTR

MOV

P3 ,

A

;查表将结果送 P3 口

第 22 页共 14 页

INC CLR MOVC MOV MOV INC CLR MOVC MOV MOV INC CLT MOVC MOV MOV INC CLR MOVC MOV MOV INC MOV MOV NEXT1: MOV MOV MOV MOV NEXT2: MOV MOV A

DPTR A A , R4 , 30H,A DPTR A A , @A+DPTR R6 , 31H,A DPTR A , @A+DPTR R7 , 32H ,

A DPTR A A , @A+DPTR R2 , A 33H DPTR 50H 51H 30H 31H 32H 33H TH0 TL0 , , , , , , , , DPH DPL R4 R6 R7 R2 #3CH #0B0H ;重装定时器初值 ;重保存地址送 DPTR ,A ;查表下一地址,结果送寄存器 R6 ;将结果送 33H A ;查表下一地址,结果送寄存器 R6 ;将结果送 31H A ;查表下一地址,结果送寄存器 R6 ;将结果送 31H @A+DPTR A ;查表下一地址,结果送寄存器 R4 ;将结果送 30H

第 23 页共 14 页

POP POP RETI TAB1: DB DB DB DB DB DB DILPLAY: MOV MOV NEXT3: MOV MOV PSW ACC ; 恢复现场

;中断返回 6EH , BEH , DEH , E6H , EBH , EDH , R2 R0 A DPTR A P0 P1 , , , , 05 , 00 , 03 , 08 , 03 , 03 , #01H #30 @R0 #TAB2 01 , 03 , 00 , 04 , 03 , 00 , 08 , 03 , 03 , 05 , 00 , 03 , 04 03 00 01 03 00

;将位码送 R2 ;将段码送 R0

MOVC MOV MOV LCALL MOV JB RL MOV INC LJMP U2: TAB2: RET DB DB DB DELAY1: LOOP2: MOV MOV A

, @A+DPTR , , A R2 ;将段码送 R0 ;将位码送 R2 ;调用延时程序 R2 , U2 ;显示完转 U2 ;未显示完,将未码左移 R2 R0 NEXT3 ;显示返回 , A ;将未码重送、R2 中 ;指向 31H

DELAY1 ,

ACC.3 A

3FH , 7DH , 58H , R5 R6 , ,

06H , 07H , 5EH , #03H #00H

5BH , 7FH , 7BH ,

4FH ,66H ,6DH 6FH , 71H , 77H , 00H , 7CH 40H

第 24 页共 14 页

LOOP1:

DJNZ DJNZ RET

R6 R5,

,

LOOP1 LOOP2

DELAY2: MOV LOOP2: LOOP1: MOV DJNZ

R5 , R6 ,

#00H #00H LOOP1 LOOP2

R6 , R5 ,

DJNZ RET END

第 25 页共 14 页

1

更多相关推荐:
单片机交通灯设计报告[1]

河南理工大学电子设计综合训练报告单片机控制的交通灯控制系统设计姓名:***学号:***专业班级:电气本09-2班指导老师:**所在学院:电气工程与自动化学院20XX年4月15日1摘要2系统总体方案及硬件设计12…

单片机交通灯课程设计报告[1]

摘要31引言42总体设计方案521设计思路5211设计目的5212设计任务和内容6213方案比较设计与论证6214芯片简介922设计方框图153设计原理分析16313233交通灯显示时序的理论分析与计算16交通...

51单片机c语言交通灯设计报告

xxxxxxxxx基于AT89S52交通灯设计学院电子信息工程专业班级xxxxxxxxxxxxxx姓名xxxx学号指导老师摘要交通灯在我们日常生活中随处可见它在交通系统中处于至关重要的位置交通灯的使用大大减少了...

单片机交通灯设计报告

单片机课程设计论文前言近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不…

51单片机综合实验交通灯设计报告

51单片机综合实验交通灯设计报告班级学生姓名学号指导教师一实验题目交通灯控制系统设计二实验目的1学会用8051单片机开发简单的计算机控制系统2学会用汇编语言和C语言开发系统软件3学会8051单片机开发环境wav...

单片机交通灯课程设计报告

摘要自从1858年英国人发明了原始的机械扳手交通灯之后随后的一百多年里交通灯改变了交通路况也在人们日常生活中占据了重要地位随着人们社会活动日益增加经济发展汽车数量急剧增加城市道路日渐拥挤交通灯更加显示出了它的功...

单片机交通灯设计报告[1]

单片机控制的交通灯控制系统设计所在学院电气工程与自动化学院目1摘要2系统总体方案及硬件设计121设计要求122设计任务123总体设计124硬件设计13软件设计631总体流程图732子程序流程图833循环控制思路...

单片机c语言课程设计交通灯

河南理工大学万方科技学院课程设计报告20082009学年第2学期课程名称单片机的c语言程序设计设计题目交通灯学生姓名学号0628030053专业班级通信061班指导教师20xx年06月02日1河南理工大学万方科...

单片机论文基于单片机检测车辆闯红灯和车流量统计交通灯设计

单片机课程论文实现车辆闯红灯报警和车流统计的交通灯设计专业滨江信工20xx级姓名杨金磊学号20xx2309022指导老师王峰2012年05月20日单片机课程论文设计摘要本系统由单片机系统键盘LED显示交通灯演示...

基于AT89C51单片机的十字路口交通灯设计

单片机原理及系统课程设计专业电气工程及其自动化班级电气1102姓名vfffff学号20xx反反复复指导教师汤旻安兰州交通大学自动化与电气工程学院20xx年1月17日单片机原理及系统课程设计报告基于AT89C51...

单片机交通灯设计论文

本文由阿东88888888贡献doc文档可能在WAP端浏览体验不佳建议您优先选择TXT或下载源文件到本机查看引言在今天红绿灯安装在各个道口上已经成为疏导交通车辆最常见和最有效的手段但这一技术在19世纪就已出现了...

单片机课程设计——交通灯控制系统设计

本科课程设计报告第1页共24页交通灯控制系统设计单片机课程设计报告河南理工大学本科课程设计报告摘要本设计是针对交通灯系统的设计由单片机AT89C51实物用AT89S52键盘LED显示交通灯演示系统组成单片机是把...

单片机交通灯设计报告(36篇)