AT89S52交通信号灯自动控制系统

合集下载

基于AT89S52的远程报警和控制系统

基于AT89S52的远程报警和控制系统

基于AT89S52的远程报警和控制系统3郭志源(兰州市热力公司,甘肃兰州 730000)摘 要:阐述了远程报警和控制系统的构成和原理,同时结合具体电路说明该系统与各种输入、输出模块间的组成及工作方式。

以AT89S52单片机作为控制核心、MT8888双音多频收发芯片作为DT MF 收发器,I S D2590语音芯片作为语音提示,利用市话网双向传输数字和语音信息,实现系统远程报警和控制。

这种远程控制系统可靠性高、适用性强、成本低廉,是工厂、机关、仓库及住宅实现安全防范和现场设备控制的有效方法。

关键词:单片机;远程报警;远程控制;双音多频中图分类号:TP872 文献标识码:A 文章编号:1007-4414(2007)05-0106-03Re m ote a l ar m i n g and con trolli n g syste m ba sed on AT 89S 52Guo Zhi -yuan(L anzhou heating po w er Co .,L td,L anzhuou Gansu 730000,China )Abstract:The structure and working p rinci p le of re mote alar m ing and contr olling syste m are described,and the constructi ons and operati on modes of this syste m with vari ous input and out put modules are discussed by analyzing s pecific electric circuits .U sing AT89S52as contr ol core,M T8880asDT M F transceiver,phonetic chi p s S D2590as phonetics p r omp ts,the re mote alar m 2ing and contr olling could be realized by using the city telephone net t o trans m it digital and phonetic messages bidirecti onally .W ith the high reliability,good app licability and l ow cost,this syste m p r ovides an effective method of safe guarding and field devices contr olling f or the fact ories,govern ments and residential district .Key words:singlechi p;re mote alar m ing;re mote contr olling;DT MF 远程控制系统,通常采用计算机+调制解调器+专用网络的结构,这种组成具有传输数据量大、传输速率高等特点,但成本高、专用网络不易实现。

AT89C52单片机为控制器的多功能交通灯控制系统

AT89C52单片机为控制器的多功能交通灯控制系统

AT89C52 单片机为控制器的多功能交通灯控制系统汽车数量越来越多,而现在的红绿灯处的交通灯模式采用的是定时控制,由于车流量是随时变化的,当此时没有车通过,而相对的车要等到此方向的绿灯结束显示红灯才能通过,在时间和空间方面的应变性能较差,这样不仅浪费了时间,还使得相对方向的车辆造成堵车现象。

要想解决城市红绿灯处的大堵车现象,改善原有的红绿灯处交通灯控制系统是很有必要的。

本文以AT89C52 单片机为控制器的交通灯控制系统,该系统通过红外接收器接收信号实现特种车辆(119、120 等)自动放行;通过车辆检测电路采集路况信号,经单片机处理后,分配各车道的绿灯时间,实现车流动态调节,LED 数码管显示通行倒计时;系统除基本交通灯功能外,还具有通行时间手动设置、可倒计时显示、急车强行通过、车流量检测及调整、交通异常状况判别及处理等相关功能。

1、交通控制系统的总体框图设计及原理该交通灯控制系统用单片机直接控制信号灯的状态变化,接入的LED 数码管就可显示倒计时以提醒行使者。

本系统在此基础上加入了违规检测电路和车流量检测电路为单片机采集数据,同时接上蜂鸣器。

本设计以单片机为控制核心,连接成最小系统,由车流量检测模块、违规检测模块和按键设置模块等产生输入,信号灯状态模块、LED 倒计时模块和蜂鸣器状态模块接受输出。

系统的总体框图如图1 所示。

图1 系统的总体框图2、系统硬件总电路构成及工作原理本设计选用AT89C52 单片机及外围器件构成最小控制系统,12 个发光二极管分成4 组红绿黄三色灯构成信号灯指示模块,8 个LED 东西南北各两个构成倒计时显示模块,车流量检测传感器采集流量数据,光敏传感器捕获违规信号,若干按键组成时间设置和模式选择按钮和紧急按钮等,以及用1 个蜂鸣器进行报警。

系统硬件电路构成:单片机为核心,组成一个集车流量采集、处理、自动控制为一身的闭环控制系统。

