模拟交通灯控制系统设计
单片机课程报告设计--交通信号灯模拟控制系统设计

单片机课程报告设计题目:交通信号灯模拟控制系统设计专业:电子信息科学与技术班级:学号:姓名:指导老师:年月日※※※※※※前言※※※※※※本课程设计的目的和意义本课程设计是在学完单片机原理及课程之后综合利用所学单片机知识完成一个单片机应用系统设计并在实验室实现。
该课程设计的主要任务是通过解决一、两个实际问题,巩固和加深“单片机原理与应用”课程中所学的理论知识和实验能力,基本掌握单片机应用电路的一般设计方法,提高电子电路的设计和实验能力,加深对单片机软硬知识的理解,获得初步的应用经验,为以后从事生产和科研工作打下一定的基础。
*******目录*******一、设计要求二、设计内容三、交通信号灯模拟控制系统设计程序流程图四、交通信号灯模拟控制系统原理图五、交通信号灯模拟控制系统主程序六、运行步骤七、检测与调试八、课程设计体会九、参考文献十、说明一、设计要求:交通信号灯模拟控制系统设计利用单片机的定时器定时,令十字路口的红绿灯交替点亮和熄灭,并且用LED数码管显示时间。
用8051做输出口,控制十二个发光二极管燃灭,模拟交通灯管理。
二、设计内容:因为本课程设计是交通灯的控制设计,所以要了解实际交通灯的变化情况和规律。
假设一个十字路口为东西南北走向。
初始状态0为东西红灯,南北红灯。
然后转状态1东西红灯,南北绿灯通车,。
过一段时间转状态2南北绿灯灭,黄灯闪烁几次,东西仍然红灯。
再转状态3,东西绿灯通车,南北红灯。
过一段时间转状态4,东西绿灯灭,闪几次黄灯,南北仍然红灯。
最后循环至状态1。
注意:.双色LED是由一个红色LED管芯和一个绿色LED管芯封装在一起,公用负端。
当红色正端加高电平,绿色正端加低电平时,红灯亮;红色正端加低电平,绿色正端加高电平时,绿灯亮;两端都加高电平时,黄灯亮。
三、交通信号灯模拟控制系统设计程序流程图四、交通信号灯模拟控制系统主程序ORG 0000HSJMP A3ORG 0030HA3: MOV SP,#60H ;设栈指针初值MOV A, #24HMOV P1, ASETB P3.2CLR P3.3CLR P3.4SETB P3.5 ;全部红灯亮MOV R4,#00H ;显示0秒MOV R7,#00H ;显示0秒MOV R2,#03HLCALL XI ;调用子程序A2 : MOV A,#0CHMOV P1,ASETB P3.2SETB P3.3CLR P3.4CLR P3.5 ;东西红灯,南北绿灯MOV R4,#14H ; 显示20秒LOOP2 : MOV R2,#03HLCALL XIDJNZ R4,LOOP2 ;判断20秒显示时间到否MOV R2,#03HLCALL XILOOP8: MOV R2,#03H ;南北黄灯闪3次LCALL XIMOV R4,#05H ;设南北黄灯亮长显示5秒SETB P3.2CLR P3.3A1: MOV A,#14HMOV P1 ,ASETB P3.4CLR P3.5 ;东西红灯,南北黄灯MOV R2,#01H ;定时LCALL DELAY ;调用延时子程序MOV A ,#04HMOV P1 ,ACLR P3.4CLR P3.5 ;东西红灯,南北不亮即意思要南北黄灯闪烁MOV R2 ,#01H ;定时LCALL DELAYDJNZ R4,LOOP8 ;判断南北黄灯闪烁,显示5秒到否?MOV A, #61HMOV P1,ACLR P3.2CLR P3.3CLR P3.4SETB P3.5 ;东西绿灯,南北红灯MOV R4,#14H ;显示20秒LOOP3:MOV R2,#03HLCALL XIDJNZ R4,LOOP3 ;判断20秒显示时间到否MOV R7,#05H ;设东西黄灯亮长显示5秒SETB P3.5A0: MOV A,#0A2HMOV P1,ACLR P3.2CLR P3.3CLR P3.4 ;东西黄灯,南北红灯MOV R2,#01H ;定时LCALL DELAYMOV A,#20H ;MOV P1,ACLR P3.2CLR P3.3CLR P3.4 ;南北红灯,东西不亮即意思要东西黄灯闪烁MOV R2,#01H ;定时LCALL DELAYDJNZ R7,A0 ;判断东西黄灯闪烁,显示5秒到否?LJMP A2 ;循环回状态1,即东西红灯,南北黄灯DELAY: PUSH 2PUSH 1PUSH 0 ;进栈DELAY1: MOV 1,#00HDELAY2:MOV 0,#0B2HDJNZ 0,$ ;判断是否运行完0B2HDJNZ 1,DELAY2DJNZ 2,DELAY1POP 0POP 1POP 2 ;出栈DJNZ R2 ,DELAY ;判断R2是否运行完RET ;返回主程序XI: MOV A,R4MOV B,#10DIV ABMOV R6,AMOV DPTR,#TABMOV A,BMOVC A,@A+DPTRMOV SBUF,AMOV R7,#0FHH55S: DJNZ R7,H55SMOV A,R6MOVC A,@A+DPTRMOV SBUF,AMOV R7,#0FHH55S1: DJNZ R7,H55S1LCALL DELAYRETTAB:DB 0fch,60h,0dah,0f2h,66h,0b6h,0beh,0e0hDB 0feh,0f6h,0eeh,3eh,9ch,7ah,9eh,8ehEND五、交通信号灯模拟控制系统原理图设计的连线图提示:(1) 完整的DVCC实验箱面板(2)硬件电路连接说明六、运行步骤:①8051 P1.0—P1.7、P3.2—P3.5依次接发光二极管L1—L12。
智能交通灯控制系统的设计与实现

