基于zigbee的红外检测设计_第1页
基于zigbee的红外检测设计_第2页
基于zigbee的红外检测设计_第3页
基于zigbee的红外检测设计_第4页
基于zigbee的红外检测设计_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

1、分类号编号烟台大学毕 业 论 文(设 计)基于zigbee的红外检测设计Infrared Detector Based on Zigbee申请学位:工学学士院 系: 光电信息科学技术学院专 业:姓 名:电子信息工程程行学 号:指导老师:201257503145胡自强2016年 05 月 22日烟台大学 基于 zigbee的红外检测设计姓 名: 程行导 师: 胡自强2016年 05月 22日烟台大学 烟台大学毕业论文(设计)任务书院(系):光电信息科学技术学院姓名 程行学号201257503145毕业届别2016专业电子信息工程毕业论文(设计)题目基于 zigbee的红外检测设计指导教师胡自强学

2、历博士 职称讲师所学专业 光学工程主要内容:本文介绍了利用zigbee技术和人体红外探头检测人体构成的无线系统的软件和硬件的方案设计。基本要求:着重培养解决实际问题的能力以及初步的科学研究能力,同时对于书面表达能力以及数据组织能力也有较好的培养;还有认真努力,独立思考,刻苦钻研;查找各类文献,阅读外文文献的能力;独立撰写论文,思辨和表达能力。进度安排:5-6 周:查找、阅读,翻译文献。6-7 周:素材加工,系统分析。7-8 周:撰写论文大纲。8-10 周:撰写论文。10-12 周:论文修改完善。13-14 周:定稿,打印论文,准备答辩。指导教师(签字):年月日院(系)意见:教学院长(主任)(签

3、字):年月日备注: 烟台大学毕业论文(设计)摘要 本文简单介绍了基于ZigBee技术的应用。无线传感网络节点基于 51单片机和热释电红外传感器组成的。它利用 HR-SR501系列的热释电红外传感器来检测是否有人经过,进而实现对灯光、防侵入等职能的控制。该方案有着高准确率、低功耗、高扩展性等特点。本文描述了该系统的基本组成以及工作原理,并对该系统的软硬件做了相关介绍。其中,详细的论述了系统软件设计思想,多种中断服务等相关内容。关键字:红外传感器;监控节点;无线网络; 烟台大学毕业论文(设计)Abstract: This thesisintroduces a application based o

4、n ZigBee technology.Wirelesssensornetwork node basedon 51 microcontroller and pyroelectric infraredsensor.It can be used,such as the use of series of human HR-SR501 infrared sensorsto achieve on-site there is/no detection, and then to achieve lighting,anti-invasive, such as control functions. And th

5、e program has a better scalabilityand lower False Alarm Rate. This thesis discusses the basic components of thesystemandworkingprincipleandcircuitofthesystemhardwareandsoftwaredesignthat were related. We discussed in detail the system software design, coordinationof multiple interrupt service and ot

6、her related content.Keywords: Monitoring node; Wireless Network; Infrared sensor 烟台大学毕业论文(设计)目录绪论. 21 系统总体方案. 31.1 系统要求实现的功能. 31.2 系统总体规划. 31.2.1 硬件规划. 31.2.2 软件设计思路. 31.2.3 软件规划. 32ZigBee协议和 CC2530模块. 52.12.2ZigBee简介. 5RF CC2530芯片的特点与功能. 52.2.12.2.2CC2530芯片的主要特点. 5CC2530芯片的引脚功能. 63HR-SR501人体感应模块 .

7、74 系统硬件设计. 85 系统软件设计. 105.1 系统软件方案. 105.1.1 系统软件功能. 105.1.2 系统软件设计方案. 105.1.3 通信协议.115.2 主函数设计及流程图.115.2.1 全局变量.115.2.2 主函数流程图. 125.2.3 函数设计. 145.3中断服务程序设计. 225.3.1 外部中断 1中断服务函数. 225.3.2 外部中断 0中断服务函数. 235.3.3 串行口中断服务函数. 236 软件调试. 256.1 系统调试软件 Keil uVision4. 256.2 程序调试的主要方法. 25结论. 26致谢. 27参考文献. 281 烟