系统硬件电路由车流量检测电路、单片机、违规检测电路,状态灯,LED 显示,按键,语音提示器组成。

AT89S52交通信号灯自动控制系统

AT89S52交通信号灯自动控制系统

注:该论文已发表,谨供参考。

文中图、表及程序可引用。

文字请同学们根据自己的学习研究体会自行组织。

AT89S52交通信号灯自动控制系统周诗虎武汉职业技术学院计算机糸430074摘要: 现代交通指挥糸统中, 交叉路口信号指挥灯均为无人自动控制。

本糸统采用AT89S52单片机解决这一问题。

与一般十字路口信号指挥灯不同,该糸统支干道设有车流传感器,以保证在支干道无车时, 主干道始终放行。

支干道有车时, 则按预定参数轮流放行。

这一重要的特色,大大提高了道路的通行率。

该自动控制系统已实际制作完成。

本文给出了硬件原理图、程序框图以及完整的汇编源程序。

同时还给出了制作实物的照片。

关键词: 单片机,交通信号灯,车流传感器,动态显示。

随着社会经济的发展,城市交通问题越来越引起人们的关注。

如何提高路口车辆的通行能力,己成为交通管理部门需要解决的重要课题之一。

本文给出了采用AT89S52单片机,解决由主干道(纵向)和支干道(横向)组成的十字路口,交通信号指挥灯的自动控制问题。

该控制糸统的一个重要的特色是,在支干道设有车流传感器,当支干道无车时, 保证主干道始终处于放行状态。

而当检测到支干道有车时, 则按预定参数轮流放行。

从而大大提高了道路的通行能力。

糸统的制作实物照片见图1.图1.实物照片一.基本控制系统基本控制系统硬件原理图见图2。

图中IC0为单片机AT89S52,它是美国Atmel 公司的产品。

AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 存储器。

使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。

在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。

另外它还具有掉电后中断可唤醒、看门狗定时器、三级加密程序存储器等功能。

且8K字节在系统可编程Flash存储器有1000次的擦写周期。

基于AT89S52交通灯设计

基于AT89S52交通灯设计

摘要交通灯在我们日常生活中随处可见,它在交通系统中处于至关重要的位置。

交通灯的使用大大减少了交通繁忙路口的事故发生,给行人和车辆提供一个安全的交通环境,人们的生命和财产安全有了保障。

本设计旨在模拟十字路口的交通灯,以AT89S51单片机为基础,结合按键和数码管等元器件设计出一个简单且完全的交通灯系统。

关键词:交通灯AT89S52 单片机一、设计任务(1)、设计一个十字路口的交通灯控制电路,要求南北方向和东西方向两条交叉道路上的车辆交替运行,每次通行时间都设30秒,时间可设置修改。

(2)、在绿灯转为红灯时,要求黄灯先亮5秒钟,才能变换运行车道,且黄灯亮时,要求每秒亮一次。

(3)、有紧急车辆要求通过时,系统要能禁止东西和南北两条路上所有的车辆通行。

二、AT89S52单片机及其他元器件简介(1)AT89S52单片机AT89S52是一种低功耗、高性能CMOS8位微控制器。

片上Flash允许程序存储器在系统可编程,亦适于常规编程器。

在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。

AT89S52具有以下标准功能:8K字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6位向量2级中断结构,全双工串行口,片内晶振及时钟电路。

空闲模式下,CPU停止工作,允许RAM、定时器计数器、串口、中断继续工作。

鉴于以上的优点本系统采用AT89S52作为主控芯片,实现对整个系统的控制。

(2)芯片74LS24574LS245是我们常用的芯片,用来驱动led或者其他的设备,它是8路同相三态双向总线收发器,可双向传输数据。

当19脚E为H时,A、B为高阻。

E为L时,DIR为L时,数据由B传向A;DIR为H时,由A传向B。

(3)两位共阴数码管16脚和11脚对应A、15脚和10脚对应B、3脚和8脚对应C、2脚和6脚对应D、1脚和5脚对应E、18脚和12脚对应F、17脚7脚对应G、4脚和9脚对应DP。

基于单片机AT89C52控制的交通灯(附带程序)模板

基于单片机AT89C52控制的交通灯(附带程序)模板

