基于单片机的智能路灯控制器设计毕业设计论文_第1页
基于单片机的智能路灯控制器设计毕业设计论文_第2页
基于单片机的智能路灯控制器设计毕业设计论文_第3页
基于单片机的智能路灯控制器设计毕业设计论文_第4页
基于单片机的智能路灯控制器设计毕业设计论文_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 毕业设计 题目名称:基于单片机的智能路灯控制器设计院系名称:电信学院专业名称: 工业自动化学生姓名: 钱剑华指导老师:李鸿征二一五年五月中图分类:TP273 密级:无UDC: 单位密码:10465基于单片机的智能路灯控制器设计Design of intelligent lighting controller based on MCU院系名称:电信学院学生姓名:钱剑华指导教师:李鸿征中原工学院摘 要随着城市规模的不断扩大,现有的路灯管理的方式方法已远远不能满足城市路灯发展与管理的需要,必须依靠现代化的高科技管理手段。路灯管理工作需要一个以计算机为核心的、自动化的管理手段来替代普通的路灯监控系统

2、。使整个城市照明监测,决策和管理工作建立在计算机信息网络平台之上。因而单片机在路灯系统中的应用应运而生。单片机具有集成度高,处理能力强,可靠性高,系统结构简单,价格低廉的优点,因此在路灯照明工程中被广泛应用。单片机技术中的计时系统是单片机在的一个典型的应用。通过计时系统来对时间进行有效的控制。在路灯设计的定时系统中将得到更好的应用.设计通过MSC-52系列的AT89S52芯片做为核心控制系统,外加另外的光电检测电路,报警和故障显示电路,输出驱动电路,电源电路和定时电路等一起来设计一个智能路灯控制器,去应对外部的环境。而且能起到节约能源的作用,让其可持续发展。关键词: AT89S52 控制器 智

3、能路灯AbstractWith the constant expansion of the city, the existing street lighting management methods cannot meet the needs of urban street development and management, must rely on modern high-tech management method. Lamps need a computer as the core of the management, automated management tools to re

4、place ordinary Street lamp monitoring system. The city lighting monitoring and decision-making and management work on a computer information network platform. Thus the application of single chip microcomputer in street lighting system comes into being.SCM has high integration, processing capability,

5、 high reliability, simple structure, low price advantages, so is widely used in street lighting projects. Of single-chip microcomputer timing system is a single-chip computer in a typical application. Time by timing systems for effective control. Street lights will be better used in the design of ti

6、ming system. Design by MSC-52 AT89S52 chip as the core control system, plus the addition of photoelectric detection circuit, alarm and fault display circuit output driver circuit, power supply circuits and timing circuits together to design an intelligent light controller, to cope with the external

7、environment. And can play a role in energy conservation, its sustainable development.Keywords : AT89S52 controller intelligent lighting目录摘 要IAbstractII目录III第一章 绪 论11.1路灯的发展史11.2设计的缘由11.3设计的目的和意义11.4智能路灯的预期目标21.4本章小结2第二章 系统方案设计及论证32.1总体的设计框图32.2中断系统42.2.1中断的定义42.2.2中断的意义42.2.3中断控制42.2.4中断处理过程52.3系统核心

8、部件单片机的选择62.4光检测元器件的选择62.5时钟芯片显示器的选择62.6定时模块的选择62.7驱动模块的选择72.7本章小结7第三章 硬件的设计73.1 硬件设计原则73.2单片机的最小系统83.2.1时钟电路93.2.2复位电路103.3光信号检测电路设计103.4故障检测报警电路设计113.5定时和显示电路设计123.6按键电路设计133.7电源电路设计143.8看门狗电路的设计153.9电流源驱动电路15图3-9电流源驱动电路163.10模拟路灯设计163.11本章小结16第四章 软件的设计174.1主流程的设计如下所示:174.2中断程序流程图184.3主程序194.4中断程序1