8、台大学毕业论文(设计)绪论随着人们生活水平的提高和科技的发展,人们对生活中的安全防护也随之提升。基于各种技术的安全检测也开始应用到生活和商业防盗中来。已有的安全检测系统由于通常采用有线网络连接,所以有着诸多不便:需要走线、不方便扩展、线容易受到磨损。采用无线方式传输检测信号则可以避免这些问题。采用无线方式,可以方便移动和扩展。因此比较适用于楼房居住的家庭的防盗的监控方面。ZigBee是优缺点鲜明的无线通信技术,具有功耗低和有效距离近、成本低、较为简单和较低的数据传送速度等特点 。这些特点相对于其他通信技术来说,zigbee适用于要1求传送速率不高但可靠性要求高的系统上。基于以上zigbee的特

9、点,本文提出了一种利用 ZigBee协议来发送用于红外安全检测数据的系统方案。可以达到对特定场合做是否有人的检测,达到长时间可靠工作、低成本低复杂度、隐蔽性强的要求。红外线指向性强,其传播距离远,因此利用其特性可以对温度的变化作出检测。利用人体红外检测器对体温范围内的温度敏感的特点,可以有效的感应到特定场合内的人员变动。因此,本方案将由 51单片机, HR-SR501红外检测构成, CC2530芯片遵循ZgiBee协议与上位机相连,构成物联网 。系统结构框图,如图1示:2图1 系统结构框图本系统中,红外检测器的灵敏度很重要。2 烟台大学毕业论文(设计)1系统总体方案1.1系统要求实现的功能此节

10、点应能实现以下基本功能:1)人体红外检测功能,当检测到人时即发出铃声。2)可以远程控制,上位机用串口向节点发送数据,并被单片机解析进而控制。3)无线发送功能,在单片机执行动作以后可以向上位机发送数据。4)执行报警等命令。1.2系统总体规划1.2.1硬件规划分析需求。根据功能1,用人体红外传感器作为监测工具,并输出。根据功能 2和3,Zigbee模块用来传输数据,AT89C51为核心。根据功能4,用电铃作为警报装置。1.2.2软件设计思路软件大体思路:启动系统,上位机或者启动按键发出启动信号后,系统开始工作,并向传感器发出工作信号。当人体检测传感器检测到人体时,发出警报信号,随之电铃开始报警,并

11、且上位机接受到报警信号,此时上位机可以发出信号控制下位机。根据以上思路,单片机的INT1接红外传感器的输出信号端,四个按键共同介入INT0达到按键中断, ZigBee模块与单片机的串口链接,IO口向电铃输出信号。1.2.3软件规划main函数判断串口是否接受完成,然后执行功能。否则继续接受。1) 外部中断1函数用于响应红外传感器并发响铃。2) 串口中断函数分析协议,将串口接收完成标志位置1。3) 系统相关功能:开始、关闭、报警、复位等。开始、关闭、复位、报警功能的说明:1) 开始被执行后,其他功能才能被执行,否则不能。2) 复位可以将节点重置。3 烟台大学毕业论文(设计)3) 报警是由传感器在

12、检测到人时发出信号后,使电铃响。4) 关闭功能是指除了开启功能之外,其他功能不能被执行。4 烟台大学毕业论文(设计)2 ZigBee协议和 CC2530模块2.1 ZigBee简介本系统的信息传输主要基于 Zigbee协议而实现的,下文将对 Zigbee协议做一下简单的描述。ZigBee是一种无线通讯技术,其主要特点是价格较低、能耗低、硬件集成度高,有效通信距离低等特点,所以被测量控制和传感网所应用。ZigBee具体特点如下:1) 低成本:因为ZigBee协议是开源的,当使用其设计产品时,可以降低其成本。2) 低功耗:由于ZigBee的传输信息的速度较慢,无线功率为毫瓦级,在不工作时会进入休眠