学院机械工程学院课程设计基于AT89C52单片机的题目交通灯控制系统设计专业机械电子工程班级姓名指导教师20XX 年12 月XX 日课程设计任务书目录目录 (III)第一章绪论 (1)1.1交通灯设计的意义 (1)1.2交通灯设计的思想 (1)1.3交通灯设计满足的基本功能 (2)第二章总体方案 (3)2.1总体方案设计思想 (3)2.2系统方案选择与比较 (3)2.3系统总体方案论证 (5)第三章硬件设计 (6)3.1 总体设计与描述 (6)3.2 交通灯通行模式及行车方向指示 (6)3.3 主干道单独时间设置功能 (8)3.4 倒计时计数功能及其实现 (8)3.5 各功能模块硬件设计及实现 (9)第四章软件设计 (12)4.1 软件总体流程图 (12)4.2 定时器初始化 (12)4.3 动态显示 (13)4.4 设置状态子程序 (14)第五章系统调试 (15)5.1 系统操作说明 (15)5.2 调试 (15)5.3 调试心得 (20)第六章设计总结 (21)参考资料 (22)附录 (23)Ⅰ原理图 (23)Ⅱ原程序 (24)第一章绪论1.1交通灯设计的意义交通的发达,标志着城市的发达,相对交通的管理则显得越来越重要。

交通灯是城市交通中的重要指挥系统,它与人们日常生活密切相关.随着人们生活水平的提高,对交通管制也提出了更高的要求,因此提供一个可靠、安全、便捷的多功能交通灯控制系统有着现实的必要性。

对于复杂的城市交通系统,为了确保安全,保证正常的交通秩序,十字路口的信号控制必需按照一定的规律变化,以便于车辆行人能顺利地通过十字路口。

单片机自问世以来,性能不断提高和完善,其资源又能满足很多场合的应用,加之单片机具有集成度高、功能强、速度快、体积小、功耗低、使用方便、性能可靠、价格低廉,其易于产品化、抗干扰能力强、可在各种恶劣环境下可靠的工作等特点。

特别是它强大的面向控制能力,使它在工业控制领域,智能仪表、外设控制、家用电器、机器人、军事装置等方面得到了广泛的应用。

基于AT89S52的交通灯综合实验设计

基于AT89S52的交通灯综合实验设计

用功能来控制数码 管和 L E D灯 ,实现 了各种 情 况下 交通灯 的正 常指 示和 倒计 时功 能。 实验 采 用的软 件 有 K e i l C 5 1 、 P r o t e u s 、P r o t e l 等 ,统计数据表 明 ,通过 实验 能使 学习者较完整地掌握 单片机 系统设计 。
Mi c r o c o mp u t e r p r o g r a mmi n g b e t t e r b y d o i n g t h e e x p e ime r n t .
Ke y wo r d s c o mp r e h e n s i v e e x p e ime r n t ;t r a f i f c l i g h t c o n t r o l ; AT8 9 S 5 2
Abs t r a c t Th i s a ti r c l e d e s c ib r e s t h e c o mp r e h e n s i v e e x p e r i me n t d e s i g n o f a s i mu l a t i v e t r a f f i c l i g h t c o n t r o l s y s - t e m. T h e s i mu l a t i o n s y s t e m u s e s AT8 9S 5 2 d e v i c e s a s t h e c o r e a n d a p p l y i n g v a r i e d i n t e r r u p t p r o c e s s i n g a n d t i me - s h a — r i n g mu l t i p l e x i n g f u n c t i o n wi t h P p o r t t o c o n t r o l t h e d i s p l a y o f d i g i t a l t u b e s a n d L ED l i g h t s ,t h u s r e li a z i n g n o r ma l i n — d i c a t i o n a n d c o u n t d o wn f u n c t i o n o f t h e t r a f f i c l i g h t s i n a v a r i e t y o f s i t u a t i o n s .T h e s o f t wa r e s u c h a s Ke i l C 5 1. Pr o - t e u s , Pr o t e l a r e u s e d i n t h e c o mp r e h e n s i v e e x p e r i me n t . Th e s t a t i s t i c s d a t a s h o w t h a t l e a r n e r s c a n ma s t e r s i n g l e c h i p

基于AT89S52单片机的数显交通灯设计毕业设计

基于AT89S52单片机的数显交通灯设计毕业设计

