单片机控制的交通灯完整系统实验报告.docx

上传人:b****6 文档编号:3232548 上传时间:2022-11-20 格式:DOCX 页数:16 大小:163.19KB
下载 相关 举报
单片机控制的交通灯完整系统实验报告.docx_第1页
第1页 / 共16页
单片机控制的交通灯完整系统实验报告.docx_第2页
第2页 / 共16页
单片机控制的交通灯完整系统实验报告.docx_第3页
第3页 / 共16页
单片机控制的交通灯完整系统实验报告.docx_第4页
第4页 / 共16页
单片机控制的交通灯完整系统实验报告.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

单片机控制的交通灯完整系统实验报告.docx

《单片机控制的交通灯完整系统实验报告.docx》由会员分享,可在线阅读,更多相关《单片机控制的交通灯完整系统实验报告.docx(16页珍藏版)》请在冰豆网上搜索。

单片机控制的交通灯完整系统实验报告.docx

单片机控制的交通灯完整系统实验报告

 

系统实验报告

——基于51单片机的交通灯设计

 

 

专业:

XX

学生姓名:

xxXX

学号:

00000000000

指导教师:

wwwwwwwwwww

 

2000年x月x日

 

附录3元器件清单………………………………………………………………….14

1设计任务和性能指标

1.1设计任务

利用单片机完成交通信号灯控制器的设计,该交通信号灯控制器由一条主干道和一条支干道汇合成十字路口,在每个入口处设置红、绿、黄三色信号灯,红灯亮禁止通行,绿灯亮允许通行,黄灯亮则给行驶中的车辆有时间停在禁行线外。

用红、绿、黄发光二极管作信号灯。

如图上图所示。

设东西向为主干道,南北为支干道。

1.2性能指标

1.状态1:

仅亮灯,数码管不工作。

按下键4,红/黄/绿三色灯交替亮:

红—〉(20秒)黄(闪烁)—〉(5秒)绿—〉(20秒)黄(闪烁)—〉(5秒)红

2.状态2:

灯和数码管相结合,模拟十字路口的交通灯

在以上功能的基础上数码管倒计时显示时间。

2设计方案

2.1任务分析

模拟交通灯控制器就是使用单片机来控制一些LED和数码管,模拟真实交通灯的功能。

红、黄、绿交替闪亮,利用数码管倒计数显示间隔等,用于管理十字路口的车辆及行人交通,计时牌显示路口通行转换剩余时间等

2.2方案设计

根据设计的要求可知,系统的硬件原理框图如下图所示。

系统硬件框图

单片机选用AT89S52,它与8051系列单片机全兼容,但其内部带有4KB的FLASHROM,设计时无需外接程序存储器,为设计和调试带来极大的方便。

南北向和东西向各采用2个数码管计时,同时需要对该方向的指示灯的点亮时间进行倒计时。

键盘系统可以根据系统的需要设置不同的键的个数,可以选择线式键盘或矩阵式键盘,若单片机的IO口不够用时,可以考虑扩展8255或8155满足系统的要求。

2.软件方案

根据设计要求,程序框图如图1所示。

软件可由汇编语言完成,也可由C语言完成。

软件设计可以分为以下几个功能模块:

主程序:

初始化及键盘监控。

计时程序模块:

为定时器的中断服务子程序,完成0.1秒(或其他时间)和1秒的时间定时。

显示程序模块:

完成60个发光二极管(实际上只需驱动30个)和8个LED数码管的显示驱动。

程序流程图见下一页:

 

程序流程图

3系统硬件设计

3.1单片机的最小系统

ATMEL公司生产的AT89S52单片机它是硬件电路的核心部分,时钟电路晶振使用12MHz,复位电路采取按键复位方式。

具体连接图3.1和图3.2。

单片机系统的时钟电路

单片机系统的复位电路

3.2电源电路设计

电源用5V直流变压器直接供电。

3.3数码管显示电路

显示电路采用8个共阳数码管,P1口作为数码管的输入,P0.4、P0.5、P0.6P0.7分别控制东西南北四路数码管的位选端C1,C2,C3,C4。

数码管显示电路(上图是共阴数码管)

3.4信号灯控制电路

应急电路

4系统软件设计

4.1主程序设计

 

系统程序流程图

5调试及性能分析

5.1调试分析

5.1.1软件调试

软件调试主要是利用proteus仿真软件完成电路的搭建,运行以发现设计中的错误及时改正。

5.1.2硬件调试

硬件调试主要是检测硬件电路是否有短路、断路、虚焊等。

具体步骤及测试结果如下:

(1)检查电源与地线是否全部连接上,用万用表对照电路原理图测试各导线是否完全连接,对未连接的进行修复。

(2)参照原理图,检查各个器件之间的连接是否连接正确,是否存在虚焊,经测试,各连接不存在问题。

(3)以上两项检查并修复完后,给该硬件电路上电,电源指示灯点亮。

5.1.3系统功能调试

通过软件仿真显示,系统基本能完成要求。

6心得体会

这次系统实验历时两周的时间,在这实验过程里我们巩固了从编程、焊板到调试的专业知识,逻辑思维和动手能力都得到了很大的提高。

对于交通灯这个题目,由于以前学单片机这个课程时,做过类似相关的实验,觉得这个比较简单而且做出的东西也比较直观,查阅了大量的资料,在老师的讲解帮助下,我们对如何通过单片机控制交通灯这个题目,有了进一步的理解。