13、,进而降低功耗 。因此采用ZigBee协议的设备可以达到高的待机时间。据估3算,在低功耗待机模式下,更换一次电池使用 Zigbee技术的设备延长两年的工作时间,同在2.4Ghz下的其他无线协议所达不到的。3) 时延短:在通信过程中的时延与从休眠模式中唤醒所需要的时间都是非常短的,在一般低干扰的情况下,时延大约在 30个毫秒以下,因此可以被对时延要求高的系统所采用。4) 可容纳设备多:255个节点可以组网,并且其中一个主节点可以与其他主节点继续组网,并将其容量扩充为65530个。5) 可靠性高:为了避开发送数据的竞争和冲突,在通信时预留时隙。确保传输过程中如果出现问题可以进行重发。6) 安全:Z

14、igBee对数据做了循环冗余校验。2.2 RF CC2530芯片的特点与功能2.2.1 CC2530芯片的主要特点CC2530集成了单片机与射频电路的片上系统解决方案。 CC2530既能满足高性能的需求,也可以在2.4GHz频段的基础上利用ZigBee来降低成本、降低功耗。在其内部,集成了传统高效的51芯片和2.4GHz收发器。CC2530整合了CC2420没有整合的了2.4GHz射频电路。它使用1个8位MCU(8051),最大可达到128KB的Flash ROM和8 KB的RAM,有着复位电路、定时器、针对休眠模式而采用的32khz的晶振和定时器、专门用于加密的处理器、看门狗、输入输出引脚。

15、CC2530芯片因采用零点几微米级别的硅片,可把工作电流降为 27mA以下。CC2530由5 烟台大学毕业论文(设计)于其特有的休眠模式和从休眠模式唤醒的超短延时,可以很好的应对长时间无人更换电源的情况。CC2530芯片的主要特点如下:1)相对较高的处理速度。2)集成2.4GHz的RF无线电收发机。3)较好的灵敏度和抗干扰。4)硬件支持CSMA/CA功能。5)较宽的电压范围(2.03.6V)。6)数字化的RSSI/LQI支持。7)具有电池监测功能。8)温度感测功能。9)集成了14位ADC。10)集成AES安全协处理器。11) 2个USART,以及1个基于IEEE802.15.4标准的MAC计时

16、器,1个16位计时器和2个8位计时器 。412)休眠时仅有0.9安的电流。2.2.2 CC2530芯片的引脚功能CC2530芯片采用7 mm×7mm QLP封装,共有48个引脚,引脚共有输入输出、电源、控制三大类。CC2530有21个输入输出引脚。 P0、P1都是8位口,P2为5位口。通过程序修改 SFR的位,可以更改这些引脚的作用。I/O口或作为连接ADC、timer或USART的外围设备I/O口。I/O口其他的特性:在输入时有上下拉的能力。3) 相应外部中断不仅仅有外部中断引脚,输入输出引脚也可以。同时外部的中断事件也可唤醒休眠模式。各引脚驱动能力如下:(P1_2 P1_7):具

17、有4mA输出驱动能力。(P1_0,P1_1):具有20mA的驱动能力。(P0_0 P0_7):具有4mA输出驱动能力。(P2_4,P2_3,P2_2,P2_1,P2_0):具有4mA输出驱动能力。6 烟台大学毕业论文(设计)3 HR-SR501人体感应模块本系统主要功能实现以及报警信号的产生都与 HC-SR501传感器有关,因此下文会对其特性做出介绍。HC-SR501工作方式是被动式感应红外。有着检测灵敏、可长时间工作、低功耗等特点,因此被广泛应用于安全检测领域。在其监测范围到感应到人出现后,模块输出高电平,人走后则继续输出高电平,延迟一段时间输出低。它具有以下特性:1) 光敏检测,对光进行检