摘要近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。

在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。

交通灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。

本项目主要从单片机应用上来实现十字路口交通灯智能化的管理,用来控制过往车辆的正常运行。

我们采用MSC-51系列单片机AT89S52和驱动芯片74HC245为中心器件,两位共阴数码管和红、黄、绿LED灯为显示器件来设计交通灯控制器,实现了东西南北路口直行,转弯交替通行;人行道通行;数码管显示直行通行时间倒计时;红、绿灯循环点亮,倒计时剩4秒时黄灯闪烁警示;某一方向拥挤时,可通过p3.0,p3.1处的两个按键,实现人工调节通行时间;紧急情况时,可通过p3.2处的中断按键,实现各路口显示红灯,数码管数据保持不变等功能。

本系统实用性强、操作简单、扩展功能强。

关键词:单片机、交通灯、数码管、AT89S52、74HC245、中断ABSTRACTIn recent years, with the rapid development of science and technology, SCM applications are deepening, drive traditional control test technology is increasingly update at the same time. In real-time detection and automatic control of microcomputer application system, the single chip microcomputer often as a core component to use, only single chip microcomputer aspects knowledge is not enough, still should according to the specific combination of hardware and software, the hardware structure, perfected. The emergence of the traffic light, to effectively control the traffic, the traffic flow, improve road traffic capacity, reduce the number of traffic accidents have obvious effect. This project mainly from SCM to realize the intersection traffic lights intelligent management, is used to control the normal operation of the vehicles. We use MSC - 51 series microcontroller AT89S52 and drive 74 HC245 chip device for the center, both Yin digital tube and red, yellow and green leds to show the device to design a traffic light controller, realized the north and south, east and west road go straight, turn pass alternatively; The pavement. Digital tube display way of passing time countdown. Red, green light, the countdown with four seconds left yellow lights flashing warning; When one direction crowded, but through p3.0, p3.1 place two buttons, artificial adjusting passage of time. Emergency, can interrupt button by p3.2, implement the intersection shows a red light, digital tube data remains unchanged, and other functions. The system practical, simple operation, strong extended functionality.Key words:single chip microcomputer, traffic lights, digital tube, AT89S52, 74HC245, interrupt目录摘要 (III)ABSTRACT (IV)第一章 (1)1.1 课题背景 (1)1.2 课题意义 (1)1.3 国内外发展情况 (1)第二章主控芯片介绍及系统方案设计 (2)2.1 AT89S52单片机的介绍 (2)2.2 设计的所需了解的知识点 (4)2.3 方案比较、设计与论证 (4)2.3.1 电源提供方案 (4)2.3.2 显示界面方案 (4)2.3.3 单片机交通灯控制系统通行方案设计 (4)第三章系统硬件电路设计 (6)3.1 系统的组成 (6)3.1.1 显示模块功能 (6)3.1.2 按键模块功能 (6)3.2 系统硬件设计 (7)3.2.1 电路原理图 (7)3.2.2 74HC245引脚参数及功能说明 (7)3.2.3 2位共阴数码管 (8)3.3 功能设计 (9)3.3.1 时钟电路 (9)3.3.2 复位电路 (9)3.3.3 LED动态显示器接口电路 (9)3.4 串口通信 (10)3.4.1 串行端口的基本特点 (10)3.4.2 串行端口的工作方式 (10)第四章系统软件设计 (12)4.1 程序流程图 (12)4.2 子程序模块设定 (13)4.2.1 硬件延时 (14)4.3 KEIL51的应用 (15)4.4 protel99se的应用 (15)第五章调试与结果 (15)5.1 调试 (16)5.1.1 硬件调试 (16)5.1.2 软件调试 (16)5.2遇到的问题及解决方案 (17)5.2.1 问题 (17)5.2.2 解决方法 (17)5.3 结果 (17)参考文献 (18)附录一 (19)致谢 (20)第一章1.1 课题背景在现代城市的日常运行控制中,车辆的交通控制越来越重要,道路超负荷承载现象严重,致使交通事故逐年增加。

交通信号灯控制系统图

交通信号灯控制系统图

交通信号灯控制电路
工作原理:
白天工作状态要求:东西方向绿灯亮40s,然后黄灯闪三下(1下/秒,共5秒),然后红灯亮20s,而南北方向为红灯亮40s,然后绿灯亮20s,然后黄灯也闪三下;如此周期循环下去。