智能交通灯控制系统的设计与实现随着城市化进程的加速,城市道路交通越来越拥堵,交通管理成为城市发展的一个重要组成部分。
传统的交通信号灯只具备固定时序控制交通流量的功能,但随着技术的进步和智能化应用的出现,要求交通信号灯具备实时性、自适应性和智能化,因此,智能交通信号灯控制系统应运而生。
本文将从软硬件系统方面,详细介绍智能交通灯控制系统的设计与实现。
一、硬件设计智能交通灯控制系统的硬件部分由四个部分组成:单片机系统、交通灯控制器、传感器及联网模块。
1. 单片机系统单片机是智能交通灯控制系统的核心,该系统选用了8位单片机,主要实现红绿灯状态的自适应和切换。
在设计时,需要根据具体情况选择型号和板子,选择时需要考虑其开发环境、风险和稳定性等因素。
2. 交通灯控制器交通灯控制器是智能交通灯控制系统中的另一个重要部分,主要实现交通信号的灯光控制。
在控制器的设计时,需要考虑网络连接、通信、数据传输等多方面因素,确保系统的稳定性和可靠性。
3. 传感器传感器主要负责采集道路交通信息,包括车辆数量、速度、方向和道路状态等,从而让智能交通灯控制系统更好地运作。
传感器有多种类型,包括磁感应传感器、摄像头、光电传感器等,需要根据实际需求选择。
4. 联网模块联网模块主要负责智能交通灯控制系统的联网和数据传输,包括存储和处理车流数据、上传和下载数据等。
在设计时,需要考虑网络连接的稳定性、数据安全等因素,确保智能交通灯控制系统的连续性和可靠性。
二、软件设计智能交通灯控制系统的软件部分主要由两部分组成:嵌入式系统和上位机系统。
1. 嵌入式系统嵌入式系统是智能交通灯控制系统的主体,主要设计车流量检测、信号灯状态切换等程序。
为了保证系统的自适应性和实时性,需要采用实时操作系统,如FreeRTOS等。
在软件设计阶段,需要注意设计合理的算法和模型,确保系统的准确性和稳定性。
2. 上位机系统上位机系统主要实现智能交通灯控制系统的监控和管理,包括车流量监控、灯光状态监控、信号灯切换和日志记录等。
毕业设计基于PLC的智能交通灯的设计

