基于51单片机的智能声光控开关毕业设计 - 图文
更新时间:2024-04-25 05:33:01 阅读量: 综合文库 文档下载
- 基于单片机的智能声光控灯推荐度:
- 相关推荐
目 录
摘要 ....................................................................................................................................................... I 关键词 ................................................................................................................................................... I Abstract ................................................................................................................................................. I Key words ............................................................................................................................................ II 1 前言 .................................................................................................................................................. 1 1.1 研究背景 ................................................................................................................................... 1 1.2 研究意义 ................................................................................................................................... 1 2 总体设计及方案 .............................................................................................................................. 2 2.1 设计思路及分析 ....................................................................................................................... 2 2.2.1 整体系统结构.................................................................................................................... 3 2.2.2 元器件清单及其参数........................................................................................................ 6 3 硬件系统的设计 .............................................................................................................................. 7 3.1 声光检测输出模块 ................................................................................................................... 7 3.1.1 声音采集信号电路 ............................................................................................................ 7 3.1.2 光信号信息采集电路........................................................................................................ 8 3.2 控制模块 ................................................................................................................................. 10 3.2.1 单片机最小系统电路...................................................................................................... 10 3.2.2 继电器驱动电路.............................................................................................................. 14 3.2.3 按键电路.......................................................................................................................... 15 4 软件设计 ........................................................................................................................................ 15 4.1 软件设计语言 ......................................................................................................................... 15 4.2 软件设计思路 ......................................................................................................................... 16 4.3 Proteus ...................................................................................................................................... 17 5 测试与分析 .................................................................................................................................... 17 5.1 硬件测试 ................................................................................................................................. 17 5.2 软件测试 ................................................................................................................................. 18 5.3 测试结果分析 ......................................................................................................................... 18 6 总结 ................................................................................................................................................ 18
参考文献 ............................................................................................................................................ 19 致谢 .................................................................................................................................................... 20 附录 .................................................................................................................................................... 21
基于单片机的声光控开关设计
摘 要
随着生活水平的提高,人们对于公共设施的要求也大大的提高了,尤其像是路灯这样惠及广大民众的电器,更是需要提高其自动化程度。现今最普遍的自动化控制是通过检测光照强度和声音大小来实施控制的,控制的效果是白天光照强灯熄灭,晚上光照弱灯亮,路人路过有声音出现灯也会亮,由此可以大大节约能源。
本设计主要是由STC89C51为主控芯片,采用驻极体对声音信号的采集以及光敏电阻对光的感应来实现声光控制调节。声控光控两个功能通过单片机控制,使其在白天光照强时,声控不起起作用,光控功能处于关闭状态;在晚上光照弱,声光控制方式同时起作用,此时光控模块提供脉冲使电灯处于点亮状态,然后通过单片机设定定时器,在没有声音信号到来之前,设置灯灭,当有声音信号到来时打开路灯,设置一定时间后关闭路灯。接下来的一段黑暗状态就是只有声控模块提供即时脉冲,期间也有定时器控制电灯点亮状态。使开关在白天时即使有声音也不工作,大大提高本设计的可靠性。
关键词
光控电路;声控电路;单片机
Microcontroller-based sound and light control switch
Abstract
As living standards improve, people's requirements for all types of electrical greatly improved, especially like lights common benefit of the general public such appliances, but also greatly enhance its automation needs, while today's most popular automatic control by controlling light intensity and sound volume to achieve, light intensity lights off during the day, night light weak light, passers-by passing a voice also lights appear, which can greatly save energy.
This design is made STC89C51 as the main chip, electret sound signal acquisition and photoresistor light sensors to achieve the sound and light control adjustment. Sound and light control functions via two single-chip control, so that when the light intensity during the day, the voice can not afford to work, light control function is disabled; weak light in the evening, sound and
I
light control function simultaneously, this time control module provides a pulse so that the lamp is lit, then set the timer by the microcontroller, in the absence of a sound signal arrives, set the lights off, turn on lights when a voice signal is activated, turn off lights after a set period of time. The next period of darkness is only the voice module provides real-time pulse period also have a timer control lamp lit. The switch during the day even if the sound is not working. Greatly submitted to the reliability of the design.
Key words
light control circuit voice circuit microcontroller
II
1 前言 1.1 研究背景
世界能源日益减少,资源总有枯竭的一天,为了保证后代的生活,人们开始从各个方面节约能源。从我们本专业的角度出发,节约能源也是首要任务,如何使用最少的能源完成我们的任务成为了现在最大的问题,也是推动电子行业发展的动力。基于现在节约能源的主题,本次的设计就是与节约能源息息相关的声光控开关,通过声光开关来可控灯亮,最开始的出发点是利用白天黑夜的区别以及有无脚步声来可控。慢慢考虑问题也更加细致,要考虑到光亮的程度对开关判断的影响,考虑声音多大才能引起灯亮,以及噪声对可控灯的干扰。如何避免外加干扰对声光控开关的影响。越来越多更加细致的考虑促成了更加完善的可控照明系统。由此随着科技技术的发展,一些公共场所的照明可控的手段也会越来越多样。除开现有的声控开关以外,还有更多的可控开关,像微波感应开关还有热释远红外开关等等。就目前来说微波感应开关的抗干扰的性能不够好,实用起来不大理想;热释远红外开关的各项性能都还比较理想,但是实用起来还有诸多不便,安装起来会比较麻烦,各部件的价格偏贵,但是还是比较的适合一些特别的管理场所,比如豪华饭店、重点居住小区的居民楼道。如果是一般的办公楼和居民楼安装这些太过耗费安装起来也比较费力,所以没有必要。可以得知现在声光控开关还是具有很高的实用性,价格上也是相对比较亲民的,适用于广大人们群众。将来一段时间里,声光控灯还会是我们国家的主要应用对象。
以前我国大部分地方都采用全夜亮灯的方式进行照明,但普遍存在有两个问题:一是因为深夜行人会比较少,全夜亮灯会造成比较大的浪费。对此有些地方重视到了这些问题,为了节省能源,在晚上的时候关掉了全夜灯,但这样一来的话对于深夜出行的人们往往又会带来极大地不便,安全问题会时有发生;另一方面,关于灯的亮度问题,夜晚的灯过于亮会造成资源浪费也会影响附近的居民休息,很多地方就是这样的路灯,容易影响睡眠,但由于下半夜是用电较少是低谷期,电力系统电压会升高,路灯的亮度反而会比白天还要亮。这样一来既是浪费了资源又会降低了灯的寿命。鉴于以上各种问题,现今使用的大多是声光控灯,通过这样的控制来达到节能的目的。 1.2 研究意义
此次我的设计是利用电器的节能因素来发展可控开关,达到既可便民又可节能这样的一个效果。设计方面要实现的有三个功能:一是白天有声音但是灯也不能亮;二是晚上有声音灯才能亮;三是手动可控灯亮。根据这三个要求就能相应解决白天不亮灯节约能源,晚上亮灯便民的问题了,这三个要求推动了我整个设计的发展,是设计的中心思想。我的设计着重于节约能源,当灯亮条件不满足是定时器没有开着,只有灯亮条件满
1
足了定时器才会,过后又会延时一段时间自动关闭,其他的方面在前面众多学者的研究面前大同小异,而且关于可控灯还有很多没有解决却实实在在存在的问题,关于光的暗度到了多少才会成为亮灯的条件,或者有其他光亮干扰的时候开关如何控制灯亮,以及声音的大小对开关控制灯亮的影响,或者其他干扰声响出现,这个时候如何保证灯亮是落实到了行人的福利上而不是浪费掉了,等等很多干扰方面的问题,在有些研究上已经得到解决但是还有些没有很好地得到解决,本设计中也只是实现了我的设计思想并没有能够好好解决各方面细节问题。虽然还有很多没能解决的问题,但是综合各种现实来说现在的声控灯还是有比较好的优势的,是大众首选的公共场所电器。
声光控开关在现实生活中的应用比较广泛,像在一些公共场所会有较强的实用性跟节能性,关键是有比较好的适应环境的能力,以及较好的控制力,可以方便大众又能节约资源,但是随着科学技术的发展,通过加强研究总会有更好的产品更加合理化的研究来慢慢代替声控开关,由于声控灯在细节方面还是有些不足需要加以改进,促进了这方面研究的发展,这样使得它的有极大的研究价值。相信在未来可控开关的技术会越来越成熟,能够实现的功能也会更加的人性化。 2 总体设计及方案 2.1 设计思路及分析
设计在开始前应考虑到四大问题:其一灯泡的开关控制要由220V电力供电;其二声音控制,当晚上光线不足时,要保证只要有人经过发出声音,灯泡就会点亮;其三灯泡是光控制,那也应考虑到白天有光的时候即使有声音灯也不能亮;其四开关既要能够自动感应控制灯的亮灭也要能够人工控制。
此课题是以声光控开关为研究对象,完成对硬件系统和软件程序的设计,实现通过光照声音检测以及延时两种方式来控制路灯的亮灭功能,属于软硬件相结合。硬件部分的设计,就要考虑到声音和光线的检测输出、针对信号的处理以及信号处理情况完的一个显示情况。针对这几个情况我分成三大板块来设计:声光检测输出板块,控制处理板块,实时显示板块。刚才讲到的三大版块,功能的实现又是由不同的电路版块共同完成。整体的框图如图2.1所示,软件设计部分要考虑的问题:第一要怎么保证整个系统能够在条件满足的情况下控制灯亮,让灯能够在晚上光线弱同时有声音的情况下能够亮灯;第二开关时有自动感应控制模式和手动模式这两种模式的,要分开这两种情况来讨论等亮灭的问题;第三定时器如何设定的问题。
解决了了这几个方面的问题,整个系统框架就出来了,其他的小细节慢慢来处理。
2
声光检测输出电路模块控制电路模块图2.1 工作原理图
实时显示模块 2.2 设计方案
由上面的分析可知,硬件电路部分主要包括以下几个部分:声光检测输出模块、控制模块、实时显示模块;软件部分主要包括模式转换控制、声光条件检测控制、定时器三个程序模块。硬件是通过电压传输感应处理控制灯的亮灭,软件部分是通过编程实现声光检测、延时、模式转换三方面控制灯亮。根据图2.1来分析,声光控开关所要实现的功能是声光信息采集检测,系统分析指示,实时结果显示。从功能上分析此系统功能实现需要几大板块,分别是:声光检测输出模块;控制模块;实时显示模块。其中声光检测模块是包含声音检测、光感检测和电压比较电路的,通过驻极体和光敏电阻来感应最后比较输出电压;控制模块由单片机最小系统(单片机最小系统由复位电路时钟电路、单片机、I/O口组成)、继电器模块、按键模块组成;实时显示模块由指示灯电路组成,是用来实时显示电路板控制情况的。整个系统组成已经十分清晰了可以分析整体系统结构了。
图2.2 整体系统框图
2.2.1 整体系统结构
设计的整体以STC89C51单片机为核心,通过各个模块协作实现开关最终功能,使得开关能方便地用于不需外扩程序存储器的应用场合,具有简化电路、缩小体积、减小损耗和降低成本的优势。
本设计以STC89C51为主控芯片的单片机声控灯,其硬件部分由单片机主控器电路、声音采集电路、光线检测电路、复位电路、时钟电路、按键电路、指示灯电路、继电器驱动电路、电压比较电路组成。
根据上面设计思路的分析,各个模块已经很清晰了。电源模块为各个模块提供电量,声音采集模块和光信息检测模块通过对声光的检测感应将信号传达给电压比较器模块
3
进行比较输出给单片机处理,继电器通过高低电平的输入实现三极管的导通来闭合线圈控制灯亮,最后由单片机处理来显示结果;按键模块则可以控制几种状态:复位,手动自动转换,关闭。
各电路模块联系框图如下:
电源模块按键模块复位模块双电压比较器模块继电器模块指示灯模块光信息采集模块声音采集模块单片机最小系统
图2.3 电路版块联系框图
原理图(a)包括声光检测电路,电压比较电路,按键电路,继电器驱动电路。声光检测电路由驻极体检测声音,得到的声音通过放大滤波后进去LM393比较输出;光感检测电路利用光敏电阻感应光照得输出电压同样进去LM393进行比较输出;继电器驱动线圈,通过接收经过单片机处理的信号实现开关的闭合接通显示路灯。
原理图(原理图为方便观看特分为两个图)如下:
其中原理图(a)包括声音检测电路,光感检测电路,双电压比较电路,继电器电路,按键电路这五个部分。声音检测电路和光感检测电路就是用来检测声光信号的,声光信号经过双电压比较器比较后将模拟信号改变成电信号输出,输出的信号经过单片机处理后传送到继电器电路,通过继电器电路的线圈闭合来实现带通负载电路,负载也就是路灯之类的显示器件,而按键电路则是用来实现电路状态转换的,通过复位、断开、手动、自动这四种模式的转换实现开关的自动性。
4
图2.4 原理图(a)
原理图(b)中包含最小单片机电路,电源电路,指示灯电路这三个部分。最小单片机电路是整个电路里面的处理系统,是整个电路的核心部位,其中又包含了复位电路和时钟电路。输入的电信号经过了单片机的处理会输出一个电平信号,信号通过上图的继电器电路的线圈闭合带动负载电路实现最终的负载控制,电源电路则是整个电路的供电系统,指示灯电路则是关于按键电路状态改变的实时显示电路,状态的改变带动显示灯的亮灭从而确认是哪种状态。总体来说这就是原理图(a)和原理图(b)的一个大概功能和系统执行的的一个过程。整个的运行流程也就清晰可见了。
5
图2.5 原理图(b)
2.2.2 元器件清单及其参数
(1)元器件清单
这是系统的一个大体的模块,接下来要讨论元件采用的问题,根据以上对系统结构的分析粗略的估计本系统需要如下电路元器件:
AT89C51实验板一块,12MHz晶振一个,LM393双电压比较器一个,驻极体一个光敏电阻一个,5V继电器一个,四十脚底座一个八脚底座一个,10uf电解电容一个,30pf瓷片电容一个,104瓷片电容三个,9013三极管9012三极管各一个,10K电阻5个,103精密可调电阻两个,1K电阻2.2K电阻4.7K电阻各一个,200K电阻两个,30K电阻两个,红黄3mmLED灯各一个,7*9万用板一个,2PIN接线端子一个,DC插座一个,案件两个,自锁开关一个,USB电源线一个,导线焊线若干。51单片机的引脚虽然只有四十,但它有很多的扩展功能,适合用于我们的课题。 (2)元器件参数
以下是对部分原件进行详细的参数分析
?光敏电阻的特性参数:
6
①型号:GL5528;②最大电压(V-dc):150;③最大功耗(mW):100;④环境温度(°C):-30--- +70;⑤光谱峰值(nm):540;⑥亮电阻(10Lux)(KΩ):10-20;⑦暗电阻(MΩ):1;⑧100λ10:0.6;⑨响应时间(ms):上升20、下降30。 ?双电压比较器LM393的特性参数:
工作电源电压范围广,不论是单电源、双电源均可工作,单电源:2~36V,双电源:±1~±18V;消耗电流量少,Icc=0.8mA;输入失调电压比较小,VIO=±2mV;共模输入电压范围广,Vic=0~Vcc-1.5V;输出与TTL,DTL,MOS,CMOS 等兼容;输出可以用开路集电极连接“或”门;采用双列直插8 脚塑料封装(DIP8)和微形的双列8 脚塑料封装(SOP8)
LM393双电压比较器有八个引脚[5]。1、2、3引脚是一列,5、6、7引脚是一列,其中2脚和6脚是反相输入,3脚跟5脚是同相输入,1脚和7脚是输出,4脚接地,8脚接电源。
?STC89C51主要功能、性能参数:
①内置标准51内核,机器周期:增强型为6时钟,普通型为12时钟; ②工作频率范围:0~40MHZ,相当于普通8051的0~80MHZ; ③内部存储器(RAM):256B; ④定时器\\计数器:3个16位; ⑤通用异步通信口(UART)1个; ⑥中断源:8个;
⑦有ISP(在系统可编程)\\IAP(在应用可编程),无需专用编程器\\仿真器; ⑧通用I\\O口:32\\36个; ⑨工作电压:3.8~5.5V;
⑩外形封装:40脚PDIP、44脚PLCC和PQFP等。 3 硬件系统的设计 3.1 声光检测输出模块 3.1.1 声音采集信号电路
(1)驻极体话筒
此声音采集模块使用的声音传感器是驻极体话筒,驻极体话筒一般由驻极体与结型场效应晶体三极管组合而成。驻极体一般是由比较特殊的的分子材料组成,这些个分子材料的表面驻有一些永久电荷,可以根据外部声音的改变来影响电荷。驻极体一般是有空隙、背极、振膜三部分来组成的。由于在振膜与背极之间有一定电量的电荷[7],定量的电荷结构会形成电容。而驻极体的金属板极与膜片之间的电容量很小大概只有几十
7
PF,这样会使得驻极体有很高的输出阻抗差不多几十兆欧左右。过高的阻抗使得驻极体不能就这样直接与放大器匹配,直接匹配会损坏仪器的,这就需要变换他的高阻抗,一般会选择在驻极体后面匹配一个结型场效应晶体三极管。接入的场效应三极管拥有噪声系数低、输入阻抗高的特点。三极管一般有漏极(D)、源极(S)、栅极(G)三个极。 本设计采用的驻极体话筒所占面积小结、电声性能也比较好,结构简单,有比较好的实用性,这都是经过了慎重的选择才会有的结果。
(2)声音检测模块功能
图3.1 声信号采集电路
MK1为驻极体,当没有收集到声音时,会输出低电压信号,若收集到声音,将会输出一个电压值,该电压值会先经过三极管放大,其阻值还可以被调节,使其放大倍数发生一定的改变,达到调节声音灵敏度的目的。图中几个电阻分别是起到分压、滤波和灵敏调节的作用。整个声音采集电路结构简单比较容易理解。 3.1.2 光信号信息采集电路
(1)光敏电阻的工作原理和结构
有光照射到光敏电阻上,当光线照射足够强烈并且光电导体为本正半导体时,光敏电阻上的电子从价带上激发到导带上,那么价带上的空穴以及导带上的电子便会增加,整个光敏电阻的电导率就会增加,电导率的增加也会促进能级跃迁的实现。为实现能级的跃迁,入射光的能量必须大于光导体材料的禁带宽度Eg,式中ν和λ分别为入射光的频率和波长。
h?c1.24hv???E( (1.1) geV)?? 8
从公式上来看,入射光的能量必须要大于禁带宽度才能实现能级间的跃迁,这就要求入射光的波长要小,入射光的频率要大。满足这两个条件就能使能量大于禁带宽度电子也就能够在能级间迁跃,从而使光电导体电导率增加。光敏电阻的管芯是一块安装在绝缘衬底上带有接触电极的光电导体。光敏电阻为了较好的吸收光照减少扩散现象一般都会做成薄层[11]。光敏电阻的表面薄层吸收光照,改变了光敏电阻的阻值。虽然光敏电阻也会有扩散现象但是由于数量有限不用去考虑过多。光敏电阻为了有较高的灵敏度一般都会做成如下图所示的琉状图案,结构见图3.2。
图3.2 光敏电阻结构图
(2)光信号采集电路
图3.3 光信号判断电路
图中R6为光敏电阻器,它的主用功能是进行光检测,当感应到光照不足或没有光照的时候阻值很大处于断路状态,此时电阻R6和R7中间将会输出低电平。而感应到比较强的光照时电阻阻值下降,阻值变小电路处于连通状态,此时电位器R6与R7的中间输出为高电位。3.1.3 电压比较器电路
(1)双电压比较器LM393
LM393类似于增益不可调的运算放大器。本次采用的LM393因为有两个比较器被称为双电压比较器,两个比较器有四个输入端,每个比较器有两个输入端,一个输入端为反相输入端,另一端被称为同相输入端,当同相输入端的电压高于反相输入端时这时
9
比较后会输出端会输出高电平信号;当同相输入端的电压小于反相输入端时输出端便会输出一个低电平信号。LM393对于弱信号的检测会显示的比较灵敏,当输入端的差值达到了10毫伏以上之后便能够实现信号从模拟信号到电信号的状态转换了。它的最主要功能也就是进行模拟状态到电信号状态的转换,通过它输出我们想要的信号交给单片机处理。同时LM393是相当于一个不接集电极电阻的三极管,由于没有电极电阻,为了保护它会增加一个负载即我们所说的上拉电阻,把它放在双电压比较器输出端到电源之间,上拉电阻我们一般选用3-15K。选用的阻值也是有一定的要求的,如果输出三极管截止那么此时他的集电极电压是相当于上拉电阻的电,为了减少上拉电阻对输出端点位的影响所以阻值一般选择3-15K。 比较器所有没有用的引脚必须接地, LM393的输出晶体管是NPN型的,它的集电极是接上拉电阻的,发射极是接地的。
图3.4 电压比较模块电路图
(2)电压比较器模块工作原理
本设计是利用光敏电阻阻值上的变化与其他电阻进行共同分压,得到的电压值通过LM393来进行电压比较,通过10k可调电阻可以实现对光线进行限值的调节。感应光线的强弱来实现电路的通断,经过比较器后将调整过的信号给单片机处理。相应的声音信号也是这样感应再通过双电压比较器来比较的。其中感应声音的电压送到2脚,109灵敏调节电阻的电压送3脚,2脚和3脚的电压进行比较,最后从1脚输出经过调节的声音信号;光敏电阻的电压送到5脚,109灵敏调节电阻的电压送到6脚,5脚6和脚的电压进行比较,最后从7脚输出经过调节的光感信号。如图所示,图中两个电阻时起上拉电阻的作用。 3.2 控制模块
3.2.1 单片机最小系统电路
(1)STC89C51单片机内部功能
STC89C51为此设计中主要的中央处理系统,它是在集成电路芯片上集成了各类元件的微型计算器,这些元件包括中央处理CPU、RAM、ROM、定时/计数器、中断系统、
10
时钟部件和I/O接口电路。各元件基于一身使得单片机不仅多功能化还具有体积较小、可靠性高、应用方便、价格较低、便于开发等特点,在各类器件中引入单片机,编程使器件智能化,可以提高器件的自动化程度和精准度,增强计算机的运算速度,简化方便器件的硬件结构,多种优点使得单片机应用广泛。
STC89C51是一种高性能、低功耗的CMOS8位微控制器,具有8K可编程存储器。使用高密度高精准度存储技术制造,单片机上Flash程序存储器在系统可编程,同样也适用于常规编程[3]。在单片机上,拥有灵敏的8位CPU和在线系统可编程Flash,使得STC89C51能够为众多嵌入式控制应用系统提供灵活、有效的解决方案。STC89C51具有以下标准功能:32位I/O口线,8K字节Flash,定时器,256字节RAM,32位I/O口线,2个数据指针,全双工串行口,一个6向量2级中断结构,三个16位定时器/计数器,片内晶振及时钟电路[1]。
(2)STC89C51单片机引脚功能
P0口:P0口是一个8位漏极开路的双向I/O口。
P1口:P1口是一个具有内部上拉电阻的8位双向I/O 口,P1输出缓冲器能驱动4个TTL逻辑电平[2]。
P2口:P2口是一个具有内部上拉电阻的8位双向I/O口,P2 输出缓冲器能驱动4个TTL逻辑电平。
P3口:P3口是一个具有内部上拉电阻的8位双向I/O口,p2输出缓冲器能驱动4个TTL逻辑电平。
RST——复位输入。当振荡器工作时,RST引脚出现两个周期以上高电平单片机将复位。
ALE/PROG——当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的[9]。该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效[6]。
PSEN——程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当STC89C51由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。 EA/VPP——外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。 VCC:供电电压。
11
GND:接地。
(3)最小系统组成与功能
STC89C51单片机的时钟信号通常有两种方式产生:一是内部时钟方式,二是外部时钟方式。在STC89C51单片机内部有一振荡电路,只要在单片机的XTAL1和XTAL2引脚外接石英晶体(简称晶振),就构成了自激振荡器并在单片机内部产生时钟脉冲信号。电容的作用是稳定频率和快速起振,电容值在5-30pF,典型值为30pF。晶振CYS的振荡频率范围在1.2-12MHz间选择,典型值为12MHz和11.0592MHz。当在STC89C51单片机的RST引脚引入高电平并保持2个机器周期时,单片机内部就执行复位操作,按键手动复位有电平方式和脉冲方式两种。其中电平复位是通过RST端经过电阻与电源VCC接通而实现的。
图3.5 单片机最小系统
单片机模块包括单片机及其所需的必要的电源、时钟、复位等部件,能使单片机始终处于正常的运行状态。电源、时钟、复位等电路是单片机能运行的必备条件,可以将单片机最小系统作为系统的核心部件。STC89C51是片内有ROM/EPROM的单片机,因此,这样构成的最小系统既简单又可靠。最小系统模块只需将单片机接上时钟电路和复位电路即可,由于集成度的限制,最小系统模块只能用作一些小型的控制单元。
12
复位电路51单片机时钟电路I/O口 图3.6 单片机最小系统模块原理框图
①复位电路
当在STC89C51单片机的RST引脚引入高电平并保持2个周期时,单片机内部就执行复位操作。复位电路通常采用上电自动复位和按钮复位两种方式。一般上电自动复位电路是通过电容的充放电来实现自动充放电,当电容上升时间不超过1ms,此时便能实现自动上电复位就。另外一个复位模式就是手动复位模式,本设计就是用的按键手动复位。按键手动复位又分为电平方式和脉冲方式两种。本设计就是电平复位模式,通过电容端充放电接通RST(9)端与电源Vcc来实现的。时钟频率用11.0592MHZ时C取10uF,R取10kΩ,本设计的时钟频率是12MHZ。脉冲复位方式则是通过脉冲变化来实现的,本设计没有使用。最小单片机系统中的复位电路则是通过在电源和底线之间连接一个电容、一个按键和一个负载电阻,中间在连出一个支线到单片机的RST接口,通过电容的充放电和按键的按钮来实现整个电路的复位。
②时钟电路
STC89C51单片机的时钟信号通常有两种方式产生:一是内部时钟方式,二是外部时钟方式。内部时钟电路如图所示。
图3.7 STC89C51内部时钟电路
在STC89C51单片机内部有一振荡电路,只要在单片机的XTAL1(18)和XTAL2(19)引脚外接石英晶体(简称晶振),就构成了自激振荡器并在单片机内部产生时钟脉冲信号,通过自己产生脉冲信号两个电容加快起振稳定频率,来产生需要的时钟脉冲信号。C2和C3电容的作用是稳定频率和快速起振,电容值在5~30pF,典型值为30pF。晶振CYS的振荡频率范围在1.2~12MHz间选择,典型值为12MHz和6MHz。
13
③最小系统的中断技术概述
中断技术用于实时监测与调控,通过主程序的中断请求源提出的服务请求来快速响应处理发生的问题。当主程序的中断请求源发出中断请求之后,如果中断请求被允许,单片机将会暂时中止当前正在执行的主程序响应请求,转到中断服务处理程序这里来处理服务请求。中断服务处理程序处理完服务请求后,再返回到原来被中止的程序断电处,继续执行被中断的主程序。
单片机有了中断系统,就不会浪费大量的时间去查询是否有服务请求发生了,而是会去主动处理问题,这便能除去多余的等待现象,大大地提高了单片机的工作效率和实时性。
3.2.2 继电器驱动电路
继电器是一种电子控制器件。继电器是一种当输入端的量(电、磁、声、光、热)达到一定值时,输出量将发生跳跃式转化的这样一种自动控制器件,具有控制系统和被控制系统之的连带依靠关系。
图3.9 继电器驱动电路图
继电器通常应用于自动控制电路中,它实际上是反向思路运行的,用小的电流去控制大的电流的自动开关,而不是一般的大电流控制小电流。而本设计中使用的便是电磁继电器。电磁继电器一般由衔铁、铁芯、触点簧片、线圈等原件组成的。只要在线圈两端加上一定的电压,单片机又给三极管一定的电平信号,连通了三极管加上又有电压,整个电路形成回路,电流流经线圈通过三极管集电极发射极到达地线,线圈中就会产生一定的电流,从而出现电磁效应,线圈有了电磁吸引衔铁,衔铁就会在电磁力吸引的作用下克服弹簧的惯性拉力吸向铁芯,带动衔铁的动触点与静触点进行闭合。若是线圈断电,电磁对衔铁的吸力也随之消失,衔铁就会在弹簧的惯性作用力下回到原来的位置,使动触点与原来的静触点打开。当输入端为高电平时对应的输出口输出低电平,继电器
14
线圈通电,继电器触点闭合;当输入端为低电平时,继电器线圈断电,继电器触点断开。通过闭合及打开,达到了在电路中的连通和断开的目的。继电器驱动接口电路如图3.9所示,我所使用的继电器是由相应的PNP型号三极管来驱动,当继电器闭合后便能驱动负载,点亮控制的灯。 3.2.3 按键电路
按键电路主要是为了实现对整个控制模块的开关模式转换,他可以转换为四种模式:复位模式、手动控制模式、自动感应控制模式、关闭模式。其中的一个按键是负责控制自动和手动模式的转换的,另外一个按键则是负责复位和关闭模式的,将四种模式分装到两个按键上避免了一个按键不便利的问题,还可以避免四种模式难以控制发生混乱的问题。有了这几种模式的控制可以使得灯既能自动感应又能在特殊情况下人为的控制,便利了大众。
图3.10 按键电路
3.3 实时显示模块 3.3.1 指示灯电路
指示灯电路只要是完成实时显示,按键模式的转换显示就要靠指示灯来显示,同样继电器线圈闭合的显示也是要靠指示灯的显示。 4 软件设计 4.1 软件设计语言
本设计是采用C语言程序进行设计的,首先我们应该先对整个程序进行进行分析和整理,对整个设计划分模块,逐个模块实现其功能,最终把各个子模块合理的连接起来,构成总的程序。此次软件设计根据所要实现的功能,以系统的硬件设计为基础,采用模块化的程序设计思想,确保完成系统功能的同时,实现系统的可靠运行。软件设计的目的就是让单片机加载程序并运行,对距离、时间、光照强度进行测量,根据测量结果控制继电器的输出[8]。
C语言具备汇编语言的功能。它功能丰富的库函数、运算速度快、编译效率高、有
15
良好的可移植性,而且可以直接实现对系统硬件的控制。C语言是一种结构化程序设计语言,它支持当前程序设计中广泛用的有顶向下结构化程序设计技术[10]。此外,C语言程序具有完善的模块程序结构,从而为软件开发中采用模块化程序设计方法提供了有力的保障。因此使用C语言进行程序的设计已经为软件开发的一个主流。综上所述,用C语言进行单片机程序设计是单片机开发和应用的必然趋势。程序图见附录B。 4.2 软件设计思路
本设计主要是实现三个方面的功能:第一,白天光照强有声音的时候保证灯不亮,第二,晚上没有光的有声音的时候灯亮;第三,手动模式开启要保证按键功能能够实现灯亮30s后灯灭。这是设计最重要的三点。有了设计的思路整个设计就分为了这样几大模块:第一个是按键模式切换(即自动模式和手动模式的切换);第二个是自动模式、手动模式工作;第三个是定时器模块。
开始系统初始化创建定时器按键扫描自动模式是是否声光满足条件是灯亮手动模式是是否灯亮键按下是灯亮开启定时器30s后灯灭,定时器关闭开启定时器30s后灯灭,定时器关闭结束 图4.1 系统框图
通过这三个模块我们可以大概的弄出一个系统模式来,首先是要对模式切换的定义,要定义模式切换后输出显示灯和控制显示灯的亮灭问题;关于自动模式显示模块要解决关于光感和声音协调控制的问题,即白天即使有声音灯也不能自动亮灯,而晚上有声音要保证等能自动亮;定时器模块即是关于灯亮后延长保持的实间,这样可以最大程
16
度的减少能源的浪费和软件开销。
主要模块已经分析好,其他的通过定义很快便能够得到一个整体的系统框图见图4.1:
有了上述的流程图,可以根据其设计的结构来进行C语言设计了,其具备汇编语言的功能。C语言有功能丰富的库函数、运算速度快、编译效率高、有良好的可移植性,而且可以直接实现对系统硬件的控制。C语言是一种结构化程序设计语言,它支持当前程序设计中广泛用的有顶向下结构化程序设计技术。此外,C语言程序具有完善的模块程序结构,从而为软件开发中采用模块化程序设计方法提供了有力的保障。因此使用C语言进行程序的设计已经为软件开发的一个主流。综上所述,用C语言进行单片机程序设计是单片机开发和应用的必然趋势。程序图见附录D。 4.3 Proteus
PROTEUS软件是英国Labcenter electronics公司研发的EDA工具软件。它是一个集模拟电路、数字电路、模/数混合电路以及多种微控制器系统为一体的系统设计和仿真平台。是目前同类软件中最先进、最完整的电子类仿真平台之一。它真正实现了在计算机上完成从原理图、电路分析与仿真、单片机代码调试与仿真、系统测试与功能验证到PCB板生成的完整的电子产品研发过程。Proteus是目前最好的模拟单片机外围器件的工具,可以仿真51 系列、AVR,PIC 等常用的MCU 及其外围电路(如LCD,RAM,ROM,键盘,马达,LED,AD/DA,部分SPI 器件,部分IIC 器件),Proteus与其他的仿真软件相比较,在下面的优点: 能仿真模拟电路、数字电路、数模混合电路;能绘制原理图和PCB图;几乎包括实际中所有使用的仪器;其最大的亮点在于能够对单片机进行实物级的仿真。 5 测试与分析 5.1 硬件测试
整个电路板焊接起来不算是太难,焊接图上看的也是比较的清晰,但是焊接过程中还是遇到了一些问题。
1.像光敏电阻的焊接就是有些问题的,总是接触不良,进行测试的时候经常会难以感应光的强弱,无论怎么调节,系统实时显示的红灯都是亮着的,闭合右下角的开关黄灯亮,红灯一秒之后自动会亮。最后就只能检查光敏电阻那里是否有虚焊,才解决了这个问题。
2.整个电路中,不注意的时候会有些虚焊的问题,像上面的光敏电阻就是虚焊了导致接触不良,总会有些没有焊好的地方,要进行认真的检查,确保每个地方都焊好了功能才能完整的实现出来。不仅是虚焊,还有主要引脚的问题,不能接错引脚。
总体来说就是要认真检查,若是功能显示不齐全,那一定是焊接的时候哪部分出了
17
问题,要进行认真的检测。 5.2 软件测试
声光控开关整体要实现的功能比较简洁清晰,软件方面就三个问题:要求光声条件满足的时候灯要亮;开关可以实现自动和手动模式转换;定时器的设定方面。编写程序的时候就要考虑到这几个问题,要设定声光调节满足灯才能亮,以及模式转换,定时器时间的设定,启动的设定。
(1)软件刚开始设定的时候对于定时器的问题没有设定好,关于何时启动何时关闭,灯亮后多少时间内是要关闭,还是要继续打开,最开始没考虑到要关闭定时器,所以只要灯亮条件满足后定时器就一直打开了,但是太浪费电了,本设计是响应节能的,最后还是选择完成定时任务后关闭它。
(2)还有就是模式转换,模式转换上,同样关于设定的问题,手动模式的时候灯亮条该怎么协调,总是弄反。 5.3 测试结果分析
(1)测试的时候,光敏电阻部分总是接触不良,后面发现是虚焊的问题,多对电路进行测试,就会减少很多的问题。
(2)对于软件部分总会有些小的疏忽,没有设定好定时器,或者是模式转换的设定,要经过好好的思路分析。最后按照程序流程图对照查看功能,检查最后的显示。 6 总结
这次设计的主题声光控开关可以很好的控制以及节省能源,应用较广泛,是有一定的研究价值的。整个设计体系是以STC89C51单片机为核心,其他模块包括声音采集模块、 光信息采集模块、继电模块、 晶振模块、 复位模块、 按键模块、 指示灯模块几部分来辅助完成总的目标。
STC89C51它是在集成电路芯片上集成了各类元件的微型计算器,各原件基于一身使得单片机的不仅多功能化还具有体积较小、价格较低、可靠性较高、开发和应用方便等特点,在各类器件中引入单片机,编程使器件智能化,可以提高器件的自动化程度和精准度,增强计算机的运算速度,简化方便器件的硬件结构,总体来说应用到本设计中是十分契合的。通过声光控原件、电压比较器、继电器各个部分的综合作用,能够很好实现整体功能。
结合了各部分器件,整体来说还是比较使用节能的,经过声光检测元件将信号传达给电压比较器输出给单片机处理,信号处理过后由继电器驱动负载,利用双电压比较输出电信号,将模拟信号转变成电信号,又有继电器驱动负载,通过一系列的带动程序来控制系统减少电量损耗,又通过定时器的控制和各项条件控制使得最后能够减少资源的
18
浪费。原件综合起来,比较便宜适合广大人民群众的,性价比较高。
经过这次的毕设,突然间发现动手前一定要先整理好思路,得到整体的框架了再着手会轻松很多。由于前面的分析使得设计总体做起来有头绪多了,虽然也有很多的不懂和困难,但是完成了那些问题就都不算什么了。很难想象自己能认真的去完成一个项目,这次经过自己的实践,学会了不少东西,通过对目标的分析将各个功能分细到各个模块,将各个功能协调运用,对比目标功能来寻找合适的原件,整理好原理图,学会了如何去用软件实现各自的功能,把以前差点忘掉的原理图制作还有PCB图制作仿真等实践都复习了一遍巩固了以前的知识。通过此次设计我还加深了对STC89C51单片机以及LM393等原件的了解,也锻炼了自己查找资料的能力。自己的能力得到了很大的提升,也能够更加认真的去做好一件事情了,更明白了完成一件事情前一定要有好的思路再开始动手,有什么不懂得地方也要多问同学多自己上网搜索资料。总的来说收货颇多。
参考文献
[1] 张毅刚,彭喜元,彭宇编著.单片机原理及应用[M].高等教育出版社,2010.5:92~102. [2] 何立民. 单片机高级教程.第1版[M].北京:北京航空航天大学出版社,2001:31~43. [3] 赵晓安. MCS-51单片机原理及应用[M].天津:天津大学出版社,2001.3:17~21. [4] 焦中平.照明灯声光控制电路及制作[M].科教文汇,2007:71~78. [5] 胡斌. 元器件及实用电路[M].电子工业出版社, 2007年7月:147~148. [6] 肖洪兵. 跟我学用单片机[M].北京:北京航空航天大学出版社,2002.8:41~46. [7] 赵家贵. 传感器电路设计手册[M].中国计量出版社2002年:17~26. [8] 王俊杰. 检测技术与仪表[M].武汉理工大学出版社2002年:35~37. [9] 孙涵芳. 单片机原理及应用[M]. 北京航空航天大学出版社1996年:48~49. [10] 谭浩强. C语言程序设计(第四版)[M]. 清华大学出版社2010年6月:34~41. [11] 郝希才. 实用传感器接口电路实例[M].中国电力出版社2007年:57~59.
19
致 谢
大学四年最后的毕业设计结束了,在这里,首先要衷心地感谢彭晓良老师一直以来对我们的指导和帮助。正是老师时刻的关心与耐心的指导才能让我们这么快的掌握了这么多的知识,得到了一定的实践能力,在这里再次感谢老师的帮助。在这次毕业设计中,这四年学得的大部分知识得到了充分的应用,以前没有完全掌握的难点得到了解决,也是要感谢四年来一直教育我们的老师感谢各位老师的细心指导让我们能够收获颇多同时,培养了我们实事求是的科学态度和严谨的作风,进一步提高了自己的自学能力。这对即将完全踏入社会的我们来说,是一个很大的收获。也要感谢陪伴我一路走来的同学朋友,他们也在生活学习中给了我不少帮助,在做毕设时给了我不少的建议和帮助。最后,我要感谢怀化学院,在这里,我们不仅学到了丰富的专业和生活各方面的处理能力,更学到了如何去为人,这将是我人生中一笔巨大的财富。在这里,我向学校的每一位老师致以最真诚的谢意!感谢你们陪伴我们一起走过了最美好的四年。
20
附录: 附录A
根据之前用ROTEL 99 SE做的电路原理图生成PCB板。绘制完电路原理图之后,要检测是否正确,再进行电器规则检测,然后生成相应的网路报表。最后把原理图生成PCB。生成后,对其进行手动或自动布线。
21
附录B 系统全程序: #include
#define uchar unsigned char #define uint unsigned int
sbit light=P3^1;
sbit sound=P3^0;
sbit LED_onoff=P3^3; sbit change=P3^2;
sbit led=P0^0;
sbit LED_out=P2^6; bit Mode=0; uchar sec=0;
void delay(uint xms) { uint i,j;
for(i=0;i } void init() { TMOD=0x01; ET0=1; EA=1; TH0=0x3c; TL0=0xb0; TR0=0; } void key() //光线输入 //声音输入 //按键:手动开关灯 //按键:模式切换 //模式指示灯 //输出控制灯 //=0自动 =1手动 //定义秒变量 控制灯亮时间//延时函数 约为1ms //初始化函数 定时器等 //按键函数 22 { if(change==0) { delay(50); //模式切换按下时 //去抖 if(change==0) { //再次判断是否按下 Mode=!Mode; led=Mode; //切换模式 //控制模式指示灯的亮灭 if(Mode==1) //切换到手动模式时如果灯是亮的,就熄灭灯;反之则反 LED_out=!LED_out; } if(LED_onoff==0&&Mode==1) { } 23 } else if(Mode==0) //切换到自动模式时如果灯是亮的就计时sec后熄灯 { } while(!change); //按键释放 if(LED_out==0) { } else delay(500); TR0=1; sec=0; //手动开关灯按键 delay(50); if(LED_onoff==0&&Mode==1) { } LED_out=!LED_out; while(!LED_onoff); //控制灯的开关 //按键释放 } void main() { // // init(); light=0; sound=0; led=Mode; while(1) { key(); //扫描按键 //控制模式指示灯的开关:初始位自动模式 //调用初始化函数 //主函数 //进入while循环 if(light==0&&sound==0&&Mode==0) //自动模式时 判断声光是否都满足条件(光线暗 &&声音有) } void time0() interrupt 1 { } { } LED_out=0; TR0=1; sec=0; //点亮输出 //打开定时器 //sec清零 //定时器函数 uchar m; TH0=0x3c; TL0=0xb0; m++; if(m==20) { m=0; sec++; if(sec>=30) { 24 //赋初值 //m==20为1s //改变此数值 改变开灯时间 } } } sec=0; //sec清零 LED_out=1; //灭灯 TR0=0; //定时器关闭,等待下次开灯 25
正在阅读:
qaeg10-20
中国人民银行办公厅关于印发《中国人民银行货币发行业务会计档案05-20
2018-2019学年教学工作计划12-14
大学生魅力讲话实操 平时答案03-05
厦门大学网络教育2014-2015学年第二学期《大学语文》课程复习题03-04
参观学校的导游词作文400字06-23
可爱的小龟作文350字06-20
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 光控
- 毕业设计
- 单片机
- 开关
- 基于
- 图文
- 智能
- 专升本英语模拟试题 5
- 人教版六年级上册数学第一单元分数乘法《整理和复习》教案
- 除氧器技术协议
- 新编人教版八年级下册《道德与法治》教学反思
- 吉林大学管理心理学单选题
- 最新苏教版 小学五年级数学上册第五单元小数乘法和除法教案(含
- 非人力资源经理的人力资源管理
- 心血管内科护理常规考试试题
- 如何做问答平台的推广
- 诗词三首
- 大学行政办公楼设计A方案
- 第九章热力学基础
- 第5课、《我的空中楼阁》第一课时学案
- 黄腐植酸肥项目可行性研究报告 - 图文
- 2015年高考化学试题分类汇编
- 乡镇为民服务中心汇报材料
- 仪征市第三中学2009-2010年度第一学期七年级语文期末模拟试卷
- 2017年春季《比较政府体制(高起专)》期末考核
- 诊断复习题呼吸困难
- 《卫生管理统计》题库(30课时)1