由软件设置交通灯的初始时间,南北方向通行40秒,东西方向通行20秒,倒计时数码管采用动态显示,P0口送字形码,P2口送字位选通信号,通过单片机的P1口控制各种信号灯的燃亮与熄灭。

采用中
断方式实现按键的功能。

主控芯片采用A T89S52单片机,因为系统要求南北和东西方向的信号灯
时间不一样,所以就利用单片机的P0口(P00-P06)送出数据的段码,位选信号用P2口(P20-P23、27)送出,用动态扫描的方法显示东西、南北的倒计时间(如图4所示)。

数码管使用共阴数码管,需要接上470欧上拉电阻以提供足够大的电流来驱动数码管,数码管的每段的电流是约10毫安。

本设计利用单片机的P1口(P10-P13)来驱动和控制各种信号灯的燃亮和燃亮时间。

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

注:该论文已发表,谨供参考。

文中图、表及程序可引用。

文字请同学们根据自己的学习研究体会自行组织。

AT89S52交通信号灯自动控制系统周诗虎武汉职业技术学院计算机糸430074摘要: 现代交通指挥糸统中, 交叉路口信号指挥灯均为无人自动控制。

本糸统采用AT89S52单片机解决这一问题。

与一般十字路口信号指挥灯不同,该糸统支干道设有车流传感器,以保证在支干道无车时, 主干道始终放行。

支干道有车时, 则按预定参数轮流放行。

这一重要的特色,大大提高了道路的通行率。

该自动控制系统已实际制作完成。

本文给出了硬件原理图、程序框图以及完整的汇编源程序。

同时还给出了制作实物的照片。

关键词: 单片机,交通信号灯,车流传感器,动态显示。

随着社会经济的发展,城市交通问题越来越引起人们的关注。

如何提高路口车辆的通行能力,己成为交通管理部门需要解决的重要课题之一。

本文给出了采用AT89S52单片机,解决由主干道(纵向)和支干道(横向)组成的十字路口,交通信号指挥灯的自动控制问题。

该控制糸统的一个重要的特色是,在支干道设有车流传感器,当支干道无车时, 保证主干道始终处于放行状态。

而当检测到支干道有车时, 则按预定参数轮流放行。

从而大大提高了道路的通行能力。

糸统的制作实物照片见图1.图1.实物照片一.基本控制系统基本控制系统硬件原理图见图2。

图中IC0为单片机AT89S52,它是美国Atmel 公司的产品。

AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 存储器。

使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。

在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。

另外它还具有掉电后中断可唤醒、看门狗定时器、三级加密程序存储器等功能。

且8K字节在系统可编程Flash存储器有1000次的擦写周期。

目前市场售价仅约8元人民币,性价比极高。

图中IC2为由ULN2803A组成的输出级,ULN2803A的带负载能力为0.5A/50V,由它驱动用高亮度发光二极管(D1---D12)图2.基本控制系统硬件原理图模拟的交通信号灯。

由于AT89S52的P0口只能驱动8个TTL逻辑电平, 而P1~P3口只能驱动4个TTL逻辑电平. 因此有必要考虑在单片机与输出驱动级之间增加中间级。

否则会造成逻辑混乱,如高电平不高,致使系统抗干扰能力下降,甚至无法正常工作。

这已被制作实践所证明。

图中IC1就是由74HC04组成的中间缓冲级。

电源由IC3三端稳压芯片7805C构成,D13用作防止输入直流电源极性接反时对电路造成的损坏。

C3、R7构成上电自动复位电路,K0为手动复位按钮。

D0为电源指示灯。

控制逻辑功能见功能表。

注: P1口输出“0”---亮 , P1口输出“1”---灭P1.7---将用作模拟车流传感器输入(见图3) P1.6---未用P1.5---纵红 P1.4---纵黄 P1.3---纵绿P1.2---横红 P1.1---横黄 P1.0---横绿二.糸统扩展扩展糸统是在基本控制系统的基础上,增加纵横放行参数输入、模拟车流传感器输入和放行剩余时间显示电路构成的。

糸统扩展硬件原理图见图3。