18、测,可设置为有光线时不工作。2) 温度补偿:假设气温升高,感应模块会差生偏差。传感器会随着气温变化做出一定的温度补偿。3) 两种触发方式:a. 不可重复触发方式:传感器在人出现时输出高低平,持续一定的时间后出现低跳变。b. 可重复触发方式:在感应到人之后输出高电平,在保持高电平的时间内仍做检测,如果有人,将会一直输出高电平。直到人离开后再保持一段时间的高电平,然后做低跳变。最后一次感应到人的时间为延时时间的起始点。4) 感应关闭时间设置:感应模块可更改为在输出改变后(高转为低),设置一段关闭工作的时间,期间不做检测。可用于间隔工作,降低功耗,并降低有干扰情况误报的发生。5) 工作电压范围宽。7

19、 烟台大学毕业论文(设计)4系统硬件设计系统硬件构成由AT89C51、CC2530、HR-SR501模块和报警等其他外围电路组成。以下为主要电路图:图2 CC2530及其外围电路CC2530的外围电路中大部分都是按着其说明资料上进行规划的。复位电路实现手动复位。CC2530内置上电复位。晶振电路采用双晶振,一个是32MHz、另外一个是低频率的。低频晶振是为了低功耗而存在的,在休眠模式下,芯片关闭其内部的部分电路,并以低频率工作待机,这就是CC2530低功耗的技术所在。26与27引脚接的是2.4GHz无线收发电路,电路上的电容与电感组成了滤波器。E1是天线。30引脚通过电阻接地。另外, 所有GN

20、D管脚接地。DVDD1、DVDD2及AVDD1AVDD6管脚都连接到由1.5V的干电池组成的3V正极上。P1.0和P1.1脚分别与AT89C54芯片的P3.0(RXD)和P3.1(TXD)上。来解决其之间的问8 烟台大学毕业论文(设计)题传输问题。图3 单片机电路在AT89C51外围电路中,复位电路实现单片机的复位和手动复位。晶振电路向单片机提供其工作时所需的时钟,晶振的频率越高,单片机执行一个指令的时间越短,即单片机计算速度越快 。5电路中,晶振频率为11.0592MHz。电容C20、C21都是20pF。9 烟台大学毕业论文(设计)5系统软件设计5.1系统软件方案5.1.1系统软件功能Zig

21、Bee红外监控节点是系统中的基础。它向上位机发送信息,也可以接受并执行来自上位机指令。同时它的功能不局局限于发送和接受信息,还可以接受红外模块发送的有人信号,并发出报警。因此,软件应有以下功能1) 在硬件功能完整以及无线传输距离合适能正常传输信息的情况下,可以通过无线传输的方式向上位机发送监控节点的信息,并能接受来自上位机的无线控制信号,然后执行功能。2) 节点有情况时做出相应的的警报或提示。3) 关闭节点后,不响应复位或者测试功能。4) 选用ZigBee无线通讯协议,这就要求节点在通信时可以解析来自上位机的信息,并发送基于协议标准的信息。5.1.2系统软件设计方案将软件分为4部分:1) 控制

22、节点的信息由串口来发送,加上为了减少 PCU负荷,系统对控制信号的接受都是由中断服务来完成。上位机通过串口中断来控制节点,按键功能由外部中断 0来实现。2) main函数在中断发生后执行对应的功能,传感器发送有人信号后报警。3)程序执行动作时,都会有提示。表1 执行动作相应的提示程序执行动作开始相应的提示或警报一次短警报关闭一长一短两次警报一分钟的等待提示持续的长警报测试检测到人复位所有警报会停止10 烟台大学毕业论文(设计)4)单独写程序执行函数。5.1.3通信协议通信协议可以使上下位机之间互相传输信息。规定的通信协议:1)每次发送都为11个字节字符串。2) 前六位依次是0x68,0x05,