9、94.5 DS1302驱动程序设计194.6 X5045驱动程序设计194.7本章小结19第五章 硬件与软件的调试205.1硬件的调试205.2软件的调试20总 结21致 谢22参考文献23附录I:总体硬件设计电路图24附录:主程序加各个模块的软件设计251主程序设计:252.光检测程序263 DS1302驱动程序设计274 X5045驱动程序设计305 故障显示程序326 中断程序33第一章 绪 论1.1路灯的发展史人类的发展史是一部追求光明的创业史,火的运用是人类文明进步的重要里程碑。远古先民点燃的篝火就是最早的灯火。1843年,中国上海街头出现了第一盏路灯,尽管它是煤油点燃的,可在人们的

10、心目中,比月光还要圣神。黄埔江边摩肩接踵的人群专门前往一睹风采。后来,上海租界的路灯又改为煤气灯。是从伦敦移植过来的,亮度比煤油灯提高了数倍,在夜间行人的眼中,简直就是夜晚的“太阳”。直到1879年,上海十六浦码头终于亮起了中国第一盏电灯,配备的是一台10马力的内燃机发电组,相当于一辆手扶拖拉机的功率。初时的马路电灯在每根电线杆上装闸刀开关,仍需工人每天开启关闭。3年后,改用若干路灯合用一个开关,这种形式的路灯在全国各城市中一直沿用到20世纪50年代。英国:正人类尝试在城市街道上进行人工照明始于15世纪初。1417年,为了让伦敦冬日漆黑的夜晚明亮起来,伦敦市长亨利·巴顿发布命令,要求

11、在室外悬挂灯具照明。后来,他的倡议又得到了法国人的支持。16世纪初的时候,巴黎居民住宅临街的窗户外必须安装照明灯具。路易十四时,巴黎的街道上出现了许多路灯。1667年,被称为"太阳王"的路易十四还正式颁布了城市道路照明法令。传说,正是因为这部法令的颁布,路易十四的统治才被称为法国历史上的"光明时代"。1.2设计的缘由由于路灯的发展史是一部曲折的历史,并且由于以前技术的原因,路灯没有多大的发展,以前的路灯由于消耗电量太多,不能起到节约能源的作用,现在都被一些智能路灯所替代,智能路灯是由单片机控制的,由于单片机目前使用范围很广,所以在智能路灯里面也起到了决定

12、应作用。单片机具有优异的性能价格比,集成度高,体积小,质量轻,可靠性高,控制能力强,低电压,低功耗等优异的特点,所以这样的设计才是最科学的。1.3设计的目的和意义随着社会的发展,电能已经成为了人们所关注的焦点,但是在我国电力资源日益紧张的情况下,由于电能是关系到国家发展,人们生产生活的一个重要问题。电能现在已经成为生活中不可或缺的一种资源。但是对于现在目前由于各大城市的路灯利用率不高的问题,特别是过了12点以后,走路的少了,而路灯一直处于工作,这对能源来说是不小的浪费的。智能路灯意义就在于以下几个方面。1)可以节约用电,减少财政支出2)实现比较人性化的控制,在的限度的发挥路灯的作用3)有益于发

13、现路灯的障碍,方便维修4)提高路灯的质量和使用寿命。5)进行再进一步的研究,可以应用到更加复杂的场合。1.4智能路灯的预期目标所谓的智能路灯,肯定要比一般的路灯要好得多,我所要实现的功能是:1)在白天的时候因为亮度大,清晰,路灯不工作。2)等到夜晚无光的时候,这就要打开路灯了,等到了12点以后,因为马路上的人流量比较小,不能让路灯一直工作,所以我设计是12点以后,关闭一部分路灯。3)等到早上到时间了全部关闭路灯。4)能自动报警显示路灯出现的编号。1.4本章小结本章主要介绍了路灯的发展历史,设计的缘由、预期达到的目的,在理论和研究方面的目的和意。第二章 系统方案设计及论证2.1总体的设计框图总体