图中K1为纵向放行参数输图3.糸统扩展硬件原理图入开关,K2为横向放行参数输入开关,输入参数均为8421BCD码,高四位为十位数,低四位为个位数。

为方便硬件连接,与K1相连的P2口从左至右为从高位到低位(P2.7 P2.0),而与K2相连的P3口从左至右为从低位到高位(P3.0 P3.7)。

即横向放行参数输入开关K2出现输入高低位错位现象,见图1实物照片。

我们将在程序中通过软件进行转换来解决这一问题。

K3为模拟车流传感器输入开关,输入"1"表示横向无车,"0"表示横向有车。

实际应用中应由金属探测传感器来产生该信号。

IC4为BCD七段译码器芯片,其输入是P0.3---P0.0送出的要显示的BCD码数,输出为LED显示的段码。

LG3621BH是双联共阳极七段LED数码管,T0、T1构成二个反相器输出位码,位码由单片机的P0.7、P0.6送出。

R10排电阻是P0口外接的上拉电阻。

三.软件设计该糸统是定时顺序自动控制糸统。

其主程序MAIN由初始化和循环定时顺序输出两部分构成,初始化部分包括全亮自检,输入纵横放行参数,横向放行参数高低位错位转换,输入BCD码参数正确性判定及修正(当输入出现1010B---1111B时,无条件将其修改为1001B),将BCD码参数转换成二进制数并保存备用。

而循环定时顺序输出部分,按照功能表及输入的放行参数,依次循环输出功能表中序号2---序号7。

其中在输出功能表中序号2后,开始检测模拟车流传感器输入K3的状态,若其为“1”则表示横向无车,此时输出序号2不变,使纵向主干道始终处于放行状态,只有当模拟车流传感器输入为"0",即横向有车时才顺序输出功能表中的后续数据。

DELAY为核心定时子程序, 它由定时器T0方式1定时50ms(其计数初值3CB0H), 寄存器R3作为软计数器对T0定时计数10次,从而实现0.5S定时。

DELAY1也为定时子程序,它循环调用DELAY子程序,通过改变循环调用的次数,实现不同的定时时间。

调用次数由寄存器R2的内容确定。

而寄存器R2的内容来自纵、横向放行参数输入开关取值乘以2。

例如;横向放行参数开关K2输入为20,则放行时间为20S,此时需循环调用DELAY核心定时子程序40次,即寄存器R2的内容为K2的输入20乘以2。

DISP为显示子程序, 由T1定时1ms控制2个共阳七段LED轮流工作,动态显示实时放行剩余时间,当P0.3---P0.0送出的是十位显示的BCD码时,P0.7输出“0”P0.6输出“1”,T1截止T0饱和,使COM1=“1”,COM0=“0”,十位LED显示个位LED关闭。

反之则个位LED显示十位LED 关闭。

且每过1S显示时间递减。

各程序框图和汇编源程序见附录(可向作者免费索取zsh500821@)。

变量与寄存器使用情况说明如下:(00H) 0.5S定时到标志。

(00H)=“0”表示 0.5S定时未到,(00H)=“1”表示 0.5S定时已到。

(01H) 显示数位标志。

(01H)=0表示当前要显示个位,(01H)=1表示当前要显示十位(30H) 存放纵向放行时间二进制参数。

(31H) 存放横向放行时间二进制参数。

R2 存放纵、横向放行时间二进制参数X 2,作为循环计数器初值。

控制调用定时0.5S 子程序DELAY的次数。

R3 软计数器R3赋初值为10,使T0进行10次50ms定时,从而实现子程序DELAY定时0.5S。

R4 存放纵、横个向放行时间二进制参数, 作为查表偏移量,取要显示的放行时间数据。

且每过一秒钟R4减一次1,使显示时间递减,当R4减到等于00H,实时放行剩余时间也减到00,R4再减一就等于0FFH。

此时就关闭当前放行时间显示。

R4减一在子程序DELAY1中完成。

R5 定时1S计数器。

初值为2调用子程序DELAY两次从而完成定时1S。