23、0x00,0x68,0x02,0x00,第八,九位均是0x00,最后一位是0x16;3) 校验和的形式来保证数据的正确,第十位就是第五到八位之和。4) 要求节点在接受数据时可以判断数据的第六位的数值与之相对的功能,并作出相应的功能,如复位。上位机则解析第9位的数值与之对应的状态。5)通过串口发送。程序结构框图,如图4所示:图 4 程序结构框图5.2主函数设计及流程图5.2.1全局变量需定义的全局变量:11 烟台大学毕业论文(设计)/定义铃声和测试功能的I/O口sbit l=P10; sbit j=P11; sbit cs=P33;/开始、关闭、测试、复位int k,k1,k2,k3,k4;/定

24、义按键unsigned char key;/通信协议变量unsigned char t,zhiling,dat,state,c;/向上位机发送用字符串int fs=0x68,0x05,0x00,0x68,0x02,0x00,0x0,0x0,0x0,x0,0x16,0xff;5.2.2主函数流程图程序设计分为两块:main函数与interrupt函数。在main函数的功能是:程序的初始化,并执行来自接受到的数据中的指令。interrupt函数的功能是:接收来自串口的数据以及对传感器和按键做出反应。在main函数中,初始化工作完成后,进入死循环检测标志位语句。在中断发生时,进入相应的中断服务,执行

25、其中的动作。如果传感器检测有人输出高电平,在进入外部中断 1,然后报警。如果有开始、测试等按键按下,执行对应的功能。如发生串口中断,将对应的标志位置1,然后返回。上述可得,main函数需为中断服务进行初始化。主程序流程图如图5示:12 烟台大学毕业论文(设计)图5 主函数流程图13 烟台大学毕业论文(设计)5.2.3函数设计为了方便阅读,在程序中,初始化定时器、串口中断、外部中断等服务以及其对标志位的响应的功能分别编为函数。以下为介绍:1)定时器和串口初始化TCON:中断服务的控制字。TCON控制字的高四位用于控制计时器,分别为溢出与中断标志、启动、停止。低四位则与外部中断有关。TCON的结构

26、,如表2。表2 TCON的结构位bit7TF1bit6bit5bit4bit3bit2bit1bit0位含义TR1TF0TROIE1IT1IE0ITOTF1:定时器1溢出标志位。溢出则TF置1,并产生中断申请。进入其中断函数, TF1自动清0。查询时,软件清零。TR1:定时器1运行控制位。TR1设置为0时,定时器1关闭。TR1为1则启动定时器还是计时器与GATE与INT1的有关。TF0:定时器0溢出标志。同TF1。TR0:定时器0运行控制位。同TR1。IE1:外部中断1请求标志位。INT1有中断信号时,IE1置1,并产生中断请求。进入中断后自动清零。IT1:外部中断1类型控制位。由软件设置其值

27、。选择中断触发方式。为 1时,INT1下降沿触发。为0时,低电平触发。IE0:外部中断0请求标志位。同IE1。IT0:外部中断1类型控制位。同IT1。TMOD是定时/计数器的控制字TMOD的高四位和低四位分别控制T1和T2的工作方式。其结构如表3示:表3 TMOD的结构位bit7bit6bit5bit4bit3bit2bit1bit0位含义GATEC/TM2MOGATEC/TM1MOM1/M0:M1和M0的值控制定时或者计数的方式,根据其值0和1的不同组合,有以下模式:M1M0=00:工作方式0。13位工作方式;14 烟台大学毕业论文(设计)M1M0=01:工作方式1。16位工作方式;M1M0

28、=10:工作方式2。8位自动重装工作方式;M1M0=11:工作方式3。只对T0起作用,2个互不影响的8位工作方式。C/T:用于选择计数还是定时。C/T=1,计数; C/T=0,定时。GATE:工作方式控制位,默认为零。 GATE=0时,TR0/TR1为1时,TO/T1开始工作。GATE=1时,此时 TR0和TR1的功能和 GTAE=0时的一样,并且只有当外部中断 INT0为1时T0/T1才开始工作;且INT0为0时停止工作,此项功能可以用来检测外部中断0引脚上的宽度。该设计中,T1为定时器。因为串口的波特率的频率为4800hz,即将定时器1的工作模式设为八位自动重载。设定晶振的频率为 12MH

