- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
基于MCS-51单片机的交通灯设计
设计一个基于单片机的交通灯信号控制器。已知东、西、南、北四个方向各有红黄绿色三个灯,在东西方向有
两个数码管,在南北方向也有两个数码管。要求交通灯按照表1进行显示和定时切换,并要求在数码管上分别倒
计时显示东西、南北方向各状态的剩余时间。
表1交通灯的状态切换表
1:系统设计
(1)任务分析与整体设计思路
试题要求实现的功能主要包括计时功能、动态扫描以及状态的切换等几部分。
计时功能:要实现计时功能则需要使用定时器来计时,通过设置定时器的初始值来控制溢出中断的时间间隔,
再利用一个变量记录定时器溢出的次数,达到定时1秒中的功能。当计时每到1秒钟后,东西、南北信号灯各状
态的暂存剩余时间的变量减1。当暂存剩余时间的变量减到0时,切换到下一个状态,同时将下一个状态的初始的
倒计时值装载到计时变量中。开始下一个状态,如此循环重复执行。
动态扫描:需要使用4个数码管分别显示东西、南北的倒计时数字,将暂存各状态剩余时间的数字从变量中提
取出“十位”和“个位”,用动态扫描的方式在数码管中显示。整个程序依据定时器的溢出数来计时,每计时1S
则相应状态的剩余时间减1,一直减到0时触发下一个状态的开始。
(2)单片机型号及所需外围器件型号,单片机硬件电路原理图
图1交通灯硬件电路原理图
选用MCS51系列AT89S51单片机作为微控制器,选择两个四联的共阴极数码管组成8位显示模块,由于
AT89S51单片机驱动能力有限,采用两片74HC244实现总线的驱动,一个74HC244完成共阴极数码管位控线的控
制和驱动,另一个74HC244完成数码管的7段码输出,在7段码输出口上各串联一个100欧姆的电阻对7段数
码管限流。用P3口的P3.0-P3.5完成发光二极管的控制,实现交通灯信号的显示,每个发光二极管串联500欧姆
电阻起限流作用。硬件电路原理图如图1所示。
(3)程序设计思路,单片机资源分配以及程序流程
①单片机资源分配
单片机P3口的P3.0-P3.1引脚用作输出,控制发光二极管的显示。在计时模块中,需要定义两个数组变量
(init_sn[3],init_ew[3])来存储东西、南北两个方向在不同状态中倒计时的初始值,题目中每个方向的交通灯共有
3种显示状态,因此数组元素个数为3。还需要定义两个变量(cnt_sn,cnt_ew)暂存东西、南北两个方向的倒计时
剩余时间。在状态的切换中,为了明确当前处于哪种状态,东西、南北方向各设置一个状态变量(state_val_sn,
state_val_ew),当倒计时的剩余时间到零时,状态变量增1,表示启动下一个状态,当该变量增到3时变为0,回
到序号为1的状态。
②程序设计思路
在设计中,由于没有键盘功能,因此只涉及定时计数和动态扫描功能。主程序将变量初始化之后,设置单片机
定时器和中断特殊功能寄存器的初始值,将定时器T1的工作方式设置为8位自动装载模式,定时器每隔250us产
生一次溢出。在初始化变量与寄存器后,主程序进入一个循环结构,在循环中只做动态扫描的工作,根据东西、南
北两向的剩余时时间进行动态扫描显示。计时以及状态的切换通过定时器的中断服务程序来实现,在中断服务程
序中,每计时到一秒时,则各方向当前状态的剩余时间减1,一直减到0时触发下一个状态的开始,改变交通灯
的指示。
③程序流程
图3-7交通灯主程序流程图图3-8中断服务程序流程图
(4)软硬件调试方案
软件调试方案:
伟福软件中,在“文件\新建文件”中,新建C语言源程序文件,编写相应的程序。在“文件\新建项目”的菜
单中,新建项目并将C语言源程序文件包括在项目文件中。在“项目\编译”菜单中将C源文件编译,检查语法
错误及逻辑错误。在编译成功后,产生以“*.hex”和“*.bin”后缀的目标文件。
硬件调试方案:
在设计平台中,将单片机的P3.0-P3.5分别与独立式键盘的相应位通过插线连接起来。在伟福中将程序文件编
译成目标文件后,运行“MCU下载程序”,选
您可能关注的文档
最近下载
- 化工企业防泄漏管理培训课件.pdf
- 芜湖市2024届英语九年级第一学期期末学业水平测试试题含解析.pdf VIP
- 全国各省石氏辈分收集(66页).docx VIP
- 2024-2025学年 八年级上册物理(2024年新教材)教材课后习题-练习与应用(原动手动脑学物理).docx
- ISO9001质量手册中英文版.pdf
- 权力的48条法则 中文版.pdf
- 七年级第一学期信息技术复习知识点.pdf VIP
- 初中数学教师兼班主任工作总结_..doc VIP
- YY_T 0466.1-2023 医疗器械 用于制造商提供信息的符号 第1部分通用要求.pdf
- 内蒙古农业大学2022-2023学年第1学期《高等数学(上)》期末考试试卷(B卷)附参考答案.pdf
文档评论(0)