毕业设计基于PLC的智能交通灯的设计随着科技的快速发展,智能化已经成为了交通系统的重要发展方向。
在城市交通管理中,智能交通灯控制系统发挥着至关重要的作用。
本文将介绍一种基于PLC(可编程逻辑控制器)的智能交通灯设计,旨在提高交通效率,确保交通安全,并改善交通环境。
一、设计背景与目的城市交通问题一直是困扰人们的难题,高峰期的拥堵和交通事故频发等问题给人们的生活带来了诸多不便。
传统的交通灯控制系统已无法满足现代交通的需求,因此需要一种更加智能化、高效的交通灯控制系统来解决这些问题。
本设计的目的是通过PLC技术,实现交通灯的智能化控制,提高道路通行效率,减少拥堵和交通事故的发生。
二、设计方案1、系统架构本设计采用PLC作为核心控制器,通过传感器采集道路交通信息,如车流量、车速、车道占有率等,根据采集到的信息对交通灯进行智能控制。
同时,系统还包括人机界面(HMI),以便工作人员对系统进行监控和调试。
2、硬件选型PLC选用具有强大计算能力和稳定性的西门子S7-1200系列,该系列PLC具有丰富的IO接口和通信端口,适合用于本设计的控制需求。
传感器选用海康威视的车流量检测器,能够实时监测道路车流量,为PLC提供控制依据。
HMI选用昆仑通态的触摸屏,能够直观地展示系统运行状态和交通信息。
3、软件设计软件部分包括PLC程序和HMI界面设计。
PLC程序主要实现道路交通信息的采集、处理和交通灯的控制逻辑。
HMI界面设计则要实现系统状态的监控、交通信息的展示和人工干预等功能。
软件设计采用模块化的思路,便于后续的维护和升级。
三、功能特点本设计的智能交通灯具有以下功能特点:1、实时监测:通过传感器实时监测道路车流量、车速和车道占有率等信息,为PLC提供控制依据。
2、智能控制:根据监测到的交通信息,PLC能够实现交通灯的智能控制,包括绿灯时间的动态调整、红灯时间的优化分配等,以提高道路通行效率。
3、安全保障:通过实时监测车流量和车速等信息,系统能够及时发现交通事故的风险,并采取相应的控制策略,保障交通安全。
基于嵌入版MCGS交通灯模拟控制系统设计

基于嵌入版MCGS交通灯模拟控制系统设计摘要:MCGS嵌入版是专门为嵌入式计算机的监控系统开发的组态软件,是由组态环境和运行环境两部分组成的。
它适应于应用系统对功能、成本、体积等专用计算机系统。
交通灯模拟控制是一个运行稳定、功能成熟、维护量小的触摸屏组态的监控系统,方便用户对组态过程的调试。
关键词:组态交通灯模拟系统1、控制要求按照实际系统的操作过程设计了以下的模拟过程,初始状态:南北绿灯亮,东西红灯亮。
南北红灯亮7秒灭,南北黄灯闪烁3秒,南北红灯亮10秒后南北循环;东西红灯亮10秒灭,东西绿灯亮7秒灭,东西黄灯闪烁3秒后循环,时序图如1。
图1 交通灯时序图2、变量分析实时数据库是MCGS工程的数据交换和数据处理中心。
数据变量是构成实时数据库的基本单元,定义数据变量的内容主要包括:指定数据变量的名称、类型、初始值和数值范围,交通灯变量如表1。
表1 变量类型3、工程组态1)工程新建。
双击Windows操作系统的桌面上的组态环境快捷方式,打开嵌入版组态软件,点击文件菜单中“新建工程”;弹出“新建工程设置”对话框,TPC 类型选择为“TPC7062K”,点击“确认”。
2)工程保存。
点击文件菜单中“工程另存为”菜单项;在文件名一栏输入“交通灯模拟控制系统设计,点击“保存”。
3)建立新组态窗口。
在MCGS组态“工作台”上,单击“用户窗口”,在“用户窗口”中单击“新建窗口”按钮,则产生新“窗口0”。
4)设计画面流程。
(1)建立标题文字:文字框图建立后,输入“交通灯控制系统”文字,按回车键文字输入过程结束。
(2)建立基本元:灯的建立:单击“工具箱”菜单中“插入元件” 图标,弹出“对象元件库管理”;点击“指示灯”中选取中意的灯,按“确认”。
车的建立与灯的建立方法相同。
4、脚本程序IF 液位1< 9 THEN 水泵=1ELSE水泵=0ENDIF‘启动南北绿灯并记时IF X1=1 THEN Y1=1 T2=1ENDIF‘记时到,绿灯灭,黄灯闪烁IF T1=1 THENY1=0 Y2=1 T2=0 T4=1ENDIF‘记时到,黄灯灭,红灯亮IF T3=1 THEN Y2=0 Y3=1 T4=0 T6=1ENDIF‘记时到,循环IF T5=1 THEN Y3=0 Y1=1 T6=0ENDIF‘启动东西红灯并记时IF X1=1 THEN Y6=1 T16=1ENDIF‘记时到,红灯灭,绿灯亮IF T15=1 THEN Y4=1 Y6=0 T16=0 T12=1ENDIF‘记时到,绿灯灭,黄灯闪烁IF T11=1 THEN Y5=1 Y4=0 T12=0 T14=1ENDIF‘记时到,循环IF T13=1 THEN Y6=1 Y5=0 T14=0ENDIF5、工程下载点击工具条中的“下载” 按钮,效果图如3。
交通灯控制系统模拟设计_毕业设计论文