14、的设计思路是,单片机是整个系统的核心,起到控制其他模块的作用。光检测模块是当检测模块检测到有光或者无光及比较暗的情况下,系统会自动给出低电平或者是高电平,来指示单片机以及各部件工作从而达到智能控制。显示模块和定时模块是相互作用,通过显示模块显示所需的的时间,定时器达到定时的效果。二者工作时受单片机控制,当达到时间时,单片机系统确定给驱动系统电平来控制路灯的亮与灭。故障报警电路,当显示时间出错,会出现报警。各模块相互作用,共同构成一个控制器。总体设计如图2-1所示电源模块AT89S52单片机定时器模块显示模块光检测模块驱动模块故障报警模块路灯 图2-1总体设计框图Figure 2-1 overa

15、ll design diagram2.2中断系统2.2.1中断的定义在程序执行的过程中,由于外部或内部的原因,必须终止当前执行的程序,而去执行相应的处理程序,等处理结束后,再回来继续执行被终止的程序,这个过程就叫中断。2.2.2中断的意义中断可以解决快速的CPU与慢速的外设之间的矛盾,使CPU和外设同时工作。CPU在启动外设工作后继续执行主程序,同时外设也在工作。每当外设做完一件事就发出中断申请,请求CPU中断它正在执行的程序,转去执行中断服务程序(一般情况是处理输入/输出中断处理完之后,CPU恢复执行主程序,外设也继续工作。这样,CPU可启动多个外设同时工作,大大地提高了CPU的效率。2.2

16、.3中断控制1)中断屏蔽在中断源与CPU之间有一级控制,类似开关,其中第一级为一个总开关,第二级为五个分开关,由IE控制。EA 总控制位ES 串口控制位 ET1 T1中断控制位 EX1 /INT1控制位ET0 T0中断控制位 EX0 /INT0控制位若为“1”,允许(开关接通)若为“0”,不允许(开关断开)例如,SETB EACLR IE.72)中断优先级为什么要有中断优先级?CPU同一时间只能响应一个中断请求。若同时来了两个或两个以上中断请求,就必须有先有后。为此将5个中断源分成高级、低级两个级别,高级优先,由IP控制。以上各位与IE的低五位相对应,为“1”时为高级。初始化编程时,由软件确定

17、。例如,SETB PT0 或SETB IP1 CLR PX0等。同一级中的5个中断源的优先顺序是:外部中断0,定时器T0中断,外部中断1,定时器T1中断,串行口中断。 2.2.4中断处理过程 中断处理过程大致可分为四步:中断请求、中断响应、中断服务、中断返回1)中断请求 中断源发出中断请求信号,相应的中断请求标志位(在中断允许控制寄存器IE中)置“1”。2)中断响应 CPU查询(检测)到某中断标志为“1”,在满足中断响应条件下,响应中断。 中断响应条件: 该中断已经“开中”; CPU此时没有响应同级或更高级的中断; 当前正处于所执行指令的最后一个机器周期; 正在执行的指令不是RETI或者是访向

18、IE、IP的指令,否则必须再另外执行一条指令后才能响应。3)中断响应操作 CPU响应中断后,进行下列操作: 保护断点地址; 撤除该中断源的中断请求标志; 关闭同级中断; 将相应中断的入口地址送入PC;80C51五个中断入口地址:INT0:0003H;T0:000BH;INT1:0013HT1:001BH;串行口:0023H2.3系统核心部件单片机的选择本设计采用的是Atmel公司的AT89S52单片机, AT89S52 单片机是一种低功耗、高性能CMOS 8位微控制器,具有8K 在系统可编程存储器。使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上

19、Flash允许程序存储器在系统可编程,亦适于常规编程器。也可以支持外部扩展,数据指针有两个。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,有5个中断源,和3个定时计数器。使得AT89S52单片机为众多嵌入式控制应用系统提供高灵活、超有效的解决方案,执行程序速度和功耗可以满足一般系统的要求,是实现阶段比较常用的微处理器。2.4光检测元器件的选择由于提供的输入信号相对来说对环境的要求较高,而且要符合系统在现实生活中的实用性等原则,所以使用光敏电阻与电源相连,通过上拉电阻给51单片机输入信号,并进行相应的后续程序操作。2.5时钟芯片显示器的选择液晶显示器,其偏振光能在液晶里旋转;如果

