基于单片机的交通灯控制器的研究与设计内容摘要:
原理 : 当定时器定时为 1 秒,时程序跳转到时间显示及信号灯显示子程序,它将依次显示信号灯时间 ,同时一直 显示信号灯的颜色,这时在返回定时子程序定时一秒,在显示黄灯的下一个时间,这样依次把所有的灯色的时间显示完后在重新给时间计数器赋初值 ,重新进入循环。 8255 输出信号的放大 : 要使行人能看见信号灯的情况,必须把 8255 输出的信号进行放大,这里我们用 VT 为双向晶闸管,当门极为高电平时晶闸管导通,该支路指示灯亮;当门极为低电平时关断,该支路指示灯灭。 如图 2 我们用连接 7 段数码管的方法来连接晶闸管 8255 输出信号与信号灯的连接 : LED 灯的显示原理 :通过同名管脚上 所加电平的高低来控制发光二极管是否点量而显示不同的字形如 SP, g,f,e,d,c,b,a 管角上加上 7FH所以 SP 上为 0伏,不亮其余为 TTL高电平,全亮则显示为 8 采用共阴级连接 : 其中 PA0\PB0a, PA1\PB1b, PA2\PB2c, PA3\PB3d, PA4\PB4e, PA5\PB5f, PA6\PB6g, PA7\PB7 SP接地 基于单片机的交通灯控制器的研究与设计 13 显示数值 dop g f e d c b a 驱动代码( 16 进制) 0 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 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 表 3 驱动代码表 8255 与 8031 的连接 : 用 8031的 P0 口的 连接 8255 的片选信号 cs 我们用 8031的地址采用全译码方式:当 =0 时片选有效, 其他无效, 用于选择 8255端口 A7 A6 A5 A4 A3 A2 A1 A0 1 X X X X X 0 0 00H 为 8255 的 PA口 1 X X X X X 0 1 01H 为 8255的 PB口 1 X X X X X 1 0 02H 为 8255的 PC口 1 X X X X X 1 1 03H 为 8255的控制口 由于 8031是分时对 8255 和储存器进行访问所以 8031 的 P0口不会发生 冲突 程序设计 流程图 如图所示 : 图 8 程序流程图 开始 初始化 等待键盘事件 键盘事件处理 显示程序处理 基于单片机的交通灯控制器的研究与设计 14 图 9 程序流程图 系统内存分配和 I/0 接口使用 1.程序空间( 64k) 地址 使用情况 芯片 00003FFFH 用户程序区 U23RAM 4000DFFFH 用户程序区 E000FFFFH 系统保留 ROM 表 5 基于单片机的交通灯控制器的研究与设计 15 2. I/O 接口使用 用户程序区 8255 的端口地址如下表: 信号线 寄存器 编址 IOY3 A口 0C60H B口 0C61H C口 0C62H 控制寄存器 0C63H 表 6 此 I/O 接口的地址不占 51 外部数据空间地址,所以使用时,需要通过特殊的调用功能程序来操纵这些接口电路,即: 写数据到 I/0 口 子程序调用 为 LCALL 0F4E0H 从某 I/0端口读出数据 为 LCALL 0F4E3H 例如:将累加器 A 的数据 12写入地址 0C63 的 I/O 端口: MOV DPTR , 0C63H MOV A, 12H LCALL 0F4E3H 将地址 0C63 的 I/O 端口状态读出到累加器 A:: MOV DPTR , 0C63H LCALL 0F4E3H 控制器程序源代码 见附录 1。 系统的程序源代码 见附录 2。 6 看门狗硬件电路 由于单片机自身的抗干扰能力比较差,尤其在一些条件比较恶劣、噪声大的场合,常会出现单片机因为受外界干扰而导致死机的现象,造成系统不能正常工作。 设置看门狗是为了防止单片机死机、提高单片机系统抗干扰性的一种重要途径。 一个完整的单片机应用系统应该是一个软、硬件的结合体,在系统正常工作时,会受到各种外界干扰因素的影响。 这种外界干扰轻者导致 系统内部数据出错,重者基于单片机的交通灯控制器的研究与设计 16 将严重影响程序的运行。 因此单片机应用系统的开发一定要考虑系统可靠性的设计,以满足系统在现场苛刻环境下的正常运行,而“看门狗”则是系统可靠性设计的重要一环。 在一个单片机应用系统中,所谓的“看门狗”是指在系统设计中通过软件或硬件方式在一定的周期内监控单片机或其他 CPU的 运行情况。 如果在规定的时间内没有收到来自单片机或其他 CPU 的触发信号,则系统会强制复位,以保证系统在受到干扰时仍能够维持正常的工作状态。 在单片机系统中,看门狗的设计一般采用硬件和软件结合两种方式。 软件看门狗 软件看门 狗是利用单片机片内闲置的定时器 /计数器单元作为看门狗,在单片机程序中适当的插入监控指令,当程序出现异常或进入死循环时,利用软件将程序计数器 PC赋予初始值,强制性的使程序重新开始运行。 使用软件看门狗的具体实现方法如下。 (1)首先在初始化程序中设置好定时器 /计数器的方式控制寄存器 (TMOD) 和 定时时间的初值,并开中断。 (2)根据定时器的定时时间,在主程序中按一定的间隔插入复位定时器的指令,既插入监控指令,两条指令间的时间间隔应该小于定时时间,否则看门狗将发生错误动作。 (3)在定时器的中断服务程序中设置一条无条件转移指令 ,将程序计数器 PC 转移到初始化程序的入口。 软件看门狗的最大特点是无须外加硬件电路,经济性好。 当然,如果片内的定时器 /计数器被占用,就需要寻求其他的设计方式了。 硬件看门狗 专用硬件看门狗是指一些集成化的或集成在单片机内的专用看门狗电路,它实际上是一个特殊的定时器,当定时时间到时,发出溢出脉冲。 从实现角度上看,该方式是一种软件与片外专用电路相结合的技术,硬件电路连接好后,在程序中适当地插入一些看门狗复位的指令,保证程序正常运行时看门狗不溢出。 而当程序运行异常时,看门狗超时发出溢出脉冲,通过单片机 的 RESET 引脚使单片机复位。 这种方式中,看门狗能否可靠有效地工作,与硬件组成及软件的控制策略都有密切的关系。 目前常用的集成看门狗电路很多,如 MAX705~70 MAX813L、 X5043/5045 等。 看门狗电路可以分为内看门狗和外看门狗。 看门狗电路是指看门狗的硬件电路基于单片机的交通灯控制器的研究与设计 17 包含在单片机内部,如 Microchip 的 16C5x 系列, MOTOROLA 的 68C05 系列, 51内核中比较典型的有 Atmel 公司的 AT89C55WD、 AT89S8252, Winbond 公司的 W77E58,SST公司的 SST89C58 以及 Philips 公司 87系列的多种型号的单片机等。 对于没有看门狗定时器的单片机或是认为内部看门狗不可靠时,可以采用外部看门狗定时器。 外部看门狗电路既可以用专用看门狗芯片,也可由普通芯片实现。 这里,以专用芯片 MAX692 作为外部看门狗的电路。 MAX692 是微系统监控电路芯片,具有后备电池切换、掉电判别、看门狗监控等功能。 其封装和引脚说明如图 10所示。 VOUT VBATT VCC RESET GND WDI PFI /PFD 图 10 MAX692 封装和引脚 VOUT:电源输出引脚。 VCC:接电源引脚,电源供电 ~。 GND:接地。 PFI:电池故障输入。 /PFO: 电池故障输出。 WDI:监视器输入引脚。 /RESET:复位输出引脚,低电平有效。 VBATT:后备电池输入端。 MAX692 在本文的单片机系统中的具体使用方法和电路原理图如图 11所示。 MAX692 电路原理图 如图 其中 WDI 是看门狗监测输入脚,接到 CPU 的一个专用 I/O口或一个总线上。 /RESET 是复位信号输出脚,接到 CPU的复位输入脚。 MAX692 的 WDI 定时周期是 ,复位脉冲宽度是 200ms。 如果 WDI 保持高或低超过看门狗定时周期( ), /RESET 端将发生 200ms 的负 脉冲使 CPU复位 MAX692 1 2 3 4 5 6 7 8 基于单片机的交通灯控制器的研究与设计 18 图 11 MAX692 电路原理图 7 结论 本系统就是充分利用了 8031 和 8255 芯片的 I/O 引角, 采用 MCS51系列单片机 Intel8031 和可编程并行 I/O 接口芯片 8255A 为中心器件来设计交通灯控制器,实现了能根据实际车流量通过 8031芯片的 P1 口设置红、绿灯燃亮时间的功能;为了系统稳定可靠采用了 MAX629“ 看门狗 ” 芯片,避免了系统因为死机而停止工作的情况发生;显示时间直接通过 8255 的 PA、 PB输出;交通灯信号通过 PC口输出;交通灯的点亮采用 VT双向晶闸管来控制,直接采用 220V 交流电源驱动, 系统设计简便、 实用性强 、 操作简单 、程序设计简便。 系统不足之处不能控制车的左、右转、以及自动根据车流改变红绿灯时间等。 这是由于本身地理位子以及车流量情况所定,如果有需要可以设计扩充原系统来实现 通过这次毕业设计,使我得到了一次用专业知识、专业技能分析和解决问题全面系统的锻炼。 使我在单片机的基本原理、单片机应用系统开发过程,以及在常用编程设计思路技巧(特别是汇编语言)的掌握方面都能向前迈了一大步,为日后成为合格的应用型人才打下良好的基础。 基于单片机的交通灯控制器的研究与设计 19 致谢 首先感谢我的导师蒋烈辉教授和何红旗讲师,感谢 他们在我整个毕业实习阶段所给予我的关心、帮助和指导。 导师学识渊博、经验丰富、要求严格、使我受益匪浅。 他们科学的思维方法、崇高的敬业精神、严谨的治学态度以及对我各方面的帮助,使我终生难忘。 感谢我的搭档职保平、于洋,感谢你们在学习、生活上给我的帮助和鼓励,我所有的进步都与你们是分不开的。 在与大家的交流与讨论中,我学到了很多东西,对我课题的进展有很大的帮助。 在此向所有曾支持和帮助我的人表示深深的谢意。 基于单片机的交通灯控制器的研究与设计 20 参考文献 [1]胡汉才 .单片机原理及其接口技术 [M]. 北京: 清华大学出版, 1996 [2]付家才 . 单片机控制工程实践技术 [M]. 北京 :化学 工业出版社 , [3]潘新民 .微型计算机控制技术 [M].北京:人民邮电 出版社 , [4]余锡存 曹国华 .单片机原理及接口技术 [M].陕西 :西安电子科技大学出版社 , [5]雷丽文 等 .微机原理与接口技术 [M].北京:电子工业出版社, 基于单片机的交通灯控制器的研究与设计 21 (以下是附加文档,不需要朋友下载后编辑删除,谢谢) 2020 年铁西区政府工作报告 ——2020 年 12 月 28 日在铁西区第十七届人民代表大会第四次会议上 区长 程晓龙 各位代表: 现在,我代表区人民政府向大会报告工作,请予审议,并请区政协各位委员提出意见和建议。 一、 2020 年及 “十二五 ”。基于单片机的交通灯控制器的研究与设计
相关推荐
进电机驱动电路及工作状态显示模块, P0 和 P2 分别接步数显示中对数码管的字段控制及数码管片选, P1 接工作状态控制电路 ,,时钟用内部方式需外接晶体振荡器。 硬件图如图 4 所示。 武汉理工大学《计算机控制技术》课程设计说明书 7 图 4 单片机模块原理图 此设计中接的是 12MHZ 的晶振,故一个机器周期为 1/12us。 根据经验数据,与晶振一起的两个电容设为 15PF。 单片机的
本系统采用 AT89S5x 系列单片机和可编程并行 I/O接口芯片为中心件来设计交通灯控制器,进行交通灯路口的管理。 它用简 单的硬件电路模拟交通灯信号灯的交替变换,实现红绿灯循环点亮。 用 LED 数码管作为倒计时指示,通行指示灯采用发光二极管, LED显示动态扫描,以节省端口,特殊紧急车辆通行采用实时中断完成。 本次设计中车流量较大时可通过控制结果来改变十字路口的各个方向的通车时间
一起使用 ,便可构成石英晶体振 8 荡器。 晶振电路的 应用 : 通用晶体振荡器,用于各种电路中,产生振荡频率。 时钟脉冲 用石英晶体谐振器, 与其它元件配合产生标准脉冲信号,广泛用于数电路中。 微处理器用石英晶体谐振器。 钟表用石英晶体振荡器。 晶振电路的作用:提供系统振荡脉冲 ,稳定频率 ,选择频率。 在本次设计中就是提供了此作用,让电路得到了稳定的工作频率,使抢答器能正常工作而且时间准确
机的三位半数字电压表设计 11 6个中断源 可 编程串行通道 低功耗的闲置和掉电模式 片内振荡器和时钟电路 2)管脚说明 VCC:供电电压。 GND:接地。 P0 口: P0口为一个 8位漏级开路双向 I/O 口,每脚可吸收 8TTL门电流。 当 P1口的管脚第一次写 1 时,被定义为高阻输入。 P0 能够用于外部程序数据存储器,它可以被定义为数据 /地址的第八位。 在 FIASH 编程时,
8 位 I/O口。 共有 21个,用于对片内的个功能的部件进行管理、控制、监视。 实际上是一些控制寄存器和状态寄存器,是一个具有特殊功能的 RAM 区。 由上可见, AT89S52 单片机的硬件结构具有功能部件种类全,功能强等特点。 特别值得一提的是该单片机 CPU中的位处理器,它实际上是一个 完整的 1 位微计算机,这个一位微计算机有自己的 CPU、位寄存器、 I/O口和指令集。
严格线广西工学院 2020届毕业论文 基于单片机的电子万年历 4 性的,会产生较大的测量误差。 方案二: 采用数字式温度传感器 DS18B20,此类传感器为数字式传感器而且仅需要一条数据线进行数据传输,易于与单片机连接,可以避免 A/D 模数转换模块,降低硬件成本,简化系统电路。 另外,数字式温度传感器还具有测量精度高、测量范围广等优点。 因此,本设计 DS18B20 温度传感器作为温度采集模块