附件1:学号:0121018700XXX课程设计题目交通灯控制系统模拟设计学院物流工程专业物流工程班级物流工程卓越1001姓名指导教师2013 年 6 月28 日交通灯控制系统模拟设计XXX武汉理工大学物流工程卓越1001摘要:随着经济发展,汽车数量急剧增加,城市道路日渐拥挤,交通拥塞已成为一个国际性的问题。
因此,设计可靠、安全、便捷的多功能交通灯控制系统有极大的现实必要性。
根据交通灯在实际控制中的特点,结合单片机的控制功能,提出了一种用单片机自动控制交通灯的简易方法。
设计中包括硬件电路的设计和程序设计两大步骤,对单片机学习中的几个重要内容都有涉足。
本系统采用AT89C51单片机为中心器件来设计交通灯控制器,实现了红绿灯循环点亮,倒计时剩5秒时黄灯闪烁警示(交通灯信号通过P1口输出,显示时间通过P0口输出至双位数码管);以及实现3种工作模式:正常情况、繁忙情况、特殊情况及报警功能。
本系统实用性强、操作简单、扩展功能强。
关键字:交通灯;AT89C51;数码管;三种工作模式Design of traffic light control system simulationZhiming GuoLogistics Engineering College Logistics zy1001Abstract: With the development of economy, the sharp increase in the number of cars, increasingly crowded city roads, traffic congestion has become an international problem. Therefore, multi-function traffic light control system design of reliable, safe, convenient and of great practical necessity. According to the characteristics of traffic lights in the actual control, combined with the control function of single chip, this paper presents a simple method for automatic control of traffic lights with single chip microcomputer. In the design of hardware circuit design and program design includes two steps, on several important single-chip learning have to get involved in. The system centric devices to design the traffic light controller AT89C51, realizes the cycle traffic lights lit, countdown 5 seconds left when the yellow light flashing warning (traffic light signal output, display time through the output port P0 to two digital tube through the P1 port); 3 work modes: normal, busy and implementation situation, special circumstances and alarm function. The system practical, simple operation, strong function expansion.Key words: raffic lights, AT89C51, LED, three work modes目录课程设计任务书 (1)第1章前言 (1)1.1交通灯发展概述 (1)1.2 课题背景及意义 (1)1.3课题任务及主要实现内容 (2)1.4 原理分析 (3)1.4.1交通灯显示时序的理论分析 (3)1.4.2 交通灯显示的理论分析 (4)第2章设计方案分析 (5)2.1 单片机与外围接口部件 (5)2.2 倒计时显示界面 (6)2.3 交通灯 (6)第3章硬件系统设计 (7)3.1 单片机的选择 (7)3.1.1 AT89C51单片机简介 (7)3.1.2 AT89C51单片机的主要特性 (7)3.1.3主要引脚功能 (8)3.1.4 C51的中断源 (10)3.2 硬件电路实现 (10)3.2.1 最小系统设计 (10)3.2.2 显示设计 (12)3.2.3 发光二极管模拟红绿灯 (15)3.2.4 按键模块 (15)第4章软件电路设计 (16)4.1 软件编译环境测试 (16)4.1.1 C语言介绍 (16)4.1.2 Keil uVision4介绍 (16)4.2软件总体设计 (17)结论 (19)参考文献 (20)源程序: (22)课程设计任务书学生姓名:XXX专业班级:物流工程卓越1001指导教师:朱宏辉工作单位:物流工程题目:交通灯控制系统模拟设计初始条件:1. 熟悉背景资料和任务:熟悉给定的背景资料和数据,明确系统设计的任务要求;拟订设计计划和初步方案。
交通灯PLC控制系统设计