20、加有电场,则扭曲结构失效,光就不能通过 。扭曲向列液晶不但响应慢(0.1秒),而且门限的斜率小,因此限制矩阵选址的行数,多用于单字符显示。液晶显示器件还有液晶光阀和用液晶和薄膜晶体管制做的显示板。液晶显示器件由于其功耗低,平板显示等优点,是未来显示技术的重要发展方向之一。2.6定时模块的选择现在流行的串行时钟电路很多,如DS1302、 DS1307、PCF8485等。其优势是可以单独使用,直接连接到单片机外围,有自己独立的时钟晶振,精度较高。单片机通过串行接口读取和写入当前的时钟值,时钟芯片的运行受单片机死机的影响少。2.7驱动模块的选择采用恒流源驱动芯片,目前市场上成品的恒流源驱动芯片比较多

21、,一般采用使用取样电阻调节输出电流的方式。这些芯片使用方便,性能较好,但价格较贵。2.7本章小结通过这一章的设计,选择了最合适的模块器件,为系统的硬件设计打下了坚实的基础。第三章 硬件的设计3.1 硬件设计原则1、尽可能选择典型电路,为硬件系统的标准化、模块化打下良好的基础。2、系统扩展与外围设备的配置水平应充分满足应用系统的功能要求。3、硬件结构应结合程序设计方案一并考虑。考虑的原则是:软件能实现的功能尽可能由软件实现,以简化硬件结构。4、系统中的相关元器件要尽可能做到性能匹配。5、可靠性及抗干扰设计是硬件设计必不可少的一部分。6、尽量减少外围。系统器件越多,器件之间相互干扰也越强,功耗也增

22、大,也不可避免地降低了系统的稳定性1。因而在选择器件上尽量的简洁。3.2单片机的最小系统单片机最小系统一般是由电源,还有时钟电路,复位电路等组成的。如图3-2所示。简单说明一下单片机的几个引脚:RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器的高电平时间。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必

23、须保证脉冲的高低电平要求的宽度。图3-2单片机最小系统Ficgure3-2 single-chip system3.2.1时钟电路时钟电路是计算机的心脏,它控制着计算机的工作节奏。MCS-52单片机允许的时钟频率是因型号而异的。晶振的选择:6MHz的晶振,其机器周期是2us。12MHz的晶振,其机器周期是1us, 也就是说在执行同一条指令时用6MHz的晶振所用的时间是12MHz晶振的两倍。为了提高整个系统的性能我选择了12MHz的晶振。振荡方式的选择:内部振荡方式,MCS-52内部都有一个反相放大器,XTAL1、XTAL2分别为反相放大器输入和输出端,外接定时反馈元件以后就组成振荡器,产生时钟

24、送至单片机内部的各个部件,这样就构成了内部振荡方式。外部振荡方式是把已有的时钟信号引入单片机内。这种方式适合用来使单片机的时钟与外部信号一致。在我的这个设计中没有也无需与外部时钟信号一致,所以我选择了内部振荡方式,由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自激振荡器并产生振荡时钟脉冲。晶振我选择了12MHz,相对于6MHz的晶振,整个系统的运行速度更快了。电容器C1、C2起稳定振荡频率、快速起振的作用,电容值我选择了30pF。内部振荡方式所得的时钟信号稳定性高。3.2.2复位电路复位电路的基本功能是:系统上电时提供复位信号,直至系统电源稳定后,撤销复位信号。为可靠起见,电源稳

25、定后还要经过一定的延时才撤销复位信号,以防电源开关或电源插头分-合过程中引起的抖动而影响复位。单片机复位电路参数的选定须在振荡稳定后保证复位高电平持续时间大于2个机器周期。3.3光信号检测电路设计由于此设计要达到节约能源,并且是要达到智能控制的目的,所以白天自然光比较强,路面状况清晰,所以需要路灯停止工作。而等到了晚上或者是光线比较暗的情况下,就需要路灯开始工作,所以需要设计一个光检测电路,来达到既智能有节能的目的。设计电路图如图3-3所示图3-3 光信号判断电路图Ficgure3-3 signal light circuit diagram图中D1为光敏电阻器,是检测光敏感强度的器件,光敏电

