基于51单片机的交通灯控制系统设计说明

上传人:s9****2 文档编号:489355122 上传时间:2023-12-05 格式:DOC 页数:15 大小:1,023KB
返回 下载 相关 举报
基于51单片机的交通灯控制系统设计说明_第1页
第1页 / 共15页
基于51单片机的交通灯控制系统设计说明_第2页
第2页 / 共15页
基于51单片机的交通灯控制系统设计说明_第3页
第3页 / 共15页
基于51单片机的交通灯控制系统设计说明_第4页
第4页 / 共15页
基于51单片机的交通灯控制系统设计说明_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《基于51单片机的交通灯控制系统设计说明》由会员分享,可在线阅读,更多相关《基于51单片机的交通灯控制系统设计说明(15页珍藏版)》请在金锄头文库上搜索。

1、 一、 摘要:随着科技的飞速开展,越来越多的控制功能强大的芯片出现在我们生活中,但8051系列单片机,因为其的廉价几本钱,在我们生活中依然处于十分重要的地位。在实时检测和自动控制的单片机应用系统中,单片机是作为一个核心部件来使用,但是仅单片机方面知识是不够的,还需要根据具体硬件结构,以与针对具体应用对象特点的软件结合,加以完善。交通信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。作为交通控制的重要组成部份单片机。因此,本人选择制作交通灯作为课题加以设计并实现。交通管制应当以人性化、智能化为目的,做出相应的改善。以此为出发点,本系统采用的单片机控制的

2、交通信号灯。系统具有结构简单、可靠性高、本钱低、实时性好、安装维护方便等优点,有广阔的应用前景。关键词:交通灯,51单片机,数码管二、 实习目的和意义1学习51单片机的最小系统与硬件接口设计与应用2熟练掌握电路原理图绘制软件DPX的使用。3熟练单片机的程序设计与调试。4. 自主设计出具有实际意义的能用于生活的电路系统。5. 本次课程设计对以后的毕业设计甚至工作打下了动手自己设计的根底。三、 实习要求1.完成以8051系列单片机为核心处理器的模拟十字路口交通灯控制的硬件设计在altium designer下画出硬件原理图。布线,印制电路板, 并焊接原件搭载硬件电路,做出实物。2.完成交通灯控制系

3、统的软件编程。3.软硬件综合调试,模拟实现对交通灯控制系统的控制。4.撰写实验报告:报告中给出硬件方案、软件流程图、软件关键代码四、 实习容1. 设计题目:基于51单片机交通十字路口信号灯设计2. 实现功能:具有红、绿、黄三种颜色彩灯,并有一个数码管进展倒计时显示倒计时时间为三十秒。还应具有按键控制特殊情况下十字路口不需要红绿灯的显示车流量很少的地段深夜可以不设红绿灯。五、 系统实现1. 电路设计:51单片机介绍:本实验使用的51单片机为STC89C52STC89C52是一个低电压,高性能CMOS8位单片机,片含8kbytes的可反复擦写的只读程序存储器PEROM和128bytes的随机存取数

4、据存储器RAM。STC89C51是一个低功耗高性能单片机,40个引脚,32个外部双向输入/输出I/O端口。单片机外部引脚图如下:管脚说明:VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0口作为原码输入口,当FIASH执行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被部上拉为高,可用作输入,P1口

5、被外部下拉为低电平时,将输出电流,这是由于部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。P2口:P2口为一个部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1时,其管脚被部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器执行存取时,P2口输出地址的高八位。在给出地址“1时,它运用部上拉优势,当对外部八位地址数据存储器执行读写时,P2口输出其特殊功能存放器的容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口

6、管脚是8个带部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1后,它们被部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流ILL这是由于上拉的缘故。P3口也可作为stc89C52的一些特殊功能口,如下所示:P3.0RXD串行输入口P3.1TXD串行输出口P3.2/INT0外部中断0P3.3/INT1外部中断1P3.4T0记时器0外部输入P3.5T1记时器1外部输入P3.6/WR外部数据存储器写选通P3.7/RD外部数据存储器读选通RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址

7、锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要留心的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN

8、信号将不出现。EA/VPP:EA保持低电平时,那么在此期间外部程序存储器0000H-FFFFH,不管能不能有部程序存储器。留心加密方式1时,/EA将部锁定为RESET;当/EA端保持高八段共阳极数码管:顾名思义,八段二位共阳极数码管是由8x2个二极管组成的,全部点亮时可以显示为8.8.,第一个8.的八个数码管的阳极是接在一起的,第二个也是如此,他们的共阳极分别为引脚 8、7。 写程序的时候我们只需要8、7引脚接电源,控制其他八个引脚的信号就可以得到我们想要的数字。2. 元件清单:器件数量STC89C52111.0592MHZ晶振1瓷片电容30pf2八段2位共阳极数码管1自锁/轻触开关1/2电阻

