下载后可任意编辑基于单片机的交通灯信号控制器设计(含源程序和电路图)发布时间:2024-5-30 发布人:21 世纪电子网 基于单片机的交通灯信号控制器设计(含源程序和电路图)设计一个基于单片机的交通灯信号控制器。已知东、西、南、北四个方向各有红黄绿色三个灯,在东西方向有两个数码管,在南北方向也有两个数码管。要求交通灯根据表 1进行显示和定时切换,并要求在数码管上分别倒计时显示东西、南北方向各状态的剩余时间。表 1 交通灯的状态切换表南北方向 东西方向 序号 状态 序号 状态 1 绿灯亮 25 秒,红、黄灯灭 1 红灯亮 30 秒,绿、黄灯灭 2 黄灯亮 5 秒,红、绿灯灭 3 红灯亮 30 秒,绿、黄灯灭 2 绿灯亮 25 秒,红、黄灯灭 3 黄灯亮 25 秒,红、绿灯灭 回到状态 1 回到状态 1 3.2.1 模块 1:系统设计(1)任务分析与整体设计思路试题要求实现的功能主要包括计时功能、动态扫描以及状态的切换等几部分。计时功能:要实现计时功能则需要使用定时器来计时,通过设置定时器的初始值来控制溢出中断的时间间隔,再利用一个变量记录定时器溢出的次数,达到定时 1 秒中的功能。当计时每到 1 秒钟后,东西、南北信号灯各状态的暂存剩余时间的变量减 1。当暂存剩余时间的变量减到 0 时,切换到下一个状态,同时将下一个状态的初始的倒计时值装载到计时变量中。开始下一个状态,如此循环重复执行。动态扫描:需要使用 4 个数码管分别显示东西、南北的倒计时数字,将暂存各状态剩余时间的数字从变量中提取出“十位”和“个位”,用动态扫描的方式在数码管中显示。整个程序依据定时器的溢出数来计时,每计时 1S 则相应状态的剩余时间减 1,一直减到 0 时触发下一个状态的开始。 (2)单片机型号及所需外围器件型号,单片机硬件电路原理图下载后可任意编辑图 3-5 交通灯硬件电路原理图选用 MCS51 系列 AT89S51 单片机作为微控制器,选择两个四联的共阴极数码管组成8 位显示模块,由于 AT89S51 单片机驱动能力有限,采纳两片 74HC244 实现总线的驱动,一个 74HC244 完成共阴极数码管位控线的控制和驱动,另一个 74HC244 完成数码管的 7 段码输出,在 7 段码输出口上各串联一个 100 欧姆的电阻对 7 段数码管限流。用 P3 口的 P3.0-P3.5 完成发光二极管的控制,实现交通灯信号的显示,每个发光二极管串联 500 欧姆电阻起限流作用。硬件电路原理图如图 3-5 所示。(...