26、阻器的主要功能是,当没有光照或光线不足时,其阻值较大,达到兆欧级以上,相当于处于短路状态,此时R1电位器中间抽头输出为低电平。而当有光照时,光敏电阻阻值下降,阻值相当小,此时电位器R1的中间抽头输出为高电位。LM393和电位器R2组成一电压比较器,当同相输入端电位高于反相输入端时,LM393输出一高电平,反之,当反相输入端电位高于同相输入端时,LM393输出一低电平,输出信号经过具有施密特功能的反相器74LS14,送到单片机,由单片机进行检测,判断是否有光照。如果有光照则不亮,没有光照,它就会亮。3.4故障检测报警电路设计声光报警器电路的设计是当路灯故障时,LED灯点亮,蜂鸣器响起,达到声光报

27、警的功能,当单片机的P1.0引脚出现高电平的时候,LED灯亮起,三极管导通,蜂鸣器发出声响,达到报警的作用。设计电路图如图3-4所示图3-4蜂鸣器报警电路Figure 3-4 buzzer alarm circuit3.5定时和显示电路设计现在简单介绍一下DS1302芯片的参数,引脚以及功能。芯片如下图3-5-1所示图3-5 DS1302芯片Figure 3-5-1 chip DS1302各引脚的功能为:Vcc1:主电源;Vcc2:备份电源。当 Vcc2>Vcc1+0.2V 时, 由 Vcc2向 DS1302供电,当 Vcc2< Vcc1时,由 Vcc1向 DS1302供电。SCL

28、K:串行时钟,输入,控制数据的输入与输出;I/O:三线接口时的双向数据线;CE:输入信号,在读、写数据期间,必须为高。该引脚有两 个功能:第一,CE 开始控制字访问移位寄存器的控制逻辑;其次CE 提供结束单字节或多字节数据传输的方法。我采用外部时钟芯片和液晶显示屏来显示时间,来达到一个实时的控制。如下图3-5-2所示图3-5-2定时与显示电路Figure 3-5-2 timing and display circuit3.6按键电路设计在单片机系统中,通常有且仅有一键按下才视为按键有效。有效的确认方式通常又可以分为两类。第一类为按下-释放键方式,系统要求从按下倒释放键才算一次有效按键。另一类为

29、连击方式,就是一次按键可以产生多次击键效果,其连击频率可自己设定,如3次/秒、4次/秒等。根据设计的需要,我选择了按下-释放方式,电路如下图3-6所示。电路为低电平有效输出方式,当按键按下时输出为低电平。图3-6开关电路图Figure 3-6 switch circuit diagram在按下-释放键方式时,系统先判断是否有键按下,若不用硬件去抖,则同时进行软件去抖,确认有键按下,然后等待至该按键释放才算依次按键,注意释放键判断同样要进行去抖处理。3.7电源电路设计因为路灯的工作电压是220V,而单片机的工作电压是5V,所以我们要设计一个电源电路,来得到+5V的电压。设计的电路图如3-7所示图

30、3-7 电源电路设计Figure 3-7 power supply circuit design刚开始输入的U1的电压是220V的交流电压,经过变压器的降压,变压器的匝数比是1/22,根据匝数和电压成正比,所以次端电压是10V,在经过桥式整流电路的整流,公式是:U2=0.9U1,所以ZI稳压管两端电压为9V,C7C10为滤波电容,D4、.D5为保护二极管,7805为三端稳压管,再经C9和C7滤波输出直流电压,从7805的1脚输出+5V.。3.8看门狗电路的设计在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成程序的跑飞,而陷入死循环,程序的正常运行被打断,由

