交通灯控制系统
- 格式:doc
- 大小:1.43 MB
- 文档页数:17
基于plc智能交通灯控制系统设计毕业论文目录一、内容概述 (2)1.1 研究背景与意义 (3)1.2 国内外研究现状与发展趋势 (4)1.3 论文研究内容与方法 (5)二、智能交通灯控制系统概述 (7)2.1 智能交通灯控制系统的定义与功能 (8)2.2 智能交通灯控制系统的组成与工作原理 (9)2.3 智能交通灯控制系统的应用领域 (11)三、PLC在智能交通灯控制系统中的应用 (13)3.1 PLC的特点与优势 (14)3.2 PLC在智能交通灯控制系统中的实现方式 (15)3.3 PLC控制系统的设计原则与步骤 (17)四、智能交通灯控制系统的硬件设计 (18)4.1 硬件系统总体设计 (19)4.2 传感器模块设计 (21)4.3 执行器模块设计 (23)4.4 电源模块设计 (25)五、智能交通灯控制系统的软件设计 (27)5.1 软件系统总体设计 (28)5.2 控制算法设计 (29)5.3 数据处理与通信接口设计 (31)六、智能交通灯控制系统的系统集成与测试 (32)6.1 系统集成方案 (33)6.2 系统测试方法与步骤 (35)6.3 系统测试结果与分析 (36)七、结论与展望 (38)7.1 论文研究成果总结 (39)7.2 存在问题与不足分析 (40)7.3 未来发展趋势与展望 (41)一、内容概述随着城市交通问题的日益凸显,智能交通灯控制系统成为提高交通管理效率、缓解交通压力的关键技术之一。
本论文旨在设计一种基于的智能交通灯控制系统,以提高交通流量、优化交通运行、减少交通拥堵和事故风险。
本论文首先介绍了研究背景、目的与意义,阐述了在智能交通灯控制系统中的应用现状及发展趋势。
接着,对交通灯控制系统的基本原理和组成部分进行了详细阐述,为后续设计奠定基础。
在此基础上,论文重点阐述了基于的智能交通灯控制系统的设计思路与实现方法。
设计内容包括:系统总体架构设计、硬件选型与配置、软件编程与实现、系统调试与优化等。
CPLD实现交通灯控制系统一.预期功能分别成东西走向和南北走向的主干道和支干道,其交通信号灯,分别实现一下状态:S0:支干道没有车辆行驶,支干道绿灯,支干道红灯S1:支干道有车辆行驶,支干道绿灯,支干道红灯S2:主干道黄灯,支干道绿灯S3:主干道红灯,支干道绿灯S4:主干道红灯,支干道黄灯状态亮灯停留时间S0 G2,R2 50秒S1 G2,R2 45秒S2 Y1,G2 5秒S3 R1,G2 25秒S4 R1,Y2 5秒二.原理框图根据设计要求和系统所具有的功能,并参考相关的文献资料,经行方案设计,可以画出如下图所示的交通信号灯控制器的系统框图。
1kHZ根据以上设计思路,可以得到如下的顶层文件原理图顶层文件的实体图:三.单元模块设计与仿真时钟分频模块系统的动态扫描需要1HZ的脉冲,而系统时钟计时模块需要1HZ的脉冲。
分频模块主要为系统提供所需的时钟计时脉冲。
该模块将1kHZ的脉冲信号进行分频,产生1S的方波,作为系统时钟计时信号。
其实体模块如下:将END TIME改为5SCLK采用系统的1KHZ的时钟脉冲仿真波形如下:可以看到能够得到1s的时钟脉冲交通灯控制及计时模块控制模块根据外部输入信号和计时模块产生的输出信号,产生系统的状态机,控制其他部分协调工作。
计时模块用来设定主干道和支干道计时器的初值,并为扫描显示译码模块提供倒计时时间。
控制及计时模块采用状态机进行设计,可以定义出5种状态,分别为S0:主干道绿灯,支干道红灯且没有车辆行驶;S1:主干道绿灯,支干道红灯或支干道有车辆驶入;S2:主干道黄灯,支干道红灯;S3:主干道红灯,支干道绿灯;S4:主干道红灯,支干道黄灯。
利用CASE语句定义状态的转换方式及时间的变换方式,达到主干道绿灯亮45秒,支干道绿灯亮25秒,黄灯亮5秒的设计要求。
其实体模块如下:CAR为支干道车辆检测开关在支干道有车的情况下,模块可以进行减计时CLK1S为1S的时钟脉冲TIME1H、TIME1L、TIME2H、TIME2L分别为主干道时钟高位、主干道时钟低位、支干道时钟高位、支干道时钟低位LED为LED灯发光情况,分别为主干道绿灯、主干道黄灯、主干道红灯、支干道绿灯、主干道黄灯、主干道红灯Count的总的系统时间,用来改变系统的状态仿真波形如下:通过仿真可以看到:当主干道绿灯,支干道红灯时,主干道倒计时高位置数0100,低位置数0101;支干道高位置数0101,低位置数0000;当主干道黄灯,支干道红灯时,主干道黄灯倒计时置数0101;支干道继续刚才的减计数;当主干道红灯,支干道绿灯时,主干道倒计时高位置数0011,低位置数0000;支干道高位置数0010,低位置数0101;当主干道红灯,支干道黄灯时,支干道黄灯倒计时置数0101;主干道继续刚才的减计数。
基于PLC的十字路口智能交通灯控制系统的设计城市道路交错分布,交通灯是城市交通的重要指挥系统。
交通信号灯作为管制交通流量、提高道路通行能力的有效手段,对减少交通事故有明显效果。
可编程控制器PLC作为工业用的计算机,在工业自动化中的地位极为重要。
其具有小型化、价格低、可靠性高等特点,在各个行业也得到了广泛应用。
本文基于PLC的十字路口智能交通灯控制系统,构成十字路口带倒计时显示交通信号灯的电气控制以及该系统软、硬件设计方法。
实验证明该系统实现简单、经济,能够有效地疏导交通,提高交通路口的通行能力。
1、设计系统简介系统上电后,交通指挥信号控制系统由两个按钮控制。
启动按钮按下,交通指挥系统开始按常规正常控制功能工作,按照如图1所示的工作时序周而复始、循环往复工作。
南北绿灯亮25s闪3s,黄灯亮2s后南北红灯亮30s。
东西方向与南北方向相同。
正常运行时,南北向及东西向均有两位数码管倒计时显示牌同时显示相应的指示灯剩余时间值。
系统主要实现十字路口交通灯数码显示控制和显示时间智能调节两大功能。
图1十字路口交通灯正常工作时序2、硬件系统设计2.1、元器件选用FX系列PLC拥有无以企及的速度、高级的功能逻辑选件以及定位控制等特点。
FX2N 系列是三菱PLC的FX家族中最先进的系列,具有高速处理及可扩展大量满足单个需要的特殊功能模块等特点;FX2N是从16路到256路输入/输出的多种应用的选择方案。
这里选用的是FX2N-80MR-D基本单元,带40点输入/40点继电器输出,选用额定电压12V、额定电流25mA(每段)高亮的共阴极两位25.4cm七段数码管;供电直接使用DC12V/25mA电源供电。
选用直径200mm的圆形LED点阵,左边红、绿、黄灯额定电压DC12V,额定电流4.2A,额定功率50W,直接采用DC12V/4.2A电源供电。
各控制信号说明如表1所示。
SB2按下时,接点断开,停止工作。
按下SB3时,七段数码管显示“00”。
交通信号灯控制系统设计实验报告设计目的:本设计旨在创建一个交通信号灯控制系统,该系统可以掌控红、绿、黄三种交通信号灯的工作,使其形成一种规律的交替、循环、节奏,使车辆和行人得以安全通行。
设计原理:在实际的交通灯系统中,通过交通灯控制器控制交通灯的工作。
一般采用计时器或微电脑控制器来完成,其中微电脑控制器可以方便地集成多种控制模式,并且灵活易于升级。
在本设计中,我们采用了基于Atmega16微控制器的交通信号灯控制系统。
该系统通过定时器中断、串口通信等技术来实现。
由于控制的是三个信号灯的交替,流程如下:绿灯亮:红灯和黄灯熄灭绿灯由亮到灭的时间为10秒黄灯亮:红灯和绿灯熄灭黄灯由亮到灭的时间为3秒红灯亮:绿灯和黄灯熄灭红灯由亮到灭的时间为7秒重复以上过程硬件设计:整个系统硬件设计包含ATmega16控制器、射频芯片、电源模块和4个灯组件。
ATmega16控制器采用DIP封装,作为主要的控制模块。
由于需要串口通信和遥控器控制,因此添加了RF24L01射频芯片。
该射频芯片可以很方便地实现无线通信和小型无线网络。
4个灯组件采用红、绿、黄三色LED灯与对应300Ω电阻并连。
电源模块采用5V稳压电源芯片和电容滤波,确保整个系统稳定可靠。
软件设计:通过ATmega16控制器来实现交通信号灯控制系统的功能。
控制器开始执行时进行初始化,然后进入主循环。
在主循环中,首先进行红灯亮的操作,接着在计时时间到达后执行黄灯亮的过程,然后执行绿灯亮的过程,再到计时时间到的时候执行红灯亮的过程。
每个灯持续时间的计时采用了定时器的方式实现,在亮灯过程中,每秒钟进行一次计数,到达相应的计数值后,切换到下一步灯的操作。
在RF24L01射频芯片的支持下,可以使用无线遥控器来对交通信号灯的控制进行远程控制。
在系统初始化完成后,通过串口通信对RF24L01进行初始化,然后进入控制循环。
在这个控制循环中,接收到遥控器的指令后,进行相应的控制操作,如开、关灯等。
基于plc的交通灯控制系统设计毕业论文目录一、内容概括 (2)1.1 研究背景和意义 (2)1.1.1 交通灯控制系统的重要性 (3)1.1.2 PLC在交通灯控制系统中的应用 (4)1.2 研究目的和任务 (6)1.2.1 论文研究目的 (7)1.2.2 论文研究任务 (8)二、交通灯控制系统概述 (8)2.1 交通灯控制系统的定义 (10)2.2 交通灯控制系统的组成 (10)2.2.1 硬件设备 (11)2.2.2 软件系统 (12)2.3 交通灯控制系统的分类 (13)2.3.1 传统交通灯控制系统 (15)2.3.2 基于PLC的交通灯控制系统 (16)三、PLC技术基础 (17)四、基于PLC的交通灯控制系统设计 (19)4.1 设计原则和设计要求 (20)4.1.1 设计原则 (21)4.1.2 设计要求 (22)4.2 系统架构设计 (23)4.2.1 总体架构设计 (26)4.2.2 控制器设计 (27)4.2.3 传感器设计 (28)4.3 系统功能实现 (29)4.3.1 交通灯控制功能实现 (30)4.3.2 系统监控功能实现 (32)4.3.3 故障诊断与报警功能实现 (33)五、系统测试与性能分析 (35)一、内容概括本文主要针对基于PLC的交通灯控制系统进行了深入研究和设计。
对交通灯控制系统的基本原理和功能进行了详细阐述,包括红绿灯的切换、行人过街按钮的响应以及故障检测与报警等功能。
对PLC 在交通灯控制系统中的应用进行了分析,重点介绍了PLC的硬件组成、编程语言以及编程方法等方面的内容。
在此基础上,设计了一套完整的基于PLC的交通灯控制系统,并通过实际应用验证了其可行性和稳定性。
对整个系统进行了总结和展望,为今后类似项目的开展提供了有益的参考。
1.1 研究背景和意义随着城市化进程的加快,智能交通系统在现代城市建设中扮演着越来越重要的角色。
交通灯作为道路交通管理的重要组成部分,其控制系统的先进性和稳定性直接关系到道路通行效率和交通安全。
EDA课程设计报告设计题目:交通灯信号控制器专业年级:姓名:学号:指导教师:2012.5.30摘要-----------------------------------------------------1 关键词--------------------------------------------------1 一交通灯控制系统简介------------------------------------2 1.1 交通灯的发展----------------------------------------2 1.2 交通灯控制系统的目的--------------------------------2 二交通灯控制系统的设计----------------------------------2 2.1 设计要求--------------------------------------------3 2.2 设计思路--------------------------------------------3 2.2.1 设计流程----------------------------------------4 2.2.2 状态机变化图------------------------------------5 三详细设计----------------------------------------------6 3.1 红黄绿灯控制模块------------------------------------6 3.2 倒计时传输、控制模块---------------------------------6 3.3 倒计时45秒模块-------------------------------------7 3.4倒计时25秒模块--------------------------------------8 3.5倒计时5秒模块---------------------------------------8 3.6 总体连线图------------------------------------------9 四心得体会---------------------------------------------10 参考文献-----------------------------------------------10 附录---------------------------------------------------11随着电子设计技术、ISP(在系统可编程)技术,PLD(可编程逻辑器件),与EDA(电子设计自动化)紧密结合,它代表了数字系统设计领域的最高水平,给数字电路的设计带来了革命性的变化。
基于单片机的交通灯控制系统需要包含以下组成部分:1.硬件设备组成:单片机、LED 灯、显示屏等硬件设备。
2.设计思路描述:交通灯控制系统的设计思路是基于定时器的,利用计数器和定时器来控制红绿灯的转换,同时通过按键检测实现手动控制。
3.程序设计:程序需要完成按键检测、信号灯控制和定时器计数等功能。
具体实现可以分为以下几步:(1) 根据硬件设备的引脚对应关系,定义各个引脚的控制方式和状态。
(2) 在程序中定义计时器和定时器,用于计时和设置红绿灯状态。
例如,计时器每隔一定时间就会触发定时器,设置红绿灯的状态,并且根据状态判断相应的亮灯和熄灯。
(3) 通过按键检测来实现手动控制,当检测到按键按下时,立即切换灯的状态,当再次按下时,又立即切换回之前的状态。
4.实现代码:下面是一个该系统的简单代码示例,供参考:#include <reg52.h>#define uint unsigned int#define uchar unsigned charsbit KEY1 = P3^0;//按键定义sbit RED = P2^2;//红灯定义sbit YELLOW = P2^1;//黄灯定义sbit GREEN = P2^0;//绿灯定义/*函数声明*/void initTimer0();void delay1ms(uint count);/*主函数*/int main(){initTimer0();/*初始化计时器*/while(1){if(KEY1 ==0){/*按键按下*/delay1ms(5);/*消抖*/if(KEY1 ==0){/*仍然按下*//*绿灯亮10s*/GREEN =1;delay1ms(10000);GREEN =0;/*黄灯亮3s*/YELLOW =1;delay1ms(3000);YELLOW =0;/*红灯亮7s*/RED =1;delay1ms(7000);RED =0;/*黄灯亮2s*/YELLOW =1;delay1ms(2000);YELLOW =0;}}}return0;}/*函数定义*/void initTimer0(){TMOD &=0xF0;TMOD |=0x01;TH0 =0xFC;TL0 =0x18;EA =1;ET0 =1;TR0 =1;}/*1ms延时函数*/void delay1ms(uint count){uint i,j;for(i=0;i<count;i++){for(j=0;j<125;j++){}}}/*计时器中断函数*/void timer0() interrupt 1{TH0 =0xFC;TL0 =0x18;}以上是一个简单的基于单片机的交通灯控制系统设计与实现示例。
十字交叉路口信号灯控制机械工程学院 机自Z1101班 张金良 1110310715交通灯控制系统的控制要求如下:1.信号灯受一个起动开关控制,当起动开关接通时,信号系统开始工作,且先南北红灯亮,东西绿灯亮。
当起动开关断开时,所有信号灯都熄灭。
2.南北绿灯和东西绿灯不能同时亮,如果同时亮时应关闭信号灯系统,并报警。
3.南北红灯亮维持25S 。
在南北红灯亮的同时东西绿灯也亮,并维持20S 。
到20S 时,东西绿灯闪烁,闪烁3S 后熄灭。
在东西绿灯熄灭时,东西黄灯亮,并维持2S 。
到2S 时,东西黄灯熄,东西红灯亮。
同时,南北红灯熄灭,南北绿灯亮。
4.东西红灯亮维持30S 。
南北绿灯亮维持25S 。
然后闪烁3S ,熄灭。
同时南北黄灯亮,维持2S 后熄灭,这时南北红灯亮,东西绿灯亮。
5.周而复始。
红黄绿红黄绿红黄绿红黄绿东南西北一、系统方案分析利用多定时器产生时间切换点,实现对被控对象的顺序控制。
利用特殊位存储器SM0.5提供的周期为1S,占空比为50%的时钟脉冲实现闪烁控制。
二、十字路口交通灯状态分析表三、十字路口交通灯时序图四、控制系统流程五、硬件系统选型、I/O地址分配及硬件接线图1.硬件选择选用CPU226 AC/DC/RELAY (交流供电/直流输入/继电器输/24输入/16输出)。
2.PLC的I/O地址分配3.PLC的硬件接线图六、系统梯形图七、系统分析说明当开关SB1合上时,I0.0触点接通,T37、Q0.0线圈、Q0.5线圈得电,东西绿灯亮、南北红灯亮;T37通电20S后动作,T37的动合触点闭合,T38得电,T37动断触点断开,Q0.0变为由SM0.5驱动,东西绿灯闪烁;T38通电3S后动作,T38动断触点断开,Q0.0失电,东西绿灯灭,T38的动合触点闭合,Q0.1、T39得电,东西黄灯亮;T39得电2S后动作,T39动断触点断开,Q0.1、Q0.5失电,东西黄灯灭,南北红灯灭,39动合触点闭合,Q0.3、T40得电,南北绿灯亮;T40通电25S后动作,T40动断触点断开,Q0.3变为SM0.5驱动,南北绿灯闪烁,T40动开触点闭合,T41得电;T41得电3S后动作,T41常闭触点断开,Q0.3失电,南北绿灯灭,T41常开触点闭合,Q0.4、T42得电,南北黄灯亮;T42通电2后动作,T42常闭触点断开,Q0.4、T37失电,南北黄灯灭;T37失电后,T38、T39、T40、T41、T42失电,T42动断触点闭合。
智能交通灯PLC控制系统的设计一、本文概述随着城市化的快速发展,交通拥堵和交通事故的问题日益严重,智能交通系统因此应运而生。
作为智能交通系统的重要组成部分,智能交通灯控制系统在提高道路通行效率、保障交通安全方面发挥着至关重要的作用。
本文将对基于PLC(可编程逻辑控制器)的智能交通灯控制系统设计进行深入探讨,旨在通过技术创新提高交通管理效率,优化城市交通环境。
本文将首先介绍智能交通灯PLC控制系统的基本概念和原理,阐述其相较于传统交通灯控制系统的优势。
接着,将详细论述系统的设计过程,包括硬件选型、软件编程、系统架构搭建等关键环节。
还将探讨该系统的实际应用效果,分析其对交通流量、交通安全等方面的影响。
通过本文的研究,期望能够为智能交通灯PLC控制系统的设计提供有益的参考和借鉴,推动城市交通管理向更加智能化、高效化的方向发展。
也希望本文的研究能够为相关领域的技术创新和应用提供有益的启示和思路。
二、PLC基础知识介绍可编程逻辑控制器(Programmable Logic Controller,简称PLC)是一种专为工业环境设计的数字运算电子系统,用于实现逻辑控制、顺序控制、定时、计数和算术运算等操作的指令,并通过数字或模拟的输入/输出控制各种类型的机械设备或生产过程。
自20世纪60年代诞生以来,PLC以其高可靠性、强大的功能、灵活的配置和易于编程的特点,在工业控制领域得到了广泛应用。
PLC的基本结构主要包括中央处理器(CPU)、存储器、输入/输出(I/O)接口、电源以及通信接口等部分。
其中,CPU是PLC的核心,负责执行用户程序、处理数据、控制I/O接口等任务;存储器用于存储系统程序、用户程序及工作数据;I/O接口用于与外部的输入/输出设备连接,实现与外部世界的交互;电源为PLC提供稳定的工作电压;通信接口则用于PLC与其他设备或系统的数据交换和通信。
PLC的编程语言主要有梯形图(Ladder Diagram)、指令表(Instruction List)、功能块图(Function Block Diagram)等,这些语言直观、易学,方便工程师进行编程和调试。
1选题背景今天,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。
信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。
在交通中管理引入单片机交通灯控制代替交管人员在交叉路口服务,有助于提高交通运输的安全性、提高交通管理的服务质量。
并在一定程度上尽可能的降低由道路拥挤造成的经济损失,同时也减小了工作人员的劳动强度。
关键词:AT89C51;7448,LED2方案论证2.1设计任务设计基于单片机的智能交通红绿灯控制系统,要求能通过按键或遥控器设置系统参数,系统运行时,“倒计时等信息”能通过数码管或点阵发光管显示,设计时应考虑交通红绿灯控制的易操作性及智能性。
以单片机的最小系统为基础设计硬件,用汇编语言、或C语言设计软件。
通过本设计可以培养学生分析问题和解决问题的能力,掌握Mcs51单片机的硬件与软件设计方法,从而将学到的理论知识应用于实践中,为将来走向社会奠定良好的基础。
东西(A)、南北(B)两干道交于一个十字路口,各干道有一组红、黄、绿三个指示灯,指挥车辆和行人安全通行。
红灯亮禁止通行,绿灯亮允许通行,黄灯亮时车辆及行人小心通过。
红灯的设计时间为45秒,绿灯为40秒,黄灯为5秒。
2.2 方案介绍方案1设计思想:采用分模块设计的思想,程序设计实现的基本思想是一个计数器,选择一个单片机,其内部为一个计数,是十六进制计数器,模块化后,通过设置或程序清除来实现状态的转换,由于每一个模块的计数多不是相同,这里的各模块是以预置数和计数器计数共同来实现的,所以要考虑增加一个置数模块,其主要功能细分为,对不同的状态输入要产生相应状态的下一个状态的预置数,如图中A道和B道,分别为次干道的置数选择和主干道的置数选择。
方案2 设计思想:由两个传感器监视南北方向即A道与东西方向即B道的车辆来往情况,设开关K=1为有车通过,K=0为没有车通过。
则有以下四种情况:Ka=1时:Kb=0,表示A有车B没有车,则仅通行B道:Kb=1,表示A有车B有车,则优先通行A道;Ka=0时:Kb=0表示A没有车B也没有车,同样优先通行A道;Kb=1表示A没有车B有车,则仅通行B道。
方案比较:方案1用了模块设计,而方案2采用逻辑设计,相比之下1有较强的可读性和较强的可修改性,而2则在设计上显得较简单,设计纯朴,便于测试,它的优势则在于提供了一条较为便捷的解决方案。
2首先将许多逻辑关系简化到极点,而后将其一起集成用较少的芯片去完成所需功能。
我们最终的设计应该尽量使用模块化设计。
对工程设计人员来说,将来的产品无论从修改还是升级考虑对有好处,但另外我们又需将设计简单化,因此我觉得在设计初期尽可能的简单化设计,而一旦设计的各项测试通过了,在有可能的条件下将设计模块化,所以本设计以第一方案为主进行。
我们最终的设计应该尽量使用模块化设计。
对工程设计人员来说,将来的产品无论从修改还是升级考虑对有好处,但另外我们又需将设计简单化,因此我觉得在设计初期尽可能的简单化设计,而一旦设计的各项测试通过了,在有可能的条件下将设计模块化,所以本设计以第一方案为主进行。
3 交通灯系统硬件设计3.1 单片机概述单片机是由运算器、控制器、存储器、输入设备以及输出设备共五个基本部分组成的。
单片机是把包括运算器、控制器、少量的存储器、最基本的输入输出口电路、串行口电路、中断和定时电路等都集成在一个尺寸有限的芯片上。
通常,单片机由单个集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和I/O接口电路等。
因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。
3.2 系统构成电路板一块,AT89S51单片机一片,7448芯片2片,七段数码管八个。
发光二极管20个(8个绿的,8个红的,4个黄的用于交通控制),100欧姆电阻20个,2个按键,2个开关,51K欧姆电阻2个,5V 稳定电源1个,3个电容2个单刀单掷开关等。
系统结构框图:图3-1 系统结构框图系统工作流程:(1)程序初始,通过两个传感器来判断南北与东西方向车辆通行情况。
(2) 情况判定后由AT89S51单片机p1口及部分p2口输出二进制信号控制红绿黄灯亮的情况。
(3) 确定那些灯亮后,由对应的七段数码管来进行到计时显示。
由p0口输出来控制七段数码管的显示,而p2口的高四位则用来控制数码管显示时的个位和十位(4)系统是否需要紧急工作状态,而此任务由外部中断来实现。
(5)LED采用5V的直流电来驱动,低电平。
3.3芯片选择与介绍3.3.1 AT89S51芯片选用的AT89S51与同系列的AT89C51在功能上有明显的提高,最突出是的可以实现在线的编程。
用于实现系统的总的控制。
其主要功能列举如下:1) 为一般控制应用的 8 位单片机2) 晶片内部具有时钟振荡器(传统最高工作频率可至 33MHz)3) 内部程式存储器(ROM)为 4KB4) 内部数据存储器(RAM)为 128B5) 外部程序存储器可扩充至 64KB6) 外部数据存储器可扩充至 64KB7) 32条双向输入输出线,且每条均可以单独做 I/O 的控制8) 6 个中断向量源9) 2 组独立的 16 位定时器10) 1 个全双工串行通信端口11) 8751 及 8752 单芯片具有数据保密的功能12) 单芯片提供位逻辑运算指令图3-1 AT89C51芯片3.3.2 7448芯片介绍7448七段显示译码器输出高电平有效,用以驱动共阴极显示器。
该集成显示译码器设有多个辅助控制端,以增强器件的功能,可将单片机输出的四位二进制数转换成10进制数与七段数码管显示对应,用于显示0—9的数字。
图3-2 7448芯片其中LT 为测试输入。
3.3.3 红绿LED信号显示灯及七段数码显示管LED 灯的显示原理:通过同名管脚上所加电平的高低来控制发光二极管是否点亮。
如下图:图3-3红绿LED信号显示灯而七段数码管的显示不同的字形如 SP,g,f,e,d,c,b,a 管角上加上OFEH所以SP上为0伏,不亮其余为TTL高电平,全亮则显示为8。
采用共阴极连接:表3-4 七段数码管的显示显示数值 a b c d e f g dop 驱动代码(16进制)0 1 1 1 1 1 1 1 1 0FCH1 0 0 0 0 0 1 1 0 60H2 1 1 0 1 1 0 1 0 0DAH3 1 1 1 1 0 0 1 0 0F2H4 0 1 1 0 0 1 1 0 66H5 1 0 1 1 0 1 1 0 0B6H6 1 0 1 1 1 1 1 0 0BEH7 1 1 1 0 0 0 0 0 0E0H8 1 1 1 1 1 1 1 0 0FEH9 1 1 1 1 0 1 1 0 0F6H3.3.4交通灯控制线路图图3-5 原理图4 交通灯软件设计4.1 程序设计流程图程序设计框图图4-1 程序设计框图4.2延时的设定延时方法可以有两种一种是利用AT89S51内部定时器的溢出中断来确定1秒的时间,另一种是采用软件延时的方法.实现1ms秒的方法:我们采用在主程序中设定一个初值为0的软件计数器和使T1定时1毫秒相应程序代码:D1MS: MOV R7,#250 ;1MS延时程序DJNZ R7,$RET4.3子程序的实现A道通车情况:START1: MOV TEMP, #25LOOP1: ACALL DELAYDEC TEMPMOV A,TEMPMOV P0, TEMPJNB P1.6,START3JNB P1.7,START11CJNE A,#0, NEXT1LJMP START2NEXT1: LJMP LOOP1 START11: MOV TEMP, #65 MOV P1, #0F3HLOOP11: ACALL DELAYDEC TEMPMOV A,TEMPMOV P0, TEMPJNB P1.6,START33JNB P1.7,START1CJNE A,#0, NEXT11LJMP START11NEXT11: LJMP LOOP11 START2: MOV P1, #0F5H MOV TEMN,#05LOOP2: ACALL DELAY1DEC TEMNMOV A,TEMNCJNE A, #0,NEXT2LJMP START3NEXT2: LJMP LOOP2B道通车情况:START3: MOV TEMP, #25 MOV P1,#0DEHLOOP3: ACALL DELAYDEC TEMPMOV P0, TEMPJNB P1.6,START1JNB P1.7,START33CJNE A, #0,NEXT3LJMP START4NEXT3: LJMP LOOP3 START33: MOV TEMP, #65 MOV P1,#0DEHLOOP33: ACALL DELAY DEC TEMPMOV A,TEMPMOV P0, TEMPJNB P1.6,START11JNB P1.7,START3CJNE A, #0,NEXT33 LJMP START4NEXT33: LJMP LOOP33 START4: MOV P1, #0EEH MOV TEMN,#05LOOP4: ACALL DELAY1中断情况即紧急情况:ORG 0000HTEMP EQU 24HTEMN EQU 25HLJMP MAINORG 0003HLJMP T0_INTORG 0013HLJMP TI_INTT0_INT: MOV A, P1 PUSH ACCMOV P1, #0FFHMOV P1, #0F3HJNB P3.2,$POP ACCMOV P1, ACCRETITI_INT: MOV A, P1 PUSH ACCMOV P1, #0FFHMOV P1, #0DEHMOV P0,#00HJNB P3.3,$POP ACCMOV P1, ARETI5.1仿真图根据对称性选用部分对称元件仿真,图5-1 仿真图5.2.1 编写程序代码程序代码分为几个模块:中断模块,循环模块,延时模块。
原程序实现:ORG 0000HTEMP EQU 24HTEMN EQU 25HLJMP MAINORG 0003HLJMP T0_INTORG 0013HLJMP TI_INTT0_INT: MOV A, P1PUSH ACCMOV P1, #0FFHMOV P1, #0F3HMOV P0, #00HJNB P3.2,$POP ACCMOV P1, ACCRETITI_INT: MOV A, P1PUSH ACCMOV P1, #0FFHMOV P1, #0DEHMOV P0,#00HJNB P3.3,$POP ACCMOV P1, ARETIMAIN: SETB EASETB EX0SETB EX1CLR F0START1: MOV TEMP, #25 MOV P1, #0F3HLOOP1: ACALL DELAYDEC TEMPMOV A,TEMPMOV P0, TEMPJNB P1.6,START3JNB P1.7,START11CJNE A,#0, NEXT1LJMP START2NEXT1: LJMP LOOP1 START11: MOV TEMP, #65 MOV P1, #0F3HLOOP11: ACALL DELAYDEC TEMPMOV A,TEMPMOV P0, TEMPJNB P1.6,START33JNB P1.7,START1CJNE A,#0, NEXT11LJMP START11NEXT11: LJMP LOOP11 START2: MOV P1, #0F5H MOV TEMN,#05LOOP2: ACALL DELAY1DEC TEMNMOV A,TEMNCJNE A, #0,NEXT2LJMP START3NEXT2: LJMP LOOP2 START3: MOV TEMP, #25 MOV P1,#0DEHLOOP3: ACALL DELAYDEC TEMPMOV A,TEMPMOV P0, TEMPJNB P1.6,START1JNB P1.7,START33CJNE A, #0,NEXT3LJMP START4NEXT3: LJMP LOOP3 START33: MOV TEMP, #65 MOV P1,#0DEHLOOP33: ACALL DELAY DEC TEMPMOV A,TEMPMOV P0, TEMPJNB P1.6,START11JNB P1.7,START3CJNE A, #0,NEXT33 LJMP START4NEXT33: LJMP LOOP33 START4: MOV P1, #0EEH MOV TEMN,#05LOOP4: ACALL DELAY1 DEC TEMNMOV A, TEMNCJNE A,#0,NEXT4LJMP START1NEXT4: LJMP LOOP4 RETIDELAY: MOV A,TEMPMOV B, #10DIV ABMOV R5, AMOV R6, BMOV R0, #10L0: MOV R1, #250L1:MOV A,R5MOV P0, AACALL DIMSSETB P2.4MOV A,R6MOV P0,R6CLR P2.5ACALL DIMSSETB P2.5DEC R1DJNZ R1,L1DEC R0DJNZ R0,L0RETIDELAY1: MOV A,TEMN MOV B, #10DIV ABMOV R5, AMOV R6, BMOV R2, #10L2: MOV R3, #250 L3:MOV A,R5MOV P0, ACLR P2.4ACALL DIMSSETB P2.4MOV A,R6MOV P0,R6CLR P2.5ACALL DIMSSETB P2.5DEC R3DJNZ R3,L3DEC R2DJNZ R2,L2RETIMOV A,TEMPMOV B, #10DIV ABMOV R5, AMOV R6, BMOV R0, #10Y0: MOV R1, #250Y1:MOV A,R5MOV P2, ACLR P2.6ACALL DIMSSETB P2.6MOV A,R6MOV P2,R6CLR P2.7ACALL DIMSSETB P2.7DEC R1DJNZ R1,Y1DEC R0DJNZ R0,Y0RETIDIMS: MOV R7,#250DJNZ R7,$RETEND5.2.2 按照系统硬件连线图连接好系统并调试1) 调试程序⑴打开仿真软件,新建文件;⑵选择芯片;⑶新建文档,把编写好代码写入文档并保存了ASM文件;⑷把保存的文档加载到Source Group;⑸编译程序;⑹设置转换成16进制;⑺运行程序的结果;2) 把编写好的16进制文件(jtd.hex) 输入单片机AT89S51仿真器和对其进行初始化。