交通灯PLC控制系统设计交通灯是城市交通管理的重要组成部分,交通灯控制系统的设计对于保障交通安全和优化交通流量起着关键作用。
PLC(可编程逻辑控制器)技术在交通灯控制系统中得到了广泛应用,本文将从系统设计的整体框架、PLC程序设计、硬件选型以及系统特点等方面来详细介绍。
交通灯PLC控制系统设计的整体框架主要包括信号采集模块、信号处理模块、控制模块和执行模块四部分。
信号采集模块主要负责将交通流量、行人流量等信息转化为电信号输入给PLC控制器;信号处理模块对采集到的信号进行处理,如检测交通流量的高低以及行人通过的情况;控制模块根据信号处理结果,生成控制信号输出给执行模块;执行模块实现交通灯的控制,通过电路和执行器实现交通灯的开关。
PLC程序设计是交通灯PLC控制系统设计的核心部分,主要包括输入端口设置、控制逻辑设计、输出端口设置和通信设置等。
在输入端口设置中,确定采集到的数据类型和数据源,如交通流量和行人流量分别通过传感器采集。
控制逻辑设计是根据交通灯的状态和信号控制规则确定交通灯的控制方式,比如根据交通流量高低切换交通灯的状态。
输出端口设置是将确定好的控制信号输出到对应的执行模块,如输出信号控制交通灯的红绿灯状态。
通信设置是实现与其他相关系统的联动,如与监控系统的数据交互。
硬件选型是交通灯PLC控制系统设计的重要环节,主要包括PLC控制器、传感器、执行器和电源等。
PLC控制器应该具有高性能、稳定可靠的特点,能够满足交通灯控制系统的需求。
传感器的选型应基于交通流量和行人流量的检测需求,常用的有光电传感器、气压感应器等。
执行器的选型应根据交通灯的类型确定,如LED灯管、数码管等。
电源的选型应满足交通灯控制系统的供电需求,选用稳定可靠的电源。
交通灯PLC控制系统设计具有以下特点:灵活性高、可靠性强、实时性好。
PLC控制器的可编程性使得交通灯的控制逻辑可以根据实际需求进行灵活调整,满足不同时间段的交通流量要求。
PLC的智能交通灯控制系统设计..

PLC的智能交通灯控制系统设计--智能交通灯控制系统设计文档1-引言1-1 目的和范围本文档旨在设计一套基于PLC的智能交通灯控制系统,用于实现交通流畅和安全管理。
1-2 定义●PLC:可编程逻辑控制器(Programmable Logic Controller),是一种可编程数字运算控制器。
●智能交通灯:根据实时交通信息和需求,自动调整交通灯的信号显示。
●交通流畅:指通过合理的交通信号控制,减少交通拥堵和延误,提高交通效率。
●安全管理:通过合理的交通信号控制,确保道路交通的安全性和可靠性。
2-系统架构设计2-1 系统组成部分●PLC控制器●交通灯信号灯●交通检测传感器●人行横道信号灯●数据通信模块2-2 系统工作原理智能交通灯控制系统通过交通检测传感器获取实时交通信息,根据预设的控制算法,向信号灯发送指令来调整信号显示。
同时,通过数据通信模块与其他交通管理设备进行通信,实现跨路口协调控制。
3-系统硬件设计3-1 PLC控制器选型选择适宜的PLC控制器,满足系统的输入输出要求和性能需求。
3-2 交通灯信号灯设计根据道路交通需求和交通管理规范,设计合适的交通灯信号灯,包括信号显示颜色和亮度。
3-3 交通检测传感器选型选择适宜的交通检测传感器,可根据车辆和行人的实时情况,提供准确的交通流量数据。
3-4 人行横道信号灯设计根据行人需求和交通管理规范,设计合适的人行横道信号灯,保证行人安全过马路。
3-5 数据通信模块选型选择适宜的数据通信模块,实现系统与其他交通管理设备的数据交互和远程控制。
4-系统软件设计4-1 PLC编程使用PLC编程软件进行控制算法的编写,实现交通灯信号的动态调整。
4-2 信号灯控制算法设计设计合理的控制算法,根据实时交通信息和需求,动态调整交通灯信号显示。
4-3 数据通信协议设计设计系统与其他交通管理设备之间的数据通信协议,实现数据交互和远程控制。
5-系统测试与验证5-1 硬件测试对系统硬件进行功能测试,确保各部件正常工作。
交通灯PLC控制系统设计

