单片机综合实验-交通灯.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于80C51单片机的交通灯设计 一、实验内容: 交通信号灯控制方式很多。本实验采用MCS-51系列单片机AT89C51为中心器件来设计交通灯控制器,实现十字路口车辆和行人的有序控制。P3.0和P3.3控制东西方向的行人,P3.1和P3.4控制南北方向的行人。P1口接红、黄、绿和左转灯。P0口接倒计时数码管显示,P2.0—P2.3接数码管片选信号。红绿灯循环点亮,倒计时剩5秒时黄灯闪烁警示,黄灯闪烁完后左转弯灯亮。 二、实验电路及功能说明 1. 首先,南北段绿灯亮、东西段红灯亮,南北段人行道绿灯亮,东西段人行道红灯亮,同时南北段和东西段方向的数码管分别从40s和60s开始倒计时。 2. 35秒后,南北方向的黄灯闪烁5秒钟,此时东西方向仍维持红灯亮,人行道灯不变。 3. 40秒后,南北方向左拐灯亮,东西方向红灯亮,东西和南北人行道全部红灯亮,同时南北段和东西段方向的数码管分别从19秒开始倒计时。 4. 55秒钟后,南北方向的黄灯闪烁5秒,此时东西方向仍维持红灯亮,人行道灯不变。 5. 1分钟后,东西段绿灯亮、南北段红灯亮40s,东西段人行道绿灯亮,南北段人行道红灯亮,同时南北段和东西段方向的数码管分别从60s和40s开始倒计时。 6. 1分35秒后,东西方向的黄灯闪烁5秒钟,此时南北方向仍维持红灯亮,人行道灯不变。 7. 1分40秒后,东西方向左拐灯亮,南北方向红灯亮,东西和南北人行道全部红灯亮,同时南北段和东西段方向的数码管分别从19秒开始倒计时。 8.紧急情况开关按下时,所有红灯亮,直到开关断开。 三、实验程序流程图: 主程序流程图 T0中断流程图 INT0中断流程图 子程序如下: 延时子程序:void Delay(uchar a) void Delay_1(uint z) 显示子函数:void Display(void) T0中断服务程序:void timer0(void)interrupt 1 INT0中断服务程序:void INT0_srv(void) interrupt 0 四、实验结果分析 总电路图: 首先,南北段直行通行(绿灯)、东西段禁止(红灯)40s,南北段人行道通行(绿灯),东西段人行道禁止(红灯),同时南北段和东西段方向的数码管分别从40s和60s开始倒计时,至最后5s时南北段绿灯变成黄灯闪烁;此后南北段左拐(左拐灯亮)通行、东西段禁止(红灯)20s,南北段、东西段人行道都禁止(红灯),同时南北段和东西段方向的数码管都从20s开始倒计时,至最后5s时南北段左拐灯变成黄灯闪烁;再后东西段直行通行(绿灯)、南北段禁止(红灯)40s,东西段人行道通行(绿灯),南北段人行道禁止(红灯),同时东西段和南北段方向的数码管分别从40s和60s开始倒计时,至最后5s时东西段绿灯变成黄灯闪烁;最后东西段左拐(左拐灯亮)通行、南北段禁止(红灯)20s,东西段、南北段人行道都禁止(红灯),同时东西段和南北段方向的数码管都从20s开始倒计时,至最后5s时东西段左拐灯变成黄灯闪烁。 软件延时,设计简单,使用方便,但是无法进行精确计时,无法在实际应用中进行使用,本次设计采用了定时器0进行计时,每50ms产生一个脉冲信号,可以准确的计时并方便8段数码管进行显示。使用中断可以进行多样化设计,强化程序功能与执行效率。在本设计中程序每50ms请求一次中断,实现精确定时与数码管显示刷新。学好、用好定时/计时器和中断是学好单片机的关键。 五、心得体会 经过两个星期的实验,我的设计虽然有一些小毛病,但总体上还是很成功的。两周的时间虽然很短暂,但从中获益匪浅. 毕竟在课堂上学习的内容真真正正能用到实际中还是有很大困难的,要把理论知识付诸实践确实非一件易事。我从最初的设想设计一个什么样的数字电路到绘制电路图,然后打印排版,最后校正设计中的漏洞与不足。整个过程中我翻阅大量资料,上网查阅了很多程序资料,尤其是定时/计时器和中断的使用。再设计过程中遇到困难时和周围同学进行交流与探讨。 但是在编写程序的过程中出现大量问题,最多的还是与定时/计时器和中断有关。需要我们细心解决,所以,经过这次的实验我对定时/计时器和中断的使用有了较好的掌握。但是这只是个简单的实验的而已,在以后还会有更大的困难等着我们,所以在以后的学习中还要多向老师请教。 六、程序清单 ***********************************************************/ #include reg51.h #define uchar unsigned char #define uint unsigned int /*****定义控制位*************************

文档评论(0)

hong333666 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档