31、单片机控制的系统无法继续工作,会造成整个系统的陷入停滞状态,发生不可预料的后果,所以出于对单片机运行状态进行实时监测的考虑,便产生了一种专门用于监测单片机程序运行状态的芯片俗称“看门狗”(Watchdog)。由于X5045将EEPROM、看门狗定时器、电压监控三种功能组合在单个芯片之内,大大简化了硬件设计,提高了系统的可靠性,减少了对印制电路板的空间要求,降低了成本和系统功耗,是一种理想的单片机外围芯片 X5045芯片内包含有一个看门狗定时器,通过软件预置系统的监控时间后,若在预置的时间内看门狗芯片的CS端电平没有发生变化,则X5045将从RESET输出一个高电平信号,使CPU复位。电路图如3

32、-8所示图3-8看门狗电路Figure 3-8 watchdog circuit3.9电流源驱动电路设计利用的是一个电阻还有一个三极管联合驱动的方式达到电流源驱动的目的,如图3-9所示。图3-9电流源驱动电路Figure 3-9 current source circuit3.10模拟路灯设计本设计中用的是15个发光二极管模拟两路路灯控制,通过定时,检测等电路实现路灯的多路实时控制。我们可以通过给它标号。3.11本章小结通过硬件电路的设计,硬件设计包括光检测电路,定时显示模块电路,故障报警及显示电路,电源电路,关门狗电路等的设计,把各种可能的方案进行列举比较,总结其各个方案的优缺点,筛选对本设

33、计最好,最合理的方案。第四章 软件的设计开始4.1主流程的设计如下所示:是是单片机初始化否是否有光?否打开路灯否是否为24:00:00点?是关闭一部分路灯是否为06:00:00?是启动中断关闭所有路灯单片机复位重新工作结束4.2中断程序流程图4.3主程序见附录4.4中断程序中断服务子程序内容要求: 1 在中断服务入口地址设置一条跳转指令,转移到中断服务程序的实际入口处。 2 根据需要保护现场。 3 中断源请求中断服务要求的操作。 恢复现场。与保护现场相对应,注意先进后出、后进先出操作原则。 中断返回,最后一条指令必须是RETI。4.5 DS1302驱动程序设计实时时钟芯片DS1302与单片机的

34、接口定义为:Sbit DS1302_sclk =PI7; /*实时时钟时钟线引脚*/ Sbit DS1302_IO =PI6; /*实时时钟数据线引脚*/Sbit DS1302_RST =PI5; /*实时时钟复位线引脚*/ 其读写驱动程序代码见(附录)4.6 X5045驱动程序设计 看门狗X5045与单片机的接口定义为: sbit x5045_cs = P11; sbit x5045_so = P12; sbit x5045_si = P13; sbit x5045_sck= P1*4; 读写驱动程序见(附录):4.7本章小结通过软件的设计,我明白了单靠硬件的电路是不行的要通过硬件和软件的结

35、合才可以的。第五章 硬件与软件的调试 5.1硬件的调试由于硬件的调试我们只要注意各种芯片还有各种硬件的使用注意事项。值得注意的是数码管的调试。数码管上的数字不能很好的显示出现的是乱码,数码管上的最高位(小数点位)在程序中并没有让它显示,但也莫名其妙的显示了,最后经过反复的调试和检查发现在焊接时dip上的引线和其它的线有接触造成的,改好后问题就解决了。这个改好之后又发现还是有乱码,后来发现是在软件给非压缩BCD码定义缓冲区时多定义了两位而造成的。改过之后程序良好运行,没出现其它的问题了。5.2软件的调试硬件调试好程序编好之后,接下来的工作是软件的调试。在这之前,已经调试好硬件部分,确保无故障后,