29、Z,TH1和TL1的为0谁的定时时长为 256微秒。PCON=0x80,SMOD=1,则TH1=0xF3,TL1=0xF3。串口中断初始化函数:void CK(void)PCON=0x80;SCON = 0x50;/倍频波特率。/串口工作方式模式1。TMOD|= 0x20; / T1:产生波特率。TH1 = 0xF3; / 设置波特率。TL1 = 0xf3; ES =1;TR1=1; /T1运行控制,为1时开始定时。2)外部中断的初始化该设计中需要一个中断服务用于接受红外检测的高电平,选用INT1来接受TCON、IE、IP用于控制外部中断。寄存器IE可以控制是否屏蔽中断触发。 IE的每一位可由

30、软件来控制其值。 IE的结构如表4、表5示:表4 IE的结构位bit7bit6bit5bit4bit3bit2bit1bit0位含义EAXET2ESET1EX1ET0EX015 烟台大学毕业论文(设计)表5 IE各位的功能每一位值的作用位功能01某个中断源是否允许中断分别由各自的允许位确定EA中断总允许位。禁止一切中断ET2ES内部定时器2中断允许位。串行口中断允许位。禁止中断禁止中断禁止中断禁止中断禁止中断禁止中断允许中断允许中断ET1EX1ET0EX0内部定时器1中断允许位。外部中断1中断允许位。内部定时器0中断允许位。外部中断0中断允许位。允许中断允许中断允许中断允许中断寄存器IP为默认

31、值时,假设多个中断源申请中断,单片机内部会有一个中断优先级来决定谁优先产生中断。默认优先级(从低到高):T2、串口、T1、INT1、T0、INT0。设置IP的值可以改变其优先级,IP的结构如表6、表7:表6 IP的结构位bit7bit6bit5bit4bit3bit2bit1PT0bit0位含义XXPT2PSPT1PX1PX0表7 IP寄存器各位的功能值的作用位功能01PT2PS内部定时器2中断允许位。串行口中断允许位。设定个中断 设置各中断源为低优先 源为高优先PT1PX1PT0PX0内部定时器1中断允许位。外部中断1中断允许位。内部定时器0中断允许位。外部中断0优先级设定位。级级方案中,I

32、NT1和INT0的触发模式都是下降沿触发,则 IT1=1、IT2=1。由于要区分测试按键的中断信号和传感器的中断信号,需要将INT1的优先级高于INT0,PX1=1。外部中断初始化函数:void EX(void)IT0 = 1; IT1=1;/外部中断下降沿触发。16 烟台大学毕业论文(设计)EX0=1;/外部中断0开。EA = 1;PX1=1; /总中断开。/PX1=1,INT1为高优先级。3)接收按键的中断信号后的函数/*工作流程*/void liuc(void)if(irok)/按键按下标志位。cs=1;/置外部中断1为高电平。/键值收集函数Key_Scan();4)收集按键键值的函数收

33、集键值判断键值void Key_Scan()unsigned char keyValue = 0 , i; /保存键值/-检测按键-/if (GPIO_KEY != 0xFF)/检测按键是否按下Delay10ms(1); /消除抖动if (GPIO_KEY != 0xFF) /再次检测按键是否按下keyValue = GPIO_KEY;i = 0;while (i<50) && (GPIO_KEY != 0xFF) /检测按键是否松开Delay10ms(1);i+;if (keyValue != 0xFF)keyNum=keyValue;Ir_work( ); /5)根据

34、按键键值执行对应的函数17 烟台大学毕业论文(设计)流程图如图6示:图6 判定按键键值并执行的流程图其程序设计如下:/*判定按键键值并执行*/void Ir_work(void)switch(keyNum)/判断第三个数码值。/如果按1键,k1置1。case 0xFE:k1=1;k_1();break;case 0xFD:k2=1;k_2();break; /k2。case 0xFB:k3=1;k_3();break; /k3。case 0xF7:k4=1;k_4();break; /k4。default:break;k_1()为开始并发送信号函数。k_2()为结束并发送信号函数。k_3()为