参考文献:1.丁志刚李刚民编.《单片微型计算机原理与应用》.电子工业出版社.2.李玉峰倪虹霞编著.《MCS-51糸列单片机原理与接口技术》.人民邮电出版社.3. 王津周卫华朱华贵编. 《单片机原理与应用》. 重庆大学出版社.附录:程序框图和汇编源程序ORG 0000HAJMP MAINORG 000BHAJMP CTC0ORG 001BHAJMP CTC1ORG 0030HMAIN:MOV P0,#0FFHMOV R2,#02 ;灯全亮1S自检.R2存放循环调用DELAY的次数,调用一次延时0.5S MOV P1,#0C0HMOV P1,#0C0HLCALL DELAY1MOV P1,#0FFH ;自检毕,灯全灭MOV 30H,P2 ;输入纵向定时BCD码参数MOV A,30H ;BCD码参数转换成二进制数ANL A,#0FHMOV R3,A ;个位送R3暂存CLR C ;判纵向个位BCD码是否在00H---09H.SUBB A,#0AHJC YBCD1MOV R3,#09H ;个位BCD码大于09H.按09H处理.YBCD1:MOV A,30HSWAP AANL A,#0FH ;A中低四位为BCD码十位数MOV R0,A ;判纵向十位BCD码是否在00H---09H.CLR CSUBB A,#0AHJC YBCD2MOV R0,#09H ;十位BCD码大于09H.按09H处理.YBCD2:MOV A,R0MOV B,#10MUL AB ;A为BCD码十位数转换成的二进制数ADD A,R3MOV 30H,A ;纵向BCD码参数转换成的二进制数送回30H单元MOV 31H,P3 ;输入横向定时BCD码参数MOV A,31H ;低位,高位转换RRC AMOV 07H,CRRC AMOV 06H,CRRC AMOV 05H,CRRC AMOV 04H,CRRC AMOV 03H,CRRC AMOV 02H,CRRC AMOV 01H,CRRC AMOV 00H,CMOV 31H,20H ;低位,高位转换完毕.MOV A,31H ;BCD码参数转换成二进制数ANL A,#0FHMOV R3,A ;个位送R3暂存CLR C ;判横向个位BCD码是否在00H---09H.SUBB A,#0AHJC YBCD3MOV R3,#09H ;个位BCD码大于09H.按09H处理.YBCD3:MOV A,31HSWAP AANL A,#0FH ;A中低四位为BCD码十位数MOV R0,A ;判横向十位BCD码是否在00H---09H.CLR CSUBB A,#0AHJC YBCD4MOV R0,#09H ;十位BCD码大于09H.按09H处理.YBCD4:MOV A,R0MOV B,#10MUL AB ;A为BCD码十位数转换成的二进制数ADD A,R3MOV 31H,A ;横向BCD码参数转换成的二进制数送回31H单元MAIN1:MOV A,30H ;设置纵向定时(如42S,此时需调用DELAY子程序84次).MOV B,#2MUL ABMOV R2,A ;循环调用DELAY的次数存放在R2中.MOV R4,30H ;纵向放行时间二进制参数送R4作为查表偏移量,取显示时间数据.MOV P1,#0F3H ;输出序号2.ACALL DISP ;调显示子程序.ACALL DELAY1;调延时子程序.LOOP: MOV C,P1.7 ;输入横向车流传感器信号."0"横向有车,"1"横向无车.JC LOOP ;横向无车抟移,横向有车顺序执行.MOV R2,#01 ;设置定时0.5SMOV P1,#0FBH ;闪动,绿灯灭.ACALL DELAY1;调延时子程序.MOV R2,#01 ;设置定时0.5SMOV P1,#0F3H ;闪动,绿灯亮.ACALL DELAY1;调延时子程序.MOV R2,#01 ;设置定时0.5SMOV P1,#0FBH ;闪动,绿灯灭.ACALL DELAY1;调延时子程序.MOV R2,#01 ;设置定时0.5SMOV P1,#0F3H ;闪动,绿灯亮.ACALL DELAY1;调延时子程序.MOV R2,#04 ;设置定时2SMOV P1,#0EBH ;输出序号4.ACALL DELAY1;调延时子程序.MOV A,31H ;设置横向定时(如20S,此时需调用DELAY子程序40次).MOV B,#2MUL ABMOV R2,AMOV R4,31H ;横向放行时间二进制参数送R4作为查表偏移量,取显示时间数据.MOV P1,#0DEH ;输出序号5.ACALL DISP ;调显示子程序.ACALL DELAY1;调延时子程序.MOV R2,#01 ;设置定时0.5SMOV P1,#0DFH ;闪动,绿灯灭.ACALL DELAY1;调延时子程序.MOV R2,#01 ;设置定时0.5SMOV P1,#0DEH ;闪动,绿灯亮.ACALL DELAY1;调延时子程序.MOV R2,#01 ;设置定时0.5SMOV P1,#0DFH ;闪动,绿灯灭.ACALL DELAY1;调延时子程序.MOV R2,#01 ;设置定时0.5SMOV P1,#0DEH ;闪动,绿灯亮.ACALL DELAY1;调延时子程序.MOV R2,#04 ;设置定时2SMOV P1,#0DDH ;输出序号7.ACALL DELAY1;调延时子程序.AJMP MAIN1 ;循环转输出序号2.ORG 0110HDELAY1:MOV R5,#02 ;控制每秒钟使R4减1(即定时显示减1)LOOP2:ACALL DELAY;调延时0.5S子程序.DEC R5CJNE R5,#00,LOOP1MOV R5,#02DEC R4 ;定时显示减1LOOP1:DJNZ R2,LOOP2;循环调延时0.5S子程序.RETORG 0120HDELAY:MOV TMOD,#11H ;设TO方式1定时.MOV TL0,#0B0H ;送计数初值,MOV TH0,#3CH ;定时50ms.SETB EA ;开CPU中断.SETB ET0 ;开TO中断.CLR PT0 ;设T0为低级中断SETB TR0 ;启动TO定时.MOV R3,#10 ;计数器赋初值.CLR 00H ;(00H)=0,表明0.5S定时未到.HERE: JNB 00H, HERE ;0.5S定时未到转移[位(00H)=0转移],否则顺序执行.RETORG 0150HCTC0: DJNZ R3,NEXT ;0.5S定时未到转移,否则顺序执行.SETB 00H ;0.5S定时到,将(00H)置1.RETINEXT: MOV TL0,#0B0HMOV TH0,#3CHRETIORG 0200HDISP:MOV TMOD,#11H ;设T1方式1定时.MOV TL1,#66H ;送计数初值,MOV TH1,#0FCH ;定时1ms.SETB EA ;开CPU中断.SETB ET1 ;开T1中断.SETB PT1 ;设T1为高级中断.SETB TR1 ;启动T1定时.CLR 01H ;(01H)=0,显示个位标志.MOV DPTR,#TABRETORG 0250HCTC1:CJNE R4,#0FFH,LOOP3 ;定时时间显示未回零转移,继续显示.MOV P0,#0FFH ;定时时间显示已回零,关显示.RETILOOP3:JNB 01H,LDISP ;(01H)=0,则转移去显示个位.HDISP:MOV A,R4 ;(01H)=1,顺序执行显示十位.MOVC A,@A+DPTRSWAP AANL A,#0FH ;P0.3---P0.0输出BCD码.ORL A,#70H ;P0.7输出”0”经反相器送十位LED共阳端,使十位LED显示.MOV P0,ACPL 01HMOV TL1,#66H ;送计数初值,MOV TH1,#0FCHRETILDISP:MOV A,R4MOVC A,@A+DPTRANL A,#0FH ;P0.3---P0.0输出BCD码.ORL A,#0B0H ;P0.6输出”0”经反相器送个位LED共阳端,使个位LED显示.MOV P0,ACPL 01HMOV TL1,#66H ;送计数初值,MOV TH1,#0FCHRETITAB:DB 00H,01H,02H,03H,04H,05H,06H,07H,08H,09HDB 10H,11H,12H,13H,14H,15H,16H,17H,18H,19HDB 20H,21H,22H,23H,24H,25H,26H,27H,28H,29HDB 30H,31H,32H,33H,34H,35H,36H,37H,38H,39HDB 40H,41H,42H,43H,44H,45H,46H,47H,48H,49HDB 50H,51H,52H,53H,54H,55H,56H,57H,58H,59HDB 60H,61H,62H,63H,64H,65H,66H,67H,68H,69HDB 70H,71H,72H,73H,74H,75H,76H,77H,78H,79HDB 80H,81H,82H,83H,84H,85H,86H,87H,88H,89HDB 90H,91H,92H,93H,94H,95H,96H,97H,98H,99H。

相关文档
最新文档