36、我用仿真机进行软件的调试。首先,建立用户源程序。通过计算机以及开发系统的编辑软件,把用C语言编辑的源程序存到计算机上。然后在仿真系统Keil上进行源程序的编译,如发现有语法错误则应改至无误为止。1、对子程序进行编译,检查有无错误语法。2、对子程序功能进行调试,在内存单元设置参数数值,通过运行子程序看CPU、RAM有关单元值是否与程序功能所得到的值相同,经过几次设置,并且设置的值要具有一定代表性,看它所反映的程序功能是否正确,来说明子程序是否有问题,对于子程序都有这样一个一个调试。如我们在调试除法子程序与BCD码转换子程序时,不断地给内存单元设置参数值,运行检查结果,检查程序设计上是否有问题;后

37、来发现是因为给内存单元赋初值时没有按照内存单元前后顺序,导致有些存储单元没有得到应该赋的值。总 结自己经过一定时间的努力,我已经离成功不远了。通过在图书馆、互联网上查阅有关资料,还有询问我的毕业指导老师,了解了路灯的起源和发展过程,并且加深了对路灯控制系统的认识;通过这次设计,我还认识到无论做什么,都需要踏实、勤奋、严谨、坚持的工作态度这对我以后的工作产生深远的影响。本系统设计特点:1电路采用液晶显示方式,硬件电路比较简单,制作方便。2采用中断定时的方法,准确度高,相对于延时来说计时更加准确。3数据处理速度快,采用了12MHZ相对传统的6M晶振单片机运行速度明显更快。另外,本设计也存在着缺点,

38、那就是驱动能力不强。不过会改善的。这个设计基本上达到了李老师要求的目的。智能路灯控制系统设计的推广,具有一定的意义。体现的是以人为本,合理利用资源,这一主题的。本设计采用是单片机控制路灯,使用的是小电压的来控制的大电压。硬件和软件相互结合的办法,相辅相成,造就了这个设计。本设计中涉及到很多的知识,并且加入了看门狗监视器,安全可靠。相信以后在这方面会不断完善,使日常生活更加方便,更加智能化致 谢首先最最感谢我的指导老师李鸿征老师,在做毕业设计的撰写过程中,他给予了悉心的指导和耐心教诲,如果我有什么不懂的问题的时候,他都会耐心的给我讲解,他的悉心指导下,我的毕业设计得以顺利完成。我真的很感谢他,他

39、给予了我太多的帮助。在我读书的三年中,焦作大学机电工程学院的老师们对我的学习、生活也给予了很大的帮助。在整个学习阶段中,老师严谨的治学态度和以身作则、勤奋塌实的工作作风使我受益匪浅,在此表示我深深的谢意。同时我还要感谢实验室所有的老师,在毕业设计的进展中,他们给了我很多的关心和帮助,为我们创造一个良好的研究学习环境。其次要感谢我的同学,在我最困难的时刻,在我最无奈的时刻,在我一筹莫展的时刻,是他们伸出的援手,让我重新找到了动力,给了我坚持下去的理由。谢谢他们。我将努力工作,用所学到的知识为社会服务,以出色的工作成绩来回报母校。 参考文献1 肖洪兵. <<跟我学用单片机>>

40、;. 北京:北京航空航天大学出版社,2002.8 2 何立民. <<单片机高级教程>> 第1版北京:北京航空航天大学出版社,2001 3 赵晓安. <<MCS-51单片机原理及应用>>. 天津:天津大学出版社,2001.3 4 何立民<<从Cygnal 80C51F看8位单片机发展之路>><< 单片机与嵌入式系统应用>>,2002年,第5期:P58 5 孙涵芳. <<单片机原理及应用>> 北京航空航天大学出版社1996年6 谭浩强.<<C语言程序设计(第四版)&g

41、t;> 清华大学出版社2010年6月7余锡存,曹国华,<<单片机原理及接口技术陕西>>:西安电了科技人学出版社,2000 .78冯育长等编著,<<单片机系统设计与实例分析>>,西安电子科技大学出版社,2008年9徐正惠,<<单片机原理与应用实训教程>>,北京:科学出版社,2004年10付家才,<<单片机控制工程实践技术>>,北京:化学工业出版社,2004.511求是科技编著,<<单片机典型模块设计实例异航>>,人民邮电出版社,2008年12谭浩强,<<C程序

