- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
简易十字路口交通信号灯控制
项目三
简易十字路口交通信号灯控制
实训目的
1.熟悉C51 语言基本语句的使用。
2. 熟悉C51语言流程控制语句及辅助控制语句的使用。
3. 掌握单片机应用系统C51语言的基本编程方法。
二.实训设备
1. 一台装有Keil u Vision2与Proteus ISIS的计算机。
三.实训原理
十字路口交通信号灯的控制是一个比较复杂的问题,既要保证车辆的安全通行,又要考虑紧急情况处理、放行/禁行时间显示、车流量统计以及根据车流量的大小自动调整放行/禁行时间等。
简易十字路口交通信号灯控制仅考虑以下简单情况:若东西方向为放行线,则南北方向线为禁止线;反之亦然。交通信号灯的变化是固定的,变化规律见表3-3.
表3-3 简易十字路口交通信号灯的变化规律
状态 方向 东西方向 南北方向 ①东西方向放行 绿灯亮xs 红灯亮(x+y)s ②东西方向放行 黄灯亮ys ③南北方向放行 红灯亮(x+y)s 绿灯亮xs ④南北方向放行 黄灯亮ys 当两个方向(东西方向和南北方向)交替地成为放行线和禁止线时,即可实现简易十字路口交通信号灯控制。放行线——绿灯亮放行xs后,黄灯亮警告ys,然后红灯亮禁止(x+y)s;禁止线——红灯亮禁止(x+y)s然后绿灯亮放行xs后,黄灯亮警告ys。
1.硬件电路设计
东西方向和南北方向共需要4组12个信号灯,建议采用Proteus ISIS中的TRAFFIC LIGHTS元件,如图3.23所示。
单片机系统采用Atmel公司的AT89C51芯片,晶振选用12MHz,信号灯的控制使用P1口。P1.0、P1.1、P1.2分别控制东西方向的红、绿、黄信号灯;P1.4、P1.5、P1.6分别控制南北方向的红、绿、黄信号灯。
图3.23 系统硬件电路
2.软件设计
从硬件电路图可以看出,当P1口有关引脚输出高电平1时,则点亮相应的“信号灯”;当P1口有关引脚输出低电平0时,则熄灭相应的“信号灯”。为了实现交通运行状态的控制要求,P1口输出的控制码有4种。见表3-4.
表3-4 不同运行状态时的控制码
南北方向 东北方向 控制码
(P1口输出) 运行
状态 空 黄灯 绿灯 红灯 空 黄灯 绿灯 红灯 P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0 1 0 0 1 1 0 1 0 0x9a ① 1 0 0 1 1 1 0 0 0x9c ② 1 0 1 0 1 0 0 1 0xa9 ③ 1 1 0 0 1 0 0 1 0xc9 ④ 根据交通灯的运行状态,
五.实训总结
我们在第一次的实训基础上,我对C语言编程有了更深的了解。由一开始的什么都不懂到对它的了解,然后到熟练操作。对我来说或许是跨越了对C语言的一个志的飞越!在实训中,通过我对C语言的课前提前预习,提前编写程序,加上我在老师课上的认真听讲,使得我较早的完成了实训内容!但是,在这过程中,我也遇到许多困扰的问题。比如在添加HEX文件时,在C51中添加时找不到生成的HEX文件,主要是在keil u vision中点击生成HEX文件时,没有对它进行检测。在最后看着自己做的实训二上的五种状态的二极管在自己眼前不停的闪烁着,心里一种格外的高兴,后来又做了书本上的后面的附加题,由于对程序的了解,回去之后只要对程序的一些变量改一下就可以了,完成之后,又是一种新的状态展现在我的眼前,自己心里成就感更加强烈。
在之后的学习中,要更努力来完成之后的C语言的学习!
文档评论(0)