35、测试并发送信号函数。k_4()为复位并发送信号函数。k_1()函数流程图:18 烟台大学毕业论文(设计)图7 流程图其函数设计如下:/*k1按下。k1=1,开始工作,k2=0*/void k_1(void)int i=0;fs6=1;fs7=0;fs8=1;fs9=4; /符合协议,以便发送。if(k1)/判断按钮按下。if(EX1!=1)/判断INT1,开则跳出,否则继续。/提示音。bell置1。bell=1; ring1();while(fsi!=0xff)SBUF=fsi;while(!TI); TI=0;i+;/向上位机发送数据k2=0; k1=0;/k1置0。k2置0。/外部中断1开

36、。EX1=1; /*k2按下。若k1=1,k2=1,则停止工作,k1=0*/19 烟台大学毕业论文(设计)void k_2(void)if(k2&&EX1)/符合协议,以便发送。/判断按钮按下,外部中断1开。/停止提示音。ring2();while(fsi!=0xff)SBUF=fsi;/上位机发送数据while(!TI); TI=0;i+;k1=0;k2=0;EX1=0;bell=1; /k1,K2置0。/禁止INT1中断,电铃不会响。/*k3按下。若k1=1,k3=1,则测试,k3=0。*/void k_3(void)/符合协议,以便发送。/判断按钮按下if(!k&

37、&k3) while(fsi!=0xff) /向上位机发送数据cs=1; delay(1); cs=0;delay(10); cs=1; /给INT1一个下降沿。k3=0;/k3置0。/*k4按下。若k1=1,k4=1void k_4(void) int n;if(EX1&&k4) n=15;while(n!=0)k4=0。*/符合协议,以便发送。/判断按钮按下。 bell=0; delay(20);bell=1; delay(20);n-;/复位指示while(fsi!=0xff)SBUF=fsi;while(!TI); TI=0;i+;/向上位机发送数据/k4置0。

38、delay(10);k4=0; Delay(x)为延时函数,延时x*40毫秒。20 烟台大学毕业论文(设计)6)串口接受数据函数上位机向串口发送数据,发送完成时将串口数据发送完成标志位置为 1。然后执行下一步对应的动作。其流程图与接收到按键中断并判断按键执行函数相似。函数设计如下:/*串口接收完成后处理函数*/void chul(void) js_flag=0;switch(zhiling)/判断第7个数据的值。case 0x01:k1=1;k_1();break; /k1=1则执行开始进程。case 0x02:k2=1;k_2();break; /k2=1则执行关闭进程。case 0x03:

39、k3=1;k_3();break; /k3=1则执行测试进程。case 0x04:k4=1;k_4();break; /k4=1则执行复位进程。default:break;7)主函数的设计/*-主函数-*/void main(void) CK();/串口初始化。/初始化外部中断。/初始化定时器。/循环EX();TIME();while(1)if(irok)liuc();if(js_flag)chul();21 烟台大学毕业论文(设计)5.3中断服务程序设计5.3.1外部中断 1中断服务函数INT1引脚接传感器报警信号以及测试按键函数。 INT1引脚变为低电平时进入中断服务,判断中断源是由测试还

40、是传感器触发,传感器触发则向上位机发送数据,按键触发则返回主程序。因为测试同样可以引起中断。编制流程图如图8示:图8 INT1服务函数流程图INT1函数如下:/*外部中断服务,红外检测传来信号,响铃并向 CC2530发送报警信号。如是测试按键则只响铃。*/void wbzd1(void) interrupt 2 int i=0;int n;TI=0;/标志位置0。if(k3=1&&k!=1)fs6=4;fs7=0;fs8=4;fs9=0x0a;n=80;22 烟台大学毕业论文(设计)while(n!=0) bell=0; delay(40);bell=1; delay(30);n-; /铃响,测试提示音。while(fsi!=0xff) /向上位

温馨提示

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

评论

0/150

提交评论