9、1k/10k7/1发光二极管红/绿/黄/3/4/3电解电容10uF23. 电路设计:单片机最小系统应包含 复位电路、外部时钟电路,即单片机能工作的必要条件。设计电路图如下: 数码管最小系统Led彩灯 电源电路4. 软件流程图:软件设计是红灯亮三十秒,绿灯亮27秒,黄灯亮3秒。组成循环如下表:1. 1-27秒 南北绿灯亮,东西方向红灯亮,数码管从30倒数到32. 28-30秒 南北黄灯亮,东西方向红灯亮,数码管从3倒数到13. 31-57秒 南北红灯亮,东西方向绿灯亮,数码管从30倒数到34. 58-60秒 南北黄灯亮,东西方向红灯亮,数码管从3倒数到1程序从1-4往复循环。程序流程图如下:开场

10、程序初始化time=60判断time的值If: 33time=60If: 3time1=30If: 0time1=3If: 30time1=33YYYY南北红灯亮东西黄灯亮Time -1南北红灯亮东西绿灯亮Time -1南北黄灯亮东西红灯亮Time -1南北绿灯亮东西红灯亮time -1If: time=05. 程序调试:调试窗口全速运行调试,观察单片机IO口信号变化,即可模拟观察程序是否正确,哪里出错。编译通过,程序实现功能并把程序下载到单片机中装好,进展调试。实物图:六、 实习总结:经过三个星期的时间,从不会到会,从没思路到想法无限多。终于还是把这个设计给弄出来了。刚开场不知道从何入手,以

11、前都是学一些书本上的知识,还不会灵活应用,而且也没做过什么具体的设计。后来开场动手去做,大量的从网上摄取知识,去图书馆查找资料,复习编程,复习单片机原理。等等。一个小小的电路需要太多的知识,学以致用这个词在这次设计上有了更深刻的体会。通过设计我对原来学过的知识有了更深的理解,原来想着在大学里学不到很多东西,直到做完实习,才知道是自己不会联系实际应用!当设计接近尾声的时候回忆设计的整个流程,才发现有好多东西都需要更深一步的学习。在调试的过程中遇到了很多问题,有时候是硬件上的错误自己却认为是软件的错误,有时候软件错又认为是硬件出错了。总之我觉得学到知识最多的地方不是去查资料的时候,而是在调试过程中

12、学到了很多东西,焊工技术、编程思想、设计电路铺板等等都会影响整个电路的工作情况。而且到最后的时候发现自己设计的电路上面也有很大的缺乏,比方直接用P1口接数码管的阳极,由于单片机IO口输出电流都比拟小,所以导致数码管的亮度不是很亮,所以在共阳极数码管的阳极与IO口相连是应加三极管或者锁存器提供更大的电流。总之这次设计让我学会了很多东西,最主要的是学会了去查询资料,筛选资料,并大大培养了我的动手能力。七、 参考文献1梅丽凤:单片机原理与技术接口第三版,清华大学2谭浩强:C语言程序设计第四版,清华大学3龙脉工作室:单片机C语言入门,人民邮电4素行:模拟电子技术根底简明教程第三版,高等教育4余孟尝:数

13、字电子技术根底简明教程第三版,高等教育交通灯程序:#include #define uchar unsigned char #define uint unsigned int sbit light_R1=P20; sbit light_G1=P21; sbit light_Y1=P22; sbit light_R2=P23; sbit light_G2=P24; sbit light_Y2=P25; sbit D1=P10;/十位段选 sbit D2=P11;/个位段选 /*共阳极数码管编码对应09 0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0

14、x6f */ uchar code tab10= 0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f ; uchar T,shi,ge,s,k,kk; void main(void) uchar time1=60;T=0;k=0;/外部中断0控制变量kk=0; /外部中断1控制变量TMOD=0x01;/开定时器中断TH0=(65536-50000)/256;TL0=(65536-50000)%256;/定时器50ms中断一次EA=1;/开总中断ET0=1;TR0=1;IT0=1;/外部中断0 选择下降沿触发EX0=1; /开外部 中断 0IT1=1;/外部中断1 选择下降沿触发EX1=1;shi=3;ge=0;while(1)if(k=1)/判断K1是否按下D1

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号