42、设计(第三版)>>,清华人学出版社,2005年13李伯成,<<基于MSC51单片机的嵌入式系统设计>>,电子工业出版社,2004年14周立功,<<增强型80C51单片机速成与实战>>,北京航空航天大学出版社,2001年附录I:总体硬件设计电路图附录:主程序加各个模块的软件设计1主程序设计:#includereg52.h#define uchar unsigned char#define uint unsigned intSbit led=P10Sbit led=P11sbit Check_1=P17;/检测灯1信息反馈端sbit Ch

43、eck_2=P16;/检测灯2信息反馈端sbit light_1=P35;/红外感应端口1sbit light_2=P36;/红外感应端口2sbit light_3=P37;/红外感应端口3sbit duan=P32;/外部中断停止反馈端、外部中断端sbit beep=P34;/蜂鸣器控制端uint hour,minute,second; /总时间 时、分、秒uchar hour1,minute1; /灯1开灯时间 时、分uchar hour2,minute2; /灯2开灯时间 时、分uchar hour3,minute3; /灯1关灯时间 时、分uchar hour4,minute4; /灯

44、1关灯时间 时、分uchar code table1="灯1" /汉字一个字占两位uchar code table2="灯2"uchar code table3="关1"uchar code table4="关2"uchar code table5="一灯故障"uchar code table6="二灯故障"uchar code table7="没灯故障"sbit led液晶=P13voidmain()if(guang=0P10=11111111P11=1

45、1111111elsewhlie1(1)IfP3=00:00:00P1=10101010P2=10101010Else while(1)IfP3=06:00:00EA=1P1=00000000P2=00000000END2.光检测程序#include <reg52.h>code unsigned char seg=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90; sbit guang=P02;void delay(unsigned char a)while(-a)void main() unsigned char i=0; uns

46、igned char j=0; unsigned char k=0;while(1)if(guang!=0) for(i=0;i<=10;i+) for(j=0;j<50;j+) for(k=0;k<60;k+)P2=segi/10;P0=0x01;delay(40); P2=segi%10;P0=0x02;delay(40); if(i=10) P1=P1;i=0 else if(guang=0) delay(100); if(guang=0) P1=0; 3 DS1302驱动程序设计 实时时钟芯片DS1302与单片机的接口定义为: Sbit DS1302_sclk =PI

47、7; /*实时时钟时钟线引脚*/ Sbit DS1302_IO =PI6; /*实时时钟数据线引脚*/ Sbit DS1302_RST =PI5; /*实时时钟复位线引脚*/ 其读写驱动程序代码如下: /功能:实时时钟写入一字节 Void DS1302WriteByte(unsigned char d) unsigned char i; unsigned char temp; temp = d; for(i=8; i>0; i-) If(temp& 0x01) DS1302_IO = 1; else DS1302_IO = 0; DS1302_SCLK = 1; Temp = t

48、emp >> 1; _nop_(); DS1302_SCLK = 0; /功能:实时时钟读取一字节Unsigned char DS1302ReadByte(void) Unsigned char DS1302ReadByte(void0 Unsigned char i; Unsigned char dat; For(I = 8; i>0; i-) dat = dat >> if(DS1302_IO dat =0x80; DS1302_SCLK = 1; _nop_(); _nop_(); DS1302_SCLK = 0; Return(dat);/功能:忘DS13

49、02写入数据void DS1302WriteData(unsigned char ucAddr, unsigned char ucDa) DS1302_RST = 0; DS1302_SCLK = 0; DS1302_RST = 1; DS1302WriteByte(ucAddr); /*地址,命令*/ DS1302WriteByte(ucDa); /*写1Byte数据*/ DS1302_SCLK = 1; DS1302_RST = 0; /功能:读取DS1302某地址的数据 unsigned char DS1302ReadData(unsigned char ucAddr0 unsigned char ucData; DS1302_RST = 0; DS1302_SCLK = 0; DS1302_RST = 1; DS1302WriteByte(ucAddr

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论