交通灯PLC控制系统设计摘要:本文介绍了交通灯PLC控制系统的设计。
交通灯是城市交通管理中的重要设备,它能有效协调交通流量,提高道路通行效率和安全性。
本文以PLC控制系统为基础,设计了一个简单的交通灯控制系统,包括信号灯的控制逻辑、PLC程序的编写和硬件连接等。
关键词:交通灯;PLC控制系统;信号灯;程序编写1.引言交通拥堵一直是城市发展中的一个重要问题。
为了有效管理交通流量,提高道路通行效率和安全性,交通灯被广泛应用于路口和人行横道等交通场所。
交通灯通过控制不同车辆和行人的通行时间来协调交通流量,确保道路交通的顺畅。
传统的交通灯控制方式多采用电路控制或计时器控制,这种方式存在控制逻辑复杂、维护困难等问题。
而PLC控制系统采用可编程控制器(PLC)作为控制核心,具有功能强大、操作灵活、易于扩展等优点,逐渐成为现代交通灯控制的主流方式。
本文将介绍一个基于PLC控制系统的交通灯控制系统。
首先介绍交通灯的基本原理和工作方式,然后详细设计PLC程序和硬件连接,最后进行系统测试和验证。
2.交通灯工作原理交通灯主要由红灯、黄灯和绿灯组成。
不同颜色的灯泡代表不同的信号状态,用来指示不同类型车辆和行人的通行情况。
当绿灯亮起时,表示允许车辆通行;当红灯亮起时,表示禁止车辆通行;当黄灯亮起时,表示信号即将变换,要求车辆减速停车。
通过不同颜色的灯泡的组合和闪烁,可以实现不同的交通信号。
交通灯的控制逻辑一般采用有限状态机(FSM)来描述,包括不同状态之间的转换条件和动作执行。
常见的状态包括绿灯状态、红灯状态、黄灯状态等。
3.PLC程序设计在设计交通灯控制系统的PLC程序时,需要将交通灯的控制逻辑转化为PLC指令,以实现信号灯的控制。
下面以一个简单的路口为例,介绍PLC程序的编写。
首先定义输入和输出变量,如IN1表示车辆检测器信号,OUT1表示绿灯输出信号,OUT2表示红灯输出信号,OUT3表示黄灯输出信号。
然后编写控制逻辑,包括输入信号的检测和输出信号的控制。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
贵州师范学院电子课程设计报告书班级11级1班学生姓名王旭东学号11030540094专业电子信息科学与技术院系物电学院2014年6 月20 日摘要随着城市人口的快速增长和机动车数量的大量增加,城市交通灯作为缓解交通压力、提高道路通行效率的重要手段,其作用越来越重要。
因此,如何改进交通灯的设计,使其更好的适应城市交通的发展也成为一个重要课题。
红绿灯控制系统是利用8253A定时/计数器芯片的定时功能,向8259A中断控制器芯片发出定时中断请求,驱动8255A可编程并行接口芯片改变路口的LED灯的亮灭。
系统采用DVCC-598JH+微机原理与接口技术实验箱作为测试与运行的平台,8086汇编语言作为编程语言,并用MASM5.0作为汇编语言开发环境。
关键词:红绿灯控制系统 8253A定时器 8259A中断控制器 8255A可编程并行接口 DVCC-598JH+目录摘要 (201)1.十字路口基本情况分析 (201)2.交通灯状态转换分析 (III)3.紧急通行情况分析 (5)4.硬件功能分析 (6)4.1 8253A定时/计数器芯片 (6)4.2 8259A中断控制器芯片 (7)4.3 8255A可编程并行接口芯片 (9)5.系统设计 (10)5.1硬件设计 (10)5.1.1 电路分析 (10)5.1.2 电路连接设计 (10)5.2软件设计 (12)5.2.1 程序总体设计 (12)5.2.2 程序流程设计 (13)5.2.3 重要代码分析 (XII)6.系统实现 (XVII)6.1 软件开发与运行环境 (10)6.2 系统硬件环境 (20)6.3 系统运行步骤 (20)6.4 系统测试结果 (20)参考文献 (21)心得体会 (22)1 十字路口基本情况分析设有一个十字路口,1、3为东西方向,2、4为南北方向,1、3路口的绿灯亮,2、4路口的红灯亮,1、3路口方向通车;延时一段时间后,1、3路口的绿灯熄灭,而1、3路口的黄灯开始闪烁,闪烁若干次以后,1、3 路口红灯亮,而同时2、4路口的绿灯亮,2、4路口方向通车;延时一段时间后,2、4 路口的绿灯熄灭,而黄灯开始闪烁,闪烁若干次以后,再切换到1、3路口方向,之后重复上述过程。
2 交通灯状态转换分析合理的设置每个路口、每个方向的交通灯的通行时间,对车辆能否及时疏散,有着决定性的作用。
状态1 的时候:1、3路口的绿灯熄灭,1、3路口的黄灯开始亮,当通行时间剩下5秒结束时,LED会闪烁,而同时2、4路口的红灯亮状态2的时候:1、3 路口红灯亮,而同时2、4路口的绿灯亮,2、4路口方向通车;状态3的时候:1、3 路口红灯亮,而同时2、4路口的黄灯亮;状态4 的时候:1、3路口的绿灯亮,2、4路口的红灯亮,1、3路口方向通车。
整个状态转换的过程见表2-1。
表2-1 路口四个状态和相互转换过程完成四个状态的一次循环需要40秒,红灯亮20秒、绿灯亮15秒、黄灯亮5秒完成了在适当的时间限度内,有效的疏散较大的通行量的目的。
3 紧急通行情况分析手动拨动单脉冲一次,则产生一个优先级高一级的中断,程序转而执行此中断处理程序,处理完后返回继续执行低级中断。
整个执行过程见图3-1图3-1 紧急中断程序4 硬件功能分析4.1 8253A定时/计数器芯片8253A定时/计数器具有定时、计数双功能。
它具有三个相同且相互独立的16位减法计数器,分别称为计数器0、计数器1和计数器2。
每个计数器计数频率为0-2MHZ。
其内部数据总线缓冲器为双向三态,故可直接连在系统数据总线上,通过CPU写入计数初值,也可由CPU读出计数当前值。
读写控制逻辑,当选中该芯片时,根据读写命令和送来的地址信息控制整个芯片工作。
其工作方式通过控制字确定。
控制字寄存器用于接收数据总线缓冲器的信息。
当写入控制字时,控制计数器的工作方式;当写入数据时则装入计数初值。
控制寄存器为8位,只能写入不能读出。
8253A内部结构见图4-1。
当8253A执行计数功能时,计数器装入初值后,当GATE为高电平时,可用外部事件作为CLK脉冲对计数值进行减1计数。
每来一个脉冲减1,当计数值减为0时,由OUT端输出一个标志信号。
当8253A执行定时功能时,计数器装入初值后,当GATE为高电平时,由CLK 脉冲触发开始自动计数。
当计数到零时,发计数结束定时信号。
8253A可以工作在方式0到方式5,常用的有方式2频率发生器方式和方式3方波发生器方式。
在方式2时,当初值装入后,OUT变为高;计数结束,OUT变为低。
该方式下如果计数未结束,但GATE为低时,立即停止计数,将OUT变为高;当GATE 再变高时,便启动一次新的计数周期。
在方式3时,当装入初值后,在GATE上升沿启动计数,OUT输出高电平;当计数完成一半时,OUT输出低电平。
在本系统中,8253A工作于方式3方波发生器方式。
图 4-1 8253A内部结构图4.2 8259A中断控制器芯片8259A是专为控制优先级中断而设计的芯片。
它将中断源按优先级排队、辨认中断源和提供中断向量的电路集成于一体,只要用软件对它进行编程,就可以管理8级中断。
8259A的内部结构见图4-2。
它由中断请求寄存器(IRR)、优先级分析器、中断服务寄存器(ISR)、中断屏蔽寄存器(IMR)、数据总线缓冲器、读写控制电路、级联缓冲器和比较器组成。
图 4-2 8259A的内部结构对8259A编程和初始化的时候,首先要写初始化命令字ICW1-ICW4。
写ICW1以确定中断请求信号类型,清除中断屏蔽寄存器,进行中断优先级排队和确定系统是用单片还是多片。
写ICW2用来定义中断向量的高五位类型码。
ICW3可以定义主片8259A中断请求线上IR0-IR7有无级联的8259A从片。
写ICW4用来定义8259A工作时用8085模式还是8088模式,以及中断服务寄存器复位方式等。
初始化命令字写完以后,要写8259A的控制命令字,它包括OCW1-OCW3。
写OCW1可以设置或清除对中断源的屏蔽。
写OCW2设置优先级是否进行循环、循环的方式和中断结束的方式。
8259A 复位时自动设置IR0优先权最高,IR7优先权最低。
写OCW3用来设置查询方式和特殊屏蔽方式,并可以读取8259A中断寄存器的当前状态。
在本系统中,使用8259A的循环等待中断工作方式。
4.3 8255A可编程并行接口芯片8255A是一种可编程的芯片,它采用双列直插封装,用+5V电源供电。
内部有3个8位的I/0端口:A口、B口和C口。
这三个端口也可以分为各有12位的两组:A 组和B组。
A组包含A口8位和C口的高四位,B组包含B口8位和C口的低四位;A组控制和B组控制用于实现方式选择操作;读写控制逻辑用于控制芯片内部寄存器的数据和控制字经数据总线缓冲器送入各组接口寄存器中。
由于8255A数据总线缓冲器是双向三态8位驱动器,因此可以直接和8088系统数据总线相连。
8255A的内部逻辑结构见图4-3。
图4-3 8255A的内部结构8255A有三种工作方式:方式0、方式1和方式2。
它通过对控制寄存器写入不同的方式选择控制字来决定其三种不同的工作方式。
方式0是基本输入输出方式。
该方式下的A口8位和B口8位可以由输入的控制字决定为输入或输出,C口分成高4位(PC4-PC7)和低4位(PC0-PC3)两组,也有控制字决定其输入或输出。
需要注意的是,该方式下,只能将C口其中一组的四位全部置为输入或输出。
方式1选通输入输出方式,又叫单向输入输出方式。
它分为A、B两组,A 组由数据口A和控制口C的高4位组成,B组由数据口B和控制口C的低4位组成。
数据口的输入输出都是锁存的,与方式0不同,由控制字来决定它是作为输入还是输出。
C口的相应位用于寄存数据传送中所需的状态信号和控制信息。
方式2为双向输入输出方式。
本方式只有A组可以使用。
此时A口为输入输出双向口,C口中的5位(PC3-PC7)作为A口的控制位。
在本系统中,8255A的三个端口均工作于方式0,全部为输出口。
5 系统设计5.1硬件设计5.1.1 电路分析本系统要实现的功能是模拟十字路口红绿灯的工作状况。
按照预先设定并优化的交通灯规则,控制LED指示灯的亮灭,同时在实验箱的数码管显示屏上显示剩余的时间。
当时间递减到0的时候,改变LED灯的状态,并刷新显示屏显示的时间。
为了实现以上功能需求,本系统需要12个LED指示灯,来分别代表1、3方向(东西),2、4方向(南北);两个双位的数码管显示屏,用来显示1、3路口和2、4路口剩余的时间。
为了实时地更新数码管显示屏上的数字,需要使用8255A可编程芯片来即时地改变显示屏每个笔划的电平高低,从而准确地将需要显示的数字显示在数码管显示屏上。
由于交通灯需要按秒进行计数,所以需要一个均匀地时钟发生器。
8253A芯片是个功能丰富、使用简单的定时/计数器。
它可以根据需要设置不同的显示初值,从而产生所需频率的时钟脉冲,为系统提供计时和驱动其他事件的发生。
8259A中断控制器芯片可以在收到8253A发出的时钟脉冲时,产生定时的中断,在中断服务程序中,更新显示缓冲区,并调用8255A芯片来执行相关程序,从而更新LED灯和数码管显示屏。
本系统使用集成的电路和实验环境,以方便进行电路的连接和测试,同时减少由于电路的复杂性而产生的错误。
5.1.2 电路连接设计本系统所使用到的硬件包括8253A芯片、8259A芯片、8255A芯片、LED指示灯和数码管显示屏。
在电路连接的时候,将8255A芯片的PC口的PC5、PC4接红灯灯,PC3、PC2接绿灯,PC1、PC0接黄灯。
通过改变8255A的PC口的值来实时地控制每个LED 灯的亮灭,从而改变十字路口的交通状态。
将8253A的CLK0插孔连接至1MHZ的分频输出插孔T4。
分频输出插孔所输出的频率是将系统的主频分解为一定的频率,以供其他硬件或者软件使用。
8253A从分频插孔得到1MHZ的固定频率,再根据芯片内部设定的计数初值,从而产生需要频率的时钟脉冲,由OUT0口输出,供其他芯片使用。
在这里OUT0接CLK2。
将8253A的OUT2插孔连接至8259A的IRQ3插孔上。
8259A的IRQ3中断口每隔固定的时间便会收到8253A发送过来的时钟脉冲,作为中断源来执行中断服务程序。
在中断服务程序中,完成更新数码管显示值和改变交通灯状态的功能。
硬件的连接见图5-1和图5-2。
图 5-1 系统电路图——8253A和8259A的连接图图 5-2 系统电路图——8255A和LED灯的连接图5.2软件设计5.2.1 程序总体设计本系统采用“自上而下总体规划、自下而上应用开发”的策略进行总体设计和开发。
先根据其功能需要,设定需要的功能模块,确定需要编写的子程序,从而使程序结构清晰,便于阅读和调试,加快了系统完成的速度。