下载

0下载券

加入VIP
  • 专属下载券
  • 上传内容扩展
  • 资料优先审核
  • 免费资料无限下载

上传资料

关闭

关闭

关闭

封号提示

内容

首页 基于单片机的智能声光控开关卒业设计[教学]

基于单片机的智能声光控开关卒业设计[教学].doc

基于单片机的智能声光控开关卒业设计[教学]

张似春
2017-10-24 0人阅读 举报 0 0 0 暂无简介

简介:本文档为《基于单片机的智能声光控开关卒业设计[教学]doc》,可适用于活动策划领域

基于单片机的智能声光控开关卒业设计教学基于单片机的智能声光控开关专业名称机电一体化申请学士学位所属学科工科指导教师姓名、职称高功臣年月日摘要声光控开关的原理是只有在天黑以后当有人走过楼梯通道发出脚步声或其它声音时楼道灯会自动点亮提供照明当人们进入家门或走出公寓楼道灯延时几分钟后会自动熄灭。在白天即使有声音楼道灯也不会亮可以达到节能的目的。本文以LGS公司生产的GMSC单片机为核心研究声光控开关的设计采用串行AD对声音信号的采集可以通过软件来调节对声音的灵敏度。单片机软件实施对光度的判断使开关在白天时即使有声音也不工作。文章应用了过零启动技术开关工作在频繁的开关状态时不易损坏可控硅延长了声控开关的使用寿命。文章中还加入了看门狗电路在工作中可以起到抗干扰的作用大大加强了开关的可靠性。关键词:声光控智能节能可靠性。ABSTRACTTheprincipleoacousticopticalswitchisonlyaterdark,whensomeonepassstairchannel,issued,orothersoundsoootstepswillprovideautomaticlitcorridor,lighting,whenpeopleenterthehouseorapartmentcorridorlightsoutseveralminutesautomaticallydelayextinguishedDuringtheday,evenavoice,corridorlightsalsowillnotlight,canachievethepurposeosavingenergyInthispaperGMSCLGScompanyproduction,thesinglechipmicrocomputeristhedesignoacousticlightactivatedswitch,theserialADorsoundsignalcollection,bysotwaretoadjustthesensitivitytosoundSinglechipmicrocomputersotwareimplementationonphotometricjudgmenttomaketheswitchinthedaytime,eventhoughthereisvoicedoesn'tworkArticleappliedzerostartuptechnology,switchworkinrequentswitchtothyyistoyandextendedosoundcontrolledArticlealsojoinedwatchdogcircuit,intheworkplaysaroleoantiintererence,thereliabilityoswitchesisgreatlyenhancedKeywords:sound,theintelligentcontroller,energysaving,reliability目录绪论课题背景课题现状课题意义系统设计方案课题的研究内容技术方案的选择系统结构与工作原理系统结构系统的工作原理硬件系统的设计声音信号采集电路的设计光信号判断电路的设计过零启动保护电路的设计定时电路的设计驱动输出电路的设计电源设计看门狗电路的设计简介看门狗电路及其作用X特性介绍PCB板的制作的设计PROTELDXP的概述Protel原理图界面电路原理图的设计流程PCB板的绘制原则ProtelPCB设计流程印制电路板(PCB)的绘制过程如下所示:焊制电路板如下所示软件设计软件设计语言的选择程序流程图主程序设计延时程序设计TLC读写程序设计DS驱动程序设计X驱动程序设计系统的调试(调试过程调试结果及经验总结总结附录参考文献致谢绪论课题背景当今社会的主潮流是:降低能耗节约能源注重环保。声光控开关体积小外形美观反应灵敏制作容易是公共场合照明开关的理想选择被誉为:“长明灯的克星”。公共场所和居民居住区的公共楼道普遍使用机械手动开关,由于各种原因往往出现许多灯泡点亮长明的现象,故使灯泡寿命短,浪费电量,为国家、单位、个人造成经济损失。另外由于频繁开关或其他人为因素墙壁开关的损坏率很高既增大了维修量、浪费了资金又容易造成事故隐患。因此设计研制一种电路新颖、安全节电、结构简单、安装方便的声光双控白炽灯节能自动开关显得相当有必要。课题现状公共场所和居民居住区的公共楼道普遍使用机械手动开关,由于各种原因往往出现许多灯泡点亮长明的现象,故使灯泡寿命短,浪费电量,为国家、单位、个人造成经济损失。因此设计一个基于单片机的声光控开关系统使公共场所和居民居住区的公共楼道灯在白天时不亮晚上闻声自亮待人走后几十秒后自动关闭既方便又省电。课题意义()利用单片机作为中央处理器()具有光控功能白天不亮灯晚上有声音时亮灯()延时时间可调节()具有过零检测功能()所设计的开关系统应做到节能、智能、耐用、可靠性高以及维护方便。系统设计方案课题的研究内容运用单片机可以设计出智能型的声控开关电路设计好后运用软件编程来实现其功能灵活方便修改简单在使用过程中更加的安全节电智能环保。技术方案的选择目前的声控开关大多都是应用模拟电子技术进行设计分立元件多不可靠而且许多声控开关的平均使用寿命不长主要是因为电路作频繁的开关启动电流非常大导致功率元件可控硅由于过载而损坏。如果在设计中采用开关电压过零保护技术可消除白炽灯开启瞬间的大电流冲击有效地防止可控硅元件启动时的电流过载大大地延长了开关的使用寿命并且可以起到保护灯泡的作用。如今单片机技术已经相当成熟未来的发展方向趋向于运用单片机可以设计出智能型的声控开关电路设计好后运用软件编程来实现其功能灵活方便修改简单。在使用过程中更加的安全节电智能环保。首先单片机是一种集成在电路芯片是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种IO口和中断系统、定时器计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、AD转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。单片机的特点:()种类多型号全()提高性能扩大容量性能价格比高()增加控制功能向真正意义上的“单片”机发展()低消耗()C语言开发环境友好的人机互交环境。单片机的优点:()使用寿命长()运行速度越来越快()低噪声和高可靠性技术()OTP与掩膜。综上所述单片机的特点和优点符合制作智能声光控开关的条件并且具有准确性和节能性。系统结构与工作原理系统结构设计声光控开关最起码要考虑三个问题其一是灯泡的开关控制这是由V市供电。其二是光控制使其在有光时即使有声音也不能亮。其三就是声音控制在晚上或光线不足时只要有人经过发出声音灯泡就会点亮。设计的整体方案图如图所示。CPU以GMSC单片机为核心GMSC是LG公司生产引脚功能和指令系统与MCS兼容的引脚封装单片机片内含K字节的EPROM与MCS的主要不同之处是少了P和P口能方便地用于不需外扩程序存储器的应用场合达到简化电路、缩小体积、减小损耗和降低成本的目的。整个设计包括以下几个模块:声信号采集模块该模块主要是负责声音信号的采集并放大再经过AD转换器输入到单片机。声信号采集模块该模块主要是负责声音信号的采集并放大再经过AD转换器输入到单片机。过零保护模块该模块主要是负责声音信号的采集并放大再经过AD转换输入到单片机。光信号采集模块对光信号进行处理电路当中有光信号时输出一电平信号给单片机当晚上或光线较暗时输出一反向信号给单片机由单片机作出判断。时钟定时模块运用一时钟芯片起到定时功能当灯亮后一定定时时间到即自动熄灭。看门狗模块对现场干扰起保护作用防止单片机的程序跑飞使使使之输出一电压值到可控使可控硅打开。输出驱动模块由单片机控制使之输出一电压值到可控硅使可控硅打开。图整体方案图系统的工作原理采用串行AD对声音信号的采集可以通过软件来调节对声音的灵敏度。单片机软件实施对光度的判断使开关在白天时即使有声音也不工作在晚上闻声自亮。硬件系统的设计声音信号采集电路的设计图声信号采集电路如图所示为声音信号采集电路。R为声传感器当没有声音时其输出为低电压信号若有声音时输出一电压值该电压值经过运算放大器OP放大放大倍数为RRR为可变电阻可以调节其阻值使其放大倍数改变起到调节声音灵敏度的作用。下图TLC为AD转换器TLC采用串行接口与外围电路的连线简单三个控制输入端为CS(片选)、输入输出时钟(IOCLOCK)以及串行数据输出端(DATAINPUT)。片内的通道多路器可以选择个输入中的任何一个或个内部自测试电压中的一个采用一保持是自动的转换结束EOC输出变高。图TCLAD转换器TLC的引脚排列如图所示。引脚功能说明如下:AIN,AIN:模拟输入端由内部多路器选择。对MHz的IOCLOCK驱动源阻抗必须小于或等于ΩCS:片选端CS由高到低变化将复位内部计数器并控制和使能DATAOUT、DATAINPUT和IOCLOCK。CS由低到高的变化将在一个设置时间内禁止DATAINPUT和IOCLOCKDATAINPUT:串行数据输入端串行数据以MSB为前导并在IOCLOCK的前个上升沿移入位地址用来选择下一个要转换的模拟输入信号或测试电压之后IOCLOCK将余下的几位依次输入DATAOUT:AD转换结果三态输出端在CS为高时该引脚处于高阻状态当CS为低时该引脚由前一次转换结果的MSB值置成相应的逻辑电平EOC:转换结束端。在最后的IOCLOCK下降沿之后EOC由高电平变为低电平并保持到转换完成及数据准备传输VCC、GND:电源正端、地RE、RE,:正、负基准电压端。通常RE接VCCRE,接GND。最大输入电压范围取决于两端电压差IOCLOCK:时钟输入输出端。TLC的主要特性如下:()个模拟输入通道()ksps的采样速率()最大转换时间为μs()SPI串行接口()线性度误差最大为LSB()低供电电流(mA典型值)()掉点模式电流为μA。由于TLC具有以上特点其转换速度快与单片机接口简单占用的IO口少因此在本设计中选择进行AD转换用于采集声音信号。光信号判断电路的设计楼道上的声控开关出了声音控制外还必须有光控功能即在白天时无论有无声音都不会点亮灯泡只有在夜晚或是光线较暗时发出声音后才会开灯。这就必须设计一个光控电路原理图如图所示。图光信号判断电图中D为光敏电阻器光敏电阻器的主要功能是当没有光照或光线不足时其阻值较大达到兆欧级以上相当于处于短路状态此时R电位器中间抽头输出为低电平。而当有光照时光敏电阻阻值下降阻值相当小此时电位器R的中间抽头输出为高电位。LM和电位器R组成一电压比较器当同相输入端电位高于反相输入端时LM输出一高电平反之当反相输入端电位高于同相输入端时LM输出一低电平输出信号经过具有施密特功能的反相器LS送到单片机由单片机进行检测判断是否有光照。过零启动保护电路的设计普通的白炽灯正常发光时的灯丝与不发光时灯丝电阻值相差甚远从而使得其在启动瞬间的冲击电流非常大例如一只W的灯泡在正常发光时电阻约为欧工作在标准市电V时工作电流不到A。然而在不放光时灯丝的电阻阻值约为欧当启动时电流会很大约有A左右。这种大电流的冲击很容易损坏可控硅。如图为白炽灯启动时的电流波形图。图白炽灯启动电流波形图市电电压是交流V交流电始终是从零值到峰值的变化只要使白炽灯在零值或零值附近启动就可以避免大电流的冲击。如图为过零启动保护电路。D为整流桥SCR为可控硅过零启动主要是由电阻Rx,Rx二极管D和二极管O组成。Rx,Rx是采样电阻当整流桥号端子的电压处于低电压时Rx和Rx之间的电压也很低Q处于截止工作状态protect端输出高电平。当整流桥的号端口为高电压时Rx和Rx之间的电压亦很高使Q工作在导通状态protect端输出低电平。把protect的低电平信号送到单片机的IO上进行检测由单片机作出判断再决定SCR端得电压值当protect为高此时的电压为低可以驱动SCR导通点亮白炽灯当protect为低此时的电压为高使SCR关闭暂时不点亮白炽灯等到过零点电位时才运作。因此无论什么时候有声音信号来只有在低电位时才驱动SCR可控硅打开声控信号才起作用实现零压启动。图过零启动保护电路白炽灯点亮以后可控硅SCR导通二极管D的阳极电位就会下降此时二极管D就起到了过零电压启动取消的作用。当有高电压来时Rx与Rx之间的电位就会高于D的阳极电位二极管导通从而使Q的基极输入电位下降有效地避免了灯泡的闪烁现象。定时电路的设计声控开关在打开后需要定时一定的时间一般为几十秒设计时可以借助时钟芯片这里选用一款美国DALLAS公司生产的高性能、低功耗、带RAM的实时时钟芯片DSDS与CPU通过三线接口同步通信其接口电路如图所求。图定时电路驱动输出电路的设计前面提到当单片机检测到声光信号后要控制图中的SCR可控硅导通才能点亮灯泡因此要设计一个驱动输出电路。图驱动输出电路如图所示用一个反向器与一个NPN型的三极管一般的或都可以再加一个上位电阻此处用一个K的电位器方便可调。单片机的一个IO端口控制LS使三极管关断截止或导通闭合。当单片机检测到有声光信号时需要驱动可控硅导通则单片机给一个高电平信号经反向器反为低电平三极管截止SCR输出端为高打开可控硅点亮灯泡。反之单片机给一个低电平使三极管导通SCR端输出为低可控硅截止灯泡不亮。电源设计灯泡的工作电压为V但控制器的工作电压为V所以必须设计一个电源电路取得V的低电压。如图所示ZI为V稳压管C,C为滤波电容D、D为保护二极管为三端稳压管。V经过整流后经过Z稳压输出V再经C和C滤波输出直流电压从的脚输出V。图电源设计看门狗电路的设计简介看门狗电路及其作用在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成程序的跑飞,而陷入死循环,程序的正常运行被打断,由单片机控制的系统无法继续工作,会造成整个系统的陷入停滞状态,发生不可预料的后果,所以出于对单片机运行状态进行实时监测的考虑,便产生了一种专门用于监测单片机程序运行状态的芯片俗称“看门狗”(Watchdog)。声控开关控制器长时间工作电路中即有V的强电又有V的低工作电压现场的抗干扰在所难免为避免单片机的程序跑飞这里加入了看门狗电路起到抗干扰的作用。X将EEPROM、看门狗定时器、电压监控三种功能组合在单个芯片之内大大简化了硬件设计提高了系统的可靠性减少了对印制电路板的空间要求降低了成本和系统功耗是一种理想的单片机外围芯片。X引脚如图所示。图X引脚图其引脚功能如下:CS:芯片选择输入:当CS是高电平时芯片未选中并将SO置为高阻态。器件处于标准的功耗模式除非一个向非易失单元写的周期开始。在CS是高电平时将CS拉低将使器件处于选择状态器件将工作于工作功耗状态。在上电后任何操作之前CS必须要有一个高变低的过程SO:串行输出:SO是一个推拉串行数据输出引脚在读数据时数据在SCK脉冲的下降沿由这个引脚送出SI:串行输入:SI是串行数据输入器指令码、地址、数据都通过这个引脚进行输入。在SCK的上升沿进行数据的输入并且高位(MSB)在前SCK:串行时钟输入其上升沿将数据或命令写入下降沿将数据输出WP:写保护输入:当WP引脚是低电平时向X中写的操作被禁止但是其他的功能正常。当引脚是高电平时所有操作正常包括写操作。如果在CS是低的时候WP变为低电平则会中断向X中写的操作但是如果此时内部的非易失性写周期已经初始化了WP变为低电平不起作用Vss:地Vcc:电源电压RESET:复位输出:PESET是一个开漏型输出引脚。只要Vcc下降到最小允许Vcc值这个引脚就会输出高电平一直到Vcc上升超过最小允许值之后ms。同时它也受看门狗定时器控制只要看门狗处于激活状态并且WDI引脚上电平保持为高或者为低超过了定时的时间就会产生复位信号。CS引脚上的一个下降沿将会复位看门狗定时器。由于这是一个开漏型的输出引脚。所以在使用时必须接上拉电阻。X硬件连接图如图所示。X芯片内包含有一个看门狗定时器通过软件预置系统的监控时间后若在预置的时间内看门狗芯片的CS端电平没有发生变化则X将从RESET输出一个高电平信号使CPU复位图看门狗电路X特性介绍()可选时间的看门狗定时器。()Vcc的降压检测和复位控制。()种标准的开始复位电压使用特定的编程顺序即可对电压检测和复位开始电压进行编程复位电压可低至Vcc=V。()省电特性:在看门狗打开时电流小于uA在看门狗关闭时电流小于uA在读操作时电流小于mA。不同的型号的器件其供电电压可以是V、V、V。K位EEPROM,,,次的擦写周期。()具有数据的块保护功能可以保护、、全部的EEPROM当然也可以置于不保护状态。()内建的防误写措施:用指令允许写操作写保护引脚。()时钟可达M。()短的编程时间:字节的页写模式写时由器件内部自动完成典型的器件写周期为ms。PCB板的制作的设计PROTELDXP的概述Altium公司年最新产品ProtelDXP是一款能极大地提高PCB设计的完整的板卡级设计软件。它可运行于Windows和WindowsXP操作系统之上可实现从概念设计到输出外协加工文件等一系列操作并对设计过程、设计结果进行分析、验证。ProtelDXP不仅能方便经验丰富的PCB工程师也降低了制作PCB的门槛人们只需通过段时间培训便可以很快制作出一块合格的PCBProtelDXP已经不再是单纯的SCH、PCB设计工具而是主要由以下几个功能模块组成的系统工具:()分级线路图输入。)自动布局布线。(()设计前、后的信号传输效应分析。()规则驱动下的板卡色设计和编辑。()Spice混合电路仿真模拟。()完全支持线路图基础上的PGA设计。()完整的CAM输出。Protel原理图界面在Protel主界面中单击ile>Open命令在文件路径中选择原理图文件。ProtelDXP原理图界面主要包括以下几部分:菜单栏、工具栏、工作窗口等。原理图如下图所示菜单栏DXP(系统)、ile(文件)、View(视图)、Project(工程)、Place(放置)、Design(设计)、Tools(工具)、Peports(报告)等。电路原理图的设计流程在原理图设计时可能会涉及到众多元件的放置繁多的电气连接。为了保证不出错需要遵循一定的设计流程。在绘制简单的原理图时按照以下流程绘制即可。()新建项目文件。在项目文件中新建原理图文件。()设置原理图图纸及相关信息图纸是原理图绘制的工作平台。几乎所有的工作都建立在其上为原理图设置合适的图纸参数将有利于原理图设计。()添加删除元件库。在原理图设计中使用的元件符号需要在绘制之前导入。()放置元件符号元件符号的放置要遵循电路设计要求同时要修改元件的属性(当然也可以在后续操作中再进行属性修改)。()电气连接。在原理图中进行电气连接时可以使用导线连接也可以采用总线连接还可以使用网络标记进行连接电气链接可为PCB设计生成网络报表。()调整原理图并检查错误、修改。在电气连接完成后要根据电路设计进行仔细的检查确保电路连接的正确性。ProtelDXP引入了自动ERC检测功能能简化设计人员的检查工作。()原理图注释。这是原理图设计不可缺少的部分。注释时要注明原理图的名称、关键点的说明和波形描述等。()原理图保存打印。单击工具栏的保存按钮即可进行保存。值得一提的是在设计过程中要经常保存以防意外丢失。单击工具栏上的打印预览按钮可以进行打印预览查看打印效果。若确定无误后即可单击打印按钮进行打印输出。()输出文件。可根据需要选择原理图元件清单输出或网络报表输出等。PCB板的绘制原则()电路要有合理的走向对于输出输入、交流直流、强弱信号、高频低频、高压低压等它们的走向应该是分离布线的不得相互交融其目的在于防止相互干扰。()选择好电路信号的接地点接地点的设置是较复杂而又灵活的一般情况下要求公共地现实中因受各种限制很难完全办到但应尽力遵循这个问题在实际中是相当灵活的每个人都有自己的一套解决方案。()合理安排电源滤波各种退耦滤波电容电源线上的小电容是为开关器件或其他需要滤波退耦的器件而设置的布置这些电容就应该尽量靠近这些元器件离得太远就没有作用了。()PCB布线有一定的规则在PCB板上有条件加宽的线尽量不做细。高压及高频线应圆滑不得有尖锐的倒角拐弯也不得采用直角。地线应尽量宽最好使用大面积敷铜。()谨慎处理来自PCB设计中的问题设计中尽量减少过线孔由于过线孔太多在生产中工艺稍有不慎就会埋下隐患。同向并行的线条如果密度过大则焊接时很容易连成一片线密度应视焊接工艺水平来确定。焊点的距离太小将不利于人工焊接只能以降低工效来解决焊接质量因此焊点最小距离的确定应综合考虑焊接人员的素质和工效。ProtelPCB设计流程通常PCB的设计是要遵循一定的流程保证PCB和原理图设计同步不要有遗漏这样会使检查更加容易。当然对于不同的设计人员会有一些差别概括有以下几个步骤。()PCB板的设计准备:由原理图生成网络表装载PCB元件所在的封装库如果没有封装的元件则要绘制出该器件的封装。()根据应用电路的要求确定PCB板的几何尺寸、形状和层数等参数。()导入网络文件引入原理图中的信息采用元件自动布线操作完成pcb的初步设计。()根据电路的功能分布、布线的要求对ProtelDXPde自动元件布局进行调整这是PCB设计的重要部分。()对PCB进行自动布线通常是自动布线和手工布线交替进行手工布线主要是弥补自动布线的缺陷。()PCB的电路检查填充非元件区、添加安装尺寸和丝印信息根据PCB文件生成BOM报表、导出文件和打印外协加工图纸等。印制电路板(PCB)的绘制过程如下所示:焊制电路板如下所示软件设计软件设计语言的选择单片机语言的编程一般使用两种语言:C语言和汇编语言。汇编语言是一种用文字助记符来表示机器指令的符号语言是最接近机器语言的一种语言。其主要的优点是占用资源少程序执行效率高。但是不同的CPU其汇编语言可能有所差异,所以不易移植。C语言是一种结构化的高级语言。其优点是可读性好移植容易是普遍使用的一种计算机语言。缺点是占资源较多执行效率没有汇编高。C语言是一种编译型程序设计语言它兼顾了许多种高级语言的特点其具备汇编语言的功能。C语言有功能丰富的库函数、运算速度快、编译效率高、有良好的可移植性而且可以直接实现对系统硬件的控制。C语言是一种结构化程序设计语言它支持当前程序设计中广泛用的有顶向下结构化程序设计技术。此外C语言程序具有完善的模块程序结构从而为软件开发中采用模块化程序设计方法提供了有力的保障。因此使用C语言进行程序的设计已经为软件开发的一个主流。综上所述用C语言进行单片机程序设计是单片机开发和应用的必然趋势。本设计就采用C语言进行编程明显的增加了软件的可读性。程序流程图主程序设计根据程序流程图编写主控程序如附录(附录)延时程序设计编写程序当中要用到适当的延时所以先编写一个大概ms的延时子程序方便在后面的程序中调用程序代码见(附录):TLC读写程序设计TLC为AD转换器编写其读写子程序到后面主程序中调用。程序代码如下:TLC与单片机的接口定义如下:clk=P^sibtlcsibtlcdin=P^sibtldout=P^sibtlccs=P^写命令子程序返回转换后的电压数字值见(附录)DS驱动程序设计实时时钟芯片DS与单片机的接口定义为:SbitDSsclk=PI^*实时时钟时钟线引脚*SbitDSIO=PI^*实时时钟数据线引脚*SbitDSRST=PI^*实时时钟复位线引脚*其读写驱动程序代码见(附录)X驱动程序设计看门狗X与单片机的接口定义为:sbitxcs=P^sbitxso=P^sbitxsi=P^sbitxsck=P*读写驱动程序见(附录):系统的调试(调试过程利用KEIL与PROTEUS进行调试使用步骤如下:()打开KEIL建立工程输入程序编译和生成hex文件如图所示()打开PROTEUES设计硬件电路图如图所示()导入hex文件见上图将鼠标置于电路图中GMSC器件上右击后再左击弹出对话框在红框中导入dzphex文件。()点击面板左下角的开始调试。调试结果及经验总结将程序导入GMSC芯片调试成功后可以达到设计的要求。通过设计智能声光控开关加深了对单片机系列的认识。让我更好的运用了本科两年所学的知识运用于实践加深了对知识的理解。在设计过程中学习了很多软件的使用包括硬件部分运用protues进行设计用keil进行程序编译用protel进行制板。总结声光控开关省事省电应用广泛本文应用单片机微控制器通过软件来实现采用了过零启动技术并且加入了看门狗监视器安全可靠。相信以后在这方面会不断完善使日常生活更加方便更加智能化。在设计中初步了解了声光控制电路的工作原理学会了分析电路、设计电路的方法和步骤。通过本次设计提高了自己对资料的查阅、信息处理的能力训练了自己的科学研究基本功培养了知识综合运用能力增加了对社会普通科学知识的了解为以后写作专业学术论文打下基础。附录附录延时程序设计设计延时程序Voiddelay(unsignedintj){unsignedchariwhile(j){or(i=i>i){}}}附录TLC读写程序设计sibtlcclk=P^sibtlcdin=P^sibtldout=P^sibtlccs=P^写命令子程序返回转换后的电压数字值unsignedinttlcwrite(unsignedcharCHN){unsignedchariunsignedintbackcode=CHN<<=左移位tlccs=tlcclk=tlccs=or(i=i<i)写入一位的数据{i(i<){i(CHNx))tlcdin=elsetlcdin=CHN<<=}backcode<<=backcode=tlcdouttlcclk=nop()nop()Tlcclk=}Tlccs=Return(backcode)}附录DS驱动程序设计实时时钟芯片DS与单片机的接口定义为:SbitDSsclk=PI^*实时时钟时钟线引脚*SbitDSIO=PI^*实时时钟数据线引脚*SbitDSRST=PI^*实时时钟复位线引脚*其读写驱动程序代码如下:功能:实时时钟写入一字节VoidDSWriteByte(unsignedchard){unsignedchariunsignedchartemptemp=dor(i=i>i){I(tempx)DSIO=elseDSIO=DSSCLK=Temp=temp>>nop()DSSCLK=}}功能:实时时钟读取一字节UnsignedcharDSReadByte(void){UnsignedcharDSReadByte(void{UnsignedchariUnsignedchardator(I=i>i){dat=dat>>i(DSIOdat〡=xDSSCLK=nop()nop()DSSCLK=}Return(dat)}功能:忘DS写入数据voidDSWriteData(unsignedcharucAddr,unsignedcharucDa){DSRST=DSSCLK=DSRST=DSWriteByte(ucAddr)*地址命令*DSWriteByte(ucDa)*写Byte数据*DSSCLK=DSRST=}功能:读取DS某地址的数据unsignedcharDSReadData(unsignedcharucAddr{unsignedcharucDataDSRST=DSSCLK=DSRST=DSWriteByte(ucAddr)*地址命令*ucData=DSReadByte()*读Byte数据*DSSCLK=DSRST=return(ucData)}功能:设置初始时间voidDSSetTime(unsignedcharpClock){unsignedchariunsignedcharucAddr=xDSWriteData(xe,x)*控制命令,WP=,写操作,*or(i=i<i){DSWriteData(ucAdd,pClocki)ucAddr=}DSWriteData(xe,x)*控制命令WP=写保护*}功能:读取DS当前时间voidDSGetTime(unsignedcharucCurtime){unsignedcharIunsignedcharucAdd=xor(i=i<i){ucCurtimei=DSReadData(ucAddr)ucAddr=}}附录X驱动程序设计看门狗X与单片机的接口定义为:sbitxcs=P^sbitxso=P^sbitxsi=P^sbitxsck=P*读写驱动程序:对X进行写操作voidxwrite(unsignedcharcommand){unsignedcharIxcs=xcs=nop()or(i=I<i){i(commandx)xsi=elsexsi=command<<=xsck=nop()nop()xsck=}xsi=xcs=nop()}写状态寄存器voidxwrsr(unsignedcharcm){xcs=nop()xwrite(XWREN)xcs=nop()xcs=nop()xwrite(Xwrsr)xwrite(cm)nop()xcs=delay()}附录主程序设计#deineON#deineOTIMEsbitLight=P^光信号sbitProtect=P^过零信号sbitOpen=P^开亮控制voidmain(void){bitonlagunsignedchartime={}unsignedintvoiceunsignedchartimeunsignedcharoldsecondxwrsr(x)打开看门狗DSSetTime(time)设置时间初值Open=关闭可控硅RESETWDT()复位看门狗while(){i(Light==)判断是否在夜晚{voice=tlcwrite(x)采集声音信号RESETWDT()复位看门狗I(voice>=ON)有声音{while(){i(Protect==)处于零压{Open=驱动输出Onlag=置开灯标志位为DSGetTime(time)获取当前时间值oldsecond=timebreak跳出循环}RESETWDT()}}while(onlag==)已经开灯就计时{DSGetTime(time)获取当前时间值i(oldsecond!=time)一秒后{oldsecond=timetime计数变量累加i(time>=OTIME)时间到{onlag=open=关灯}}RESETWDT()}}}}附录总电路图的设计参考文献肖洪兵跟我学用单片机北京:北京航空航天大学出版社,何立民单片机高级教程(第版(北京:北京航空航天大学出版社赵晓安MCS单片机原理及应用天津:天津大学出版社何立民(从CygnalC看位单片机发展之路(单片机与嵌入式系统应用年第期:P~夏继强单片机实验与实践教程北京:北京航空航天大学出版社,年何希才传感器技术及其应用北京航空航天大学出版社年赵家贵传感器电路设计手册中国计量出版社年王俊杰检测技术与仪表武汉理工大学出版社年孙涵芳单片机原理及应用北京航空航天大学出版社年谭浩强C语言程序设计(第四版)清华大学出版社年月谭浩强C语言题解与上机指导(第二版)清华大学出版社年陈锦玲ProtelSE电路设计与制版快速入门人民邮电出版社年郝文化ProtelDXP电路原理图与PCB设计机械工业出版社年郝希才实用传感器接口电路实例中国电力出版社年陈圣林图解传感器技术及应用电路中国电力出版社年致谢感谢张秀红老师在毕业设计过程中的指导和帮助使我能够尽快的完成任务。在毕业设计过程中遇到了一系列的难题感谢老师和同学的帮助。特别感谢泰安市无线电厂为了更好的完成毕业设计我在泰安市无线电厂实习个月学习单片机等技术在实习过程中无线电厂的刘厂长给予了我们大力的支持和帮助使我们可以自由的使用厂里的各种设备使我们对于论文的理解更加深刻更加清晰~

用户评价(0)

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

评分:

/40

VIP

意见
反馈

免费
邮箱