【《基于单片机的智能灯光控制系统设计》9700字(论文)】_第1页
【《基于单片机的智能灯光控制系统设计》9700字(论文)】_第2页
【《基于单片机的智能灯光控制系统设计》9700字(论文)】_第3页
【《基于单片机的智能灯光控制系统设计》9700字(论文)】_第4页
【《基于单片机的智能灯光控制系统设计》9700字(论文)】_第5页
已阅读5页,还剩23页未读, 继续免费阅读

下载本文档

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

文档简介

基于单片机的智能灯光控制系统设计摘要基于单片机的智能灯光控制系统可以实现手动和自动两种模式切换,手动模式可控制按键切换灯光,自动模式可根据进出教室人数自动调整灯光亮度。本设计为实现照明设备的节能控制,如LED照明、时钟信号处理和红外感应等技术都在设计中得以应用。使用继电器控制灯光的开关,对设备周围亮度进行检测时则通过光感应来实现,根据红外感应部分对照明设备的亮度进行识别和调整。随着社会的不断发展,人们对生活质量的要求会越来越高,日常生活中,使用照明灯的次数也越来越多,所以照明节能也显得尤为重要。关键词:单片机智能传感器照明控制目录TOC\o"1-3"\h\u121601绪论 644841.1课题研究背景 6294061.2课题研究意义 661501.3课题研究内容 761512系统设计方案 8244412.1硬件方案介绍 8147722.1.1控制芯片的选择 8175352.1.2液晶显示器的选择 856542.1.3时钟控制的选择 9205012.1.4按键控制的选择 9183662.2系统设计总结 966613硬件设计 10145553.1STC89C52单片机的设计 1058973.1.1引脚说明 1064993.1.2电源电路模块 1253343.1.3复位电路模块 12203273.1.4晶振电路模块 13152723.2DS1302电路的设计 13314793.3LCD1602电路的设计 14268883.3.1引脚说明 14128723.3.2模块原理图 1456013.4光线采集电路的设计 15327653.5红外感应电路的设计 15189753.5.1模块工作原理 15155543.5.2模块原理图 16292973.6LED控制电路的设计 16262563.7按键控制电路的设计 17207034软件设计 18274844.1开发环境介绍 18182634.2程序设计 18189464.2.1主函数 18295354.2.2显示程序 20173114.2.3时钟程序 2132085系统调试 22268185.1硬件调试 23172475.2软件调试 2426906结语 283301参考文献 291绪论随着社会的不断发展,智能设备的需求日益增长,现在国内外普遍使用的节能照明设备基本为声控、触摸、感光等,这些设备在节能或照明上存在优势的同时也存在着一定的弊端。1.1课题研究背景经济在发展,社会在进步,教育问题已经成为大家广泛关注的热门话题,被越来越多的提及且受到重视,随着受教育的人数显著增加,学校的规模和教室的数量也在不断增长。为使师生能有舒适的教学环境和学习环境,在教室的面积、设施环境以及其他细节方面,学校也会在力所能及的范围内,对各种设施进行完善。由于学校的管理范围太广,难以覆盖到每一处细节,大家对节能方面并未做到真正的重视和从自我做起,因此,在白天室内光照良好的情况下,高校的教室仍然存在着白天亮灯或是在室内没有人或人数很少的情况下,照明设备也在正常工作。夜晚,高校的自习教室,会出现即使只有少数学生在教室里自习,但室内的照明设备还是会全部工作的情况,并不会因为室内人数较少而减少开灯的数量。传统意义上的照明设备,长时间地开启,对能源方面也造成了极大的浪费,而且由于大家对照明的需求不同,传统的照明就很难满足每个人的个性化需求。智能照明需要照顾到每个人的基本生活和教育要求,而且还应着重关注能源的节约和易利性,以及每个人的不同使用需求。近年来,使用计算机学习工作的人员有所增加,不同专业和岗位所要求的数量和复杂性急剧提高,因此,智能照明在做到一些基本功能的同时,还应该兼顾能源的节约。更加先进,技术更加完善的照明设备应该采用并投入使用,为了满足各行各业的要求,结合自动调节与手动调节的智能化照明系统已经成为不可缺少的设备。1.2课题研究意义(1)节能效果和使用期限节能在智能灯光设备中应该被着重注意。相比起普通公共区域的照明系统,智能控制系统能在更大程度上控制能源浪费。除了具备在白天关灯和夜晚开灯的功能外,还可以根据时间段、人流量调节不同工作模式,将各种影响因素细分,从而能在必要时开启和关闭。不仅如此,智能灯光控制系统还可以根据环境亮度自动调节适宜亮度,提高用眼舒适感。各种学习工作场合都能够通过智能控制找到一个舒适的照明模式,即使缩短了照明设备的工作时间,也保证了照明的日常需求,将能源消耗降低,有效延长了照明设备的使用期。(2)学习氛围和工作环境良好的环境是用于提高效率的一个先决条件,而灯光的选择也决定了环境适宜度,灯光控制系统具有良好的性能以此来提高照明质量。智能灯光控制系统采用两种模式进行控制,即手动和自动,这种照明可以有效地调整学习工作各种场合所需的不同亮度,还可以改善照明环境,进而可以提高工作效率。同时,智能灯光控制系统可以根据周围环境的光照情况调整不同的照明亮度,以适应人们在不同时间段的不同需求。(3)管理模式和亮度调整智能灯光控制系统是一种以自动控制为主控、可选配手动控制的系统。在正常的情况下,设置为自动模式时,智能灯光就会实现自动识别周围亮度和调节自身灯光亮度的功能,管理人员的数量也会因此而大大减少,这种由人为因素而长时间夜间照明的问题也会得以避免。1.3课题研究内容本文研究的主要内容包括:(1)液晶显示屏可以显示当前时间、年月日、时分秒(2)液晶显示屏显示由红外探头感应到的当前在教室里的人数(3)按键可以校准打开系统的时间,以及切换自动和手动模式(4)按键可以根据实际情况设置想要的开灯关灯时间(5)手动模式下,可以通过按键直接控制灯光亮度的强弱,分为三档调节或对灯光进行开关的设置(6)自动模式下,由传感器可以检测到当时室内光线强弱,当室内有人并且在预设的开灯时间范围内则将自动开启灯光进行照明(档位调节为:室内人数小于十人,则灯光亮度为一档,十人到二十人之间,灯光亮度自动调整为二档,超过二十人,灯光亮度调整为三档)2系统设计方案本设计中,STC89C52单片机被用作整个系统的主要控制核心。数据处理主要是根据数据的具体情况,按钮设置等功能,控制照明和时钟的采集,逻辑判断并输出到LED照明控制器上。整个设计的控制系统大体分为两个部分:硬件设计和软件设计。诸如光敏检测电路,LED灯电路,PWM脉冲,DS1302时钟,LCD1602液晶显示器和单片机驱动电路组成了本次设计的硬件部分。而系统的软件设计部分包括系统主程序,时钟程序,LED灯光控制程序和输出程序,这些程序要实现预期功能,需要以编程的方式来实现。系统设计总体框架图如图所示:图2-1总体框架图2.1硬件方案介绍2.1.1控制芯片的选择STC89C52单片机被选择作为本次设计的主要控制芯片。这款芯片是在MSC-51系列单片机中使用最广泛的芯片,所有会用到的程序内容被集成到一个小型的集成电路芯片中。对单片机的功能进行细分,又可分为诸如微处理器、数据存储器、并行I/O口、中断系统和特殊功能寄存器等。这些功能模块又是汇聚连接到片内单一总线上,实现一些预期设定的基本功能,传统结构模式在这款芯片中同样被采纳使用,即为处理器和外围芯片。2.1.2液晶显示器的选择LCD1602被选择作为本次设计的显示屏部分。这是一款点阵式LCD显示器,在这款显示器的显示屏上,可以看见由字母、数字、符号等字符显示组合而成。芯片最后的数字1602表示这款显示器的显示内容为16X2,意思是说可以显示十六个字符为一行,一共显示两行,字符包括数字、英文、符号等。通过控制它内部的控制寄存器和数据寄存器,就可以实现诸如光标移动、光标闪烁和屏幕清除等功能,可以将必要的数据显示在屏幕上。2.1.3时钟控制的选择DS1302被选择作为本次设计的时钟控制芯片。这是一款高性能、低功耗的实时时钟芯片。芯片本身采用双电源供电,这意味着芯片拥有主电源和备用电源两种供电模式,当芯片在主电源供电断开的时候,备用电源可以通过其他方式继续给时钟电路供电,从而保持时钟电路可持续进行计时。2.1.4按键控制的选择独立按键被选择作为本次设计的按键控制,通过I/O口直接构成电路,每个按键都会占用一个I/O口线,并且由于它的单个性,不会影响其他端口线的状态,从而使整个控制按键部分使用起来更加简单方便。2.2系统设计总结本设计是基于STC89C52单片机的智能灯光控制系统,在设计之初就将系统的模式进行划分,不同的模式对应不同的功能。自动模式下,可以提前设置好灯光开启和关闭的时间,在显示屏上显示,光敏电阻会自动检测周围环境的亮度,光照充足的话,则不会亮灯,光线昏暗的时候,通过红外感应可以记录进出教室的人数,并在显示屏上显示当前室内人数,根据人数自动调整照明的亮度,实现亮度随着人数的变化而自动的调整。在选择手动模式后,可以根据按键的不同来调整灯光的开关和亮度。3硬件设计本次设计以单片机STC89C52为主要控制核心,外加多种接口电路。单片机控制芯片、光信号电路、红外电路、时钟信号电路、显示电路、控制电路这些电路组成了系统外加电路。系统硬件总述如图所示:图3-1硬件总述图3.1STC89C52单片机的设计STC89C52是一款易于控制,方便操作的单片机,传统8051单片机的指令代码在此单片机中也同样适用。整个设计的核心就是一个单片机系统,主要的一些诸如数据处理,指令发送等功能都由单片机完成。本设计所使用到的主控系统由电源电路模块,复位电路模块,晶振电路模块所构成,这三者组成了单片机的的最小系统。3.1.1引脚说明图3-2STC89C52引脚图(1)2根主电源引脚表3-1电源引脚(2)2根外接晶振引脚表3-2晶振引脚(3)4根控制引脚表3-3控制引脚(4)32根可编程输入和输出引脚表3-4输入、输出引脚3.1.2电源电路模块图3-3电源电路模块如图3-3所示是电源电路模块,图中的SWITCH是电源开关,POW是电源输入端,给单片机系统提供稳定的直流5V工作电压,本次设计采用USB连接线连接到电脑供电。3.1.3复位电路模块图3-4复位电路模块如图3-4所示是复位电路模块,单片机的初始化操作就是将电路复位,其主要功能相当于一个清零的操作。当程序错误运行时,系统将会处于锁死状态,在此状态下要使得系统重新启动就需要按下复位键来实现这一操作。在复位电路中,RST引脚作为输入端,复位信号要有效,就意味着要处于高电平。复位操作根据方式不同,又可以细分为两种,即上电复位和按键复位,本次设计采用前者,按下电源开关,电路的电容开始充电,系统的复位实现初始化。3.1.4晶振电路模块图3-5晶振电路模块如图3-5所示是晶振电路模块,芯片内部有一个高增益反相放大器,这个放大器是的主要作用是用于构成振荡器。本次设计采用了频率低于12MHz的信号,在晶振两端连接电容,电容又并联接地,更加方便改变频率的大小。3.2DS1302电路的设计图3-6时钟电路如图3-6所示是时钟电路模块,DS1302这款芯片被用作本次设计的时钟芯片。对这块芯片的操作就是对它内部寄存器的操作,在芯片内部的十二个寄存器包括了与日历、时钟相关的七个寄存器,存放数据位的时候是以BCD码的形式来实现。芯片采用双电源供电,可设置备用电源充电方式,保证了在主电源断开的时候,备用电源也可以给时钟电路供电。3.3LCD1602电路的设计3.3.1引脚说明表3-5LCD1602引脚3.3.2模块原理图图3-7显示模块原理图如图3-7所示是显示模块原理图,LCD1602的显示模块上能够在屏幕上同时显示32个字符,包括数字、英文、符号等。控制其中的命令寄存器和数据寄存器就可以实现诸如光标的移动和闪烁、屏幕上的输入和清屏等功能。有两种方法可以控制液晶显示屏,一种是通过连接的电位计进行调整亮度,在芯片内部有一个存储器可以用来存储数据。另一种是直接连接单片机,通过改变单片机内部程序来控制屏幕上显示的内容。3.4光线采集电路的设计图3-8光线采集电路如图3-8所示是光线采集电路原理图,光线采集电路采用LM393直接进行高低电平输出。当周围环境光照较强时,光敏电阻的电阻值变小,此时电平较低,当周围环境光照相比之前变弱时,光敏电阻的电阻值就会变大,此时电平升高,单片机内部接收到此电平的高低变化,通过内部程序判断是否实现照明。3.5红外感应电路的设计3.5.1模块工作原理图3-9红外感应实物如图3-9所示是红外感应实物图,在本设计中需要用到对光适应强的传感器,这块芯片就完全符合要求,它内部的发射管发射红外线,当红外线射出遇到反射面反回被接收管接收时,经过芯片内部信号处理后,指示灯就会亮起,同时在输出端输出低电平信号,在感应器的上面有一个旋钮,可以用来调整范围在三十厘米以内有效距离。3.5.2模块原理图图3-10红外感应原理图如图3-10所示是红外感应原理图,两个红外感应模块分别为教室内和教室外,通过感应由内到外的人数变化,可以通过液晶屏显示当前室内人数,自动模式下,可由光敏电阻判断此时周围的环境明暗,自动调整是否需要开灯以及开灯的亮度档位。3.6LED控制电路的设计图3-11LED控制电路原理图如图3-11所示是LED控制电路原理图,控制电路采用阻值为1K的电阻对电路进行限制,三极管要导通的条件是,单片机给阻值为一千欧姆的电阻R4一个高电平,,这个时候电路中的VCC和GND就导通。10K电阻在这里只是作为上拉电阻,如果不接VCC电流,那么Q1就无法导通。因为Q2是放大电流,当Q2可以正常工作时,通过程序来控制一段时间内通过Q1的高电平次数,就是在控制LED灯的工作。3.7按键控制电路的设计图3-12按键控制电路原理图如图3-12所示是按键控制电路原理图,这个电路的原理就是,当按键按下时输出一个低电平,松开时输出一个高电平。在本次设计中采用了六个按键进行控制。其功能分别是:K1:自动按钮,按下旁边的指示灯就会显示红色,也可移动显示屏上光标;K2:自动模式下对显示屏上设置的时间和日期数字进行叠加;K3:自动模式下对显示屏上设置的时间和日期数字进行减少;K4:手动按钮,按下旁边的指示灯显示黄色,可用来切换手动和自动模式;K5:手动模式下对LED灯的亮度进行档位上调,增加灯光亮度;K6:手动模式下对LED灯的亮度进行档位下调,减弱灯光亮度。4软件设计硬件设计和软件设计的侧重点各不相同,硬件设计主要将整个系统拆分成若干模块,软件设计主要利用编程将各个模块的功能串联起来,实现预期设所要实现的功能。4.1开发环境介绍汇编语言从一开始的广泛使用到逐渐发展成高级语言开发使用,伴随着微控制器的开发技术不断发展与完善,单片机的程序开发软件也在不断更新和换代。Keil软件是当前使用人数最多,最受欢迎的的软件。这款软件是由KeilSoftware生产的开发系统,它为用户提供了诸如汇编或C语言来开发51单片机。该软件提供各种库函数,例如C编译器,宏排序等功能强大的仿真调试器以及集成开发和调试工具,集成开发环境是这些元素的集中组合。外观采取了整个易于使用的Windows表面,即使使用高级语言开发应用程序,由应用程序生成的目标代码也是拥有非常高效的性能,而大多数指令生成的汇编代码也非常紧凑。4.2程序设计4.2.1主函数主函数是由voidmain开始,函数的起始部分就是对一些参数的初始化设置,对一些变量进行重新的赋值定义。完成初始化后,就需要进入主要的执行过程,一般的程序不会是运行一次就结束,而需要单片机进行扫描和执行。主程序的代码不会太多,由很多个模块的代码组成,在执行程序时方便进行调用。主程序流程图如图4-1所示:图4-1主程序流程图4.2.2显示程序如图4-2所示是液晶显示程序流程图,按照使用手册进行编程,由使用手册可知LCD1602共有16个引脚,其中RS、RW的值控制单片机对它的读写:表4-1RS、RW读写指令RSRW操作命令00写入指令寄存器(清清屏等)01读busy(DB7),以及读取位址计数器(DB0—DB6)的值10写入数据寄存器(显示各字符等)11从数据寄存器读取数据为了显示字符,该字符的实际RAM地址需要被传送到LCD1602内,11条控制命令被寄存在芯片内部的控制寄存器中,例如,清除屏幕和移动光标。图4-2LCD1602程序流程图4.2.3时钟程序如图4-3所示是时钟程序的流程图,DS1302具有31个寄存器,该设计主要使用时间寄存器。如果给芯片内部的寄存器一个时间值,则芯片将会基于该值进行添加计算。从芯片读取数据时,会先发送寄存器的地址,从这个地址,先读取低位,在读取高位,一共读取八位地址。因为数据传输首先是低的,然后才是高的。图4-3DS1302程序流程图5系统调试调试此次设计主要包括硬件部分和软件部分。硬件调试主要用于检测这个电路是否正确,有没有出现异常情况,可以使用仿真软件先对原理图进行绘制,根据原理图,正确连接实物。实物做好后,可以使用数字万用表查看电路的结构,对电路的搭建进行检测。软件调试主要是验证程序代码的正确性和可实施性,由Keil5软件创建并进行编写,将程序通过下载器下载到单片机上,如遇到程序不正确或是预期的功能没有实现,则需要对代码进行不断改进并调试。5.1硬件调试首先在设计伊始,我们就要考虑好想要实现哪些功能,在功能设想确定可以实现后,就要挑选适合的元器件来搭建本次设计的仿真图,在本次设计原理图的绘制过程中,经过不断的改进和查阅资料,最终将硬件部分分为几个模块,按键,光线采集,红外感应,时钟,电源开关,显示屏和LED控制。整个系统的原理图如图所示:图5-1原理图在原理图的绘制完成后,将挑选好的元器件按正确的使用方法进行连接,在连接的过程中要注意到:元器件本身是否存在极性之分;如何将元器件进行合理的排版布局;布线过程中是否会出现跨接线;焊接过程中出现的虚焊漏焊应该如何避免。将各个元器件进行合理的排版布线后,由于焊接过程中难以保证不存在虚焊漏焊,故将连接好的实物进行检测很有必要,任何一个细小的焊接错误都会导致预期功能难以实现。可以选择万用表对实物连接进行检测,同时也能检查出焊接点是否存在问题。使用红、黑表笔分别搭在元器件连接的两端,万用表发出声音,则说明电路正常导通,如果万用表未发出声音,则表示表笔搭住的两端已经断开,此时就要自查线路是否正确以及焊接是否存在问题。电路焊接完成后的实物图如5-2所示:图5-2实物图5.2软件调试用于创建和进行编写的软件是KEIL,程序创建编写完成后,需要对程序进行编译以及将程序生成一份.HXE文件,然后通过软件下载器将程序烧写进入微控制器单片机中,如果屏幕上显示异常,需要及时检查实物的连接是否正确,是否存在插错线路等问题,在排除硬件故障的情况下,要对程序进行更正修改,直至将程序修改到电路预期功能可以正常运行为止。电路接入电源后的实物图如图5-3所示:图5-3接入电源后实物图如图5-3所示,显示屏上显示日期和时间,左边COUNT显示当前教室人数。右边右边两个红外感应,上面为教室外,下面为教室内。按照我们所要求的功能,按键可以切换自动与手动模式。如图5-4所示左边红灯表示自动模式,如图5-5所示右边黄灯表示手动模式。图5-4自动模式图5-5手动模式如图5-6和5-7所示,按键可以控制手动自动模式切换,也可以调整屏幕上的时间日期,设置灯的开关时间。按键功能分别为:K1:自动按钮,按下旁边的指示灯就会显示红色,也可移动显示屏上光标;K2:自动模式下对显示屏上设置的时间和日期数字进行叠加;K3:自动模式下对显示屏上设置的时间和日期数字进行减少;K4:手动按钮,按下旁边的指示灯显示黄色,可用来切换手动和自动模式;K5:手动模式下对LED灯的亮度进行档位上调;K6:手动模式下对LED灯的亮度进行档位下调。图5-6手动模式设置关闭时间图5-7自动模式设置开启时间在手动模式下,按键可以调整LED灯的亮度,如图5-8为一档亮度;图5-9为二档亮度;图5-10为三档亮度。图5-81档图5-92档图5-103档在自动模式下,如图5-11所示,遮住光敏电阻模拟光线昏暗的情况下,LED灯自动亮起。如图5-12所示,当松开手,模拟光照充足的情况下,即使人数增加,LED灯也不会亮起。图5-11遮住光敏电阻模拟昏暗环境图5-12放开光敏电阻模拟光照充足在自动模式下,按照预期设想的,屏幕显示人数,根据显示的人数自动调整LED灯的档位。如图5-13表示,在室内人数为十人之内的情况下,灯光亮度为一档;图5-14表示,在室内人数为十人至二十人之间,灯光亮度为二档;图5-15所示,当室内人数在二十人至三十人时,灯光亮度为三档;图5-16表示,当室内人数超过三十人时,灯光总是保持三档亮度。图5-130至10人1档亮度图5-1411至20人2档亮度图5-1521至30人3档亮度图5-16超过30人保持3档亮度结语本次设计研究了基于STC89C52单片机的智能灯光控制系统设计的原理与实现方法,在进行本次设计开始前,需要查阅资料确定初步的研究方向,在有了一个大致方向后,需要将整个系统拆分成两个大的模块,即为硬件设计与软件设计。首先根据查阅的资料,对系统要实现的功能进行列举,选出其中能够实现的功能,对此进行细化要求。在大体框架确定后,就需要用仿真软件先绘制出系统的原理图。结合实际情况和原理图的仿真,进行元器件选择。其次,拿到元件之后要先对整个设计进行布局,找到一种最优的排线方式,根据原理图将实物正确连接起来。将实物正确连接后,需要对硬件电路进行检查,一方面要查各个元器件之间的连接是否正确,另一方面也要检查焊接的点是否存在虚焊漏焊的情况,务必保证硬件电路的准确性。然后就要按照一开始对整个系统的功能设想进行编程,采用Keil编程工具来完成这部分的程序编写与调试。编写程序伊始也要按照所要求的功能对模块进行分类,优化结构,按照各个模块的特点画出程序流程图,根据流程图来进行程序的编写。程序调试时,应该先调试主程序,让主程序预先实现最基本也是最主要的功能,在此基础上,再对各部分模块进行调整和完善,直到整个程序能够完全实现预期设想功能。在完成本设计的过程中,虽然有遇到很多问题,有想法但是无从下手,对很多模块的组成不够清晰,但通过查阅资料和询问老师同学都得到解决。通过这次的设计也让我实际运用到了这四年来所学的专业知识,完成一次系统的设计,不仅是从一开始就要把握大概方向,更重要的是要学会把大方向拆成一个一个小的模块,再往模块里填充细节,这个过程也让我学习颇多。在各种元件的使用和设计上,总是会遇到一些细节的问题,这也无时无刻不在提醒我做任何事都要专心注意细节,有时候就是细节出错才会导致整个程序运行不了,达不到预期效果。经过这次毕业设计的学习,让我了解到自己对于很多基础理论知识掌握不充分,对于一些深入的专业知识不了解,在一步一步完成的过程中,让我收获良多,遇到问题不再依赖于别人,而是学会先自己思考,寻找解决的办法,通过查阅资料,网上寻找解决问题,当我将一个问题解决时,内心由衷地感受到一种喜悦,那是通过自己的努力寻找解决方法后,带来的满足感。这次毕业设计也让我实实在在地将理论知识与实践能力结合起来,通过实践更加巩固了专业知识。参考文献[1]苏铁力,传感器及其接口技术[M],北京:中国石化出版社.1998[2]中国电子学会,传感器与执行器大全[M],北京:电子工业出版社.1998[3]白雪冰,张延林,等,单片机原理及应用[M],哈尔滨:东北林业大学出版社.2006[4]谢运祥,欧阳森等,电力电子单片机控制技术[M],北京:机械工业出版.2007[5]王洪业,传感器技术[M],长沙:湖南科学技术出版社.1995[6]楼然苗,李光飞,51系列单片机设计实例[M],北京:北京航空航天大学出版社.2003[7]胡汗才,单片机原理与接口技术[M],清华大学出版社.2004[8]朱定华,戴淑萍,单片机微机原理与应用[M],清华大学出版社.2003[9]贾朱红,张晓冬.基于I²C总线的单主多从单片机之问的通信[J].微计算机信息,2009,25(3-2):101.[10]徐煜明、韩雁著.单片机原理及接口技术.电子工业出版社.2005[11]王文升.智能照明控制与节能[J].智能建筑与城市信息.2005[12]陈涛,毛信伟.智能照明控制系统的工程应用[J].智能电气,2004[13]高吉祥.模拟电子线路设计[M].北京:北京电子工业出版社,2007.[14]陈尔绍.电子控制电路实例[M].北京:电子工业出版社,2004.[15]王彦朋.大学生电子设计与应用[M].北京:中国电力出版社,2007.[16]王卫兵,高俊山等.可编程序控制器原理与应用[M].北京:机械工业出版社,1998.[17]刘南平.电子产品设计与制作技术[J].科学出版社,2008.[18]HARTLEYNP,MAKSIMOVEG,etal.Eoitaxiallygrownpyroelectricinfraredsensorarrayforhumanbobydetection[J].IntegratedFerroelectrics,1995,6(2):241-251.[19]CAOXizheng.GUOLihong.LiZhuoInfraredradiationmeasurementoftheaerialtargetbasedOntemperatureCalibrationandtargetImages[R].OptelectronicsLetters.2006.[20]KIMRahmelow.Electronicinfluencesonaninfrareddetectorsingle:nonlinerityandamplification[J].ApplOpt.1997.36(2):2123-2132.附录主程序代码分析:voidmain(){bitin_flag=0,out_flag=0;//进出标志bitf1=0,f2=0;LED1=0;Mode=0;//自动模式PWMLED=0;//让灯熄灭Alcd_init();//1602初始化lcd_write_str(0,0,"Count|2000-00-00");Alcd_write_str(0,1,"000|00:00:00");InitialTimer2();//定时器初始化while(1){ keyscan(); if(setn==0)//不在设置模式下 { Run_DS1302();//读取时间,并且显示 if(HW_Outside==0)//外面的传感器 { delay_ms(1); if(HW_Outside==0) { if(f1==0)//每次感应只执行一次 { f1=1; if(out_flag==1)//先判断是不是出来的人,如果是就人数减1 { out_flag=0;in_flag=0;if(CountNum>0)CountNum--;//人数减1 } elsein_flag=1;//如果不是出来的,则是进去的人 } } }elsef1=0; if(HW_Inside==0)//里面的传感器 { delay_ms(1); if(HW_Inside==0) { if(f2==0)//每次感应只执行一次 { f2=1; if(in_flag==1)//先判断是不是进来的人,如果是就人数加1 { in_flag=0; out_flag=0; if(CountNum<999)CountNum++;//人数加1 } els

温馨提示

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

评论

0/150

提交评论