要解决的主要问题就是程序的设计了,虽然感觉交通灯程序没什么难的,就是数码管倒计时显示加几个闪烁的二极管就完事,但是也许是起初想的太简单,设计时到了细节处,也出了不少问题,而且很难被检查出来,但是最后经过我们的不断努力,还是写出来正确的代码。

上周终于拿到了PCB板,怀着紧张的心情一个器件一个器件的完成板子的焊接,最后通过串口线把程序下载到板子上,但是板子却没有意料中的效果,而且没一点现象,用万用表检查单片机的电压差不多为零,查出了问题所在松了口气,后来在网上查资料知道原来变压器的接口那三个引脚,两个GND必须短接,要不就不能正常供电,本以为短接后就正常了,但是数码管还是没反应,二极管基本可以正常显示,这时候真是一种煎熬,差了很久找不到原因,后来对照着原理图一个个的检查,最后发现原来是数码管封装错了,板子上的数码管公共极是3、8两个引脚,但是原理图上封装的事1、6,当时也没有注意,以为只要是共阴管就没问题了,没想到软件本身就存在错误。

通过这次系统实验,对以前学过的知识进行了巩固,加深了理解,提高了应用的能力,而且提高了我们的发现、分析、解决问题的能力,同时提高了大家对专业的认识及兴趣,对于我们工科生来说,对以后就业很有帮助。

最后,尤其要感谢xx和xx老师的指导和帮助,我们才得以顺利完成这次系统试验。

参考文献

[1]邹丽新.单片微型机原理及应用苏州大学出版社,2006.12

[2]彭伟.单片机C语言程序设计实训100例.北京:

电子工业出版社,2009。

8

附录1系统原理图

系统原理图

附录2程序清单

;------------------------------------

;程序实现功能

;西南北路口直行与转弯交替通行,数码管显示直行通行倒计时,红绿黄灯显示包括人行道在内的道路交通状态。

;某一方向道路拥挤时,可以人工控制调节东西南北方向通行时间。

;紧急情况时,各路口交通灯显示红灯,数码管保持数据不变。

#include

#defineucharunsignedchar

#defineuintunsignedint

sbitkey1=P1^0;

sbitkey2=P1^1;

sbitkey3=P1^2;

sbitkey4=P1^3;

sbitsmgwe1=P0^4;

sbitsmgwe2=P0^5;

sbitsmgwe3=P0^6;

sbitsmgwe4=P0^7;

sbitsmgdot=P2^7;

sbitsouth_green=P2^0;

sbitsouth_red=P2^1;

sbitsouth_yellow=P2^2;

sbiteast_green=P2^3;

sbiteast_red=P2^4;

sbiteast_yellow=P2^5;

sbitnum_a=P0^0;

sbitnum_b=P0^1;

sbitnum_c=P0^2;

sbitnum_d=P0^3;

ucharcount;

uchartype=1;

ucharnum;

ucharsouth_dispnum=10,east_dispnum=5;

voiddelay_ms(uintz)

{

ucharx,y;

for(x=0;x

for(y=0;y<123;y++);

}

voidtimer0_init()

{

TMOD=0x01;

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

ET0=1;

EA=1;

TR0=1;

}

voiddisplay(ucharsouth_dispnum,uchareast_dispnum)

{

ucharsouth_dispnum1,south_dispnum2;

uchareast_dispnum1,east_dispnum2;

south_dispnum1=south_dispnum/10;

south_dispnum2=south_dispnum%10;

east_dispnum1=east_dispnum/10;

east_dispnum2=east_dispnum%10;

smgwe1=1;

smgwe2=0;

smgwe3=0;

smgwe4=0;

num_d=south_dispnum1/8;

num_c=south_dispnum1%8/4;

num_b=south_dispnum1%4/2;

num_a=south_dispnum1%2;

delay_ms

(1);

smgwe1=0;

smgwe2=1;

smgwe3=0;

smgwe4=0;

num_d=south_dispnum2/8;

num_c=south_dispnum2%8/4;

num_b=south_dispnum2%4/2;

num_a=south_dispnum2%2;

delay_ms

(1);

smgwe1=0;

smgwe2=0;

smgwe3=1;

smgwe4=0;

num_d=east_dispnum1/8;

num_c=east_dispnum1%8/4;

num_b=east_dispnum1%4/2;

num_a=east_dispnum1%2;

delay_ms

(1);

smgwe1=0;

smgwe2=0;

smgwe3=0;

smgwe4=1;

num_d=east_dispnum2/8;

num_c=east_dispnum2%8/4;

num_b=east_dispnum2%4/2;

num_a=east_dispnum2%2;

delay_ms

(1);

}

voidtraffic_light()

{

switch(type)

{

case1:

south_red=1;

south_green=0;

south_yellow=0;

east_red=0;

east_green=1;

east_yellow=0;

display(south_dispnum,east_dispnum);

if(east_dispnum==0)

{

east_dispnum=5;

south_dispnum=5;

type=2;

}

break;

case2:

south_red=1;

south_green=0;

//south_yellow=0;

east_red=0;

east_green=0;

//east_yellow=0;

display(south_dispnum,east_dispnum);

if(east_dispnum==0)

{

south_dispnum=5;

east_dispnum=10;

type=3;

}

break;

case3:

south_re

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1