- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
Zigbee无线传感网技术与应用
厨房监控系统04
01了解串口通信原理03掌握温湿度传感器数据的获取05掌握单片机输出PWM信号的方法04了解AD采样方法02掌握串口使能方法学习目标Learningobjectives
任务二:厨房火灾报警系统
任务要求要求读者查看火焰传感器模块资料,实现CC2530单片机系统对数字量信号的采集,掌握接收PC串口信号的方法。
任务目标Missionobjectives01了解火焰传感器模块的结构03掌握接收串口信号的方法02掌握厨房火灾报警系统的调试
储备知识开关量输出是实现传感器将感应到的模拟或数字信号转换成一个开关量信号,再继而输出的一个功能。一般的开关量输出通过继电器实现,如单掷单刀,单掷双刀,双掷双刀等。该物理量只有两种状态,如开关的导通和断开的状态,继电器的闭合和打开,电磁阀的通和断,等等。开关量传感器发出的信号是数字信号,有断开和闭合两种状态,比如液位传感器开关就是一种常见的开关量传感器。当液位传感器低于设定值时,液位传感器开关断开(或闭合);当液位传感器高于设定值时,开关闭合(或断开)。对控制系统来说,由于CPU是二进制的,数据的每位有“0”和“1”两种状态,因此,开关量只要用CPU内部的一位即可表示,比如,用“0”表示开,用“1”表示关。1.什么是开关量
储备知识ZigBee火焰传感器模块由红外接收二极管及比较器电路构成,该模块只有4个接口引脚,分别为VCC、GND、DOUT、AOUT,其中VCC、GND为电路的供电端,DOUT为模块开关量输出端,输出高低电平信号,对应是否检测到火焰;AOUT为模拟量输出,输出的电压值会根据接收到的火焰强度而发生变化。2.ZigBee火焰传感器模块图:火焰模块
储备知识由电路图可知火焰传感器的Dout连接至P0.0的IO口,火焰传感器为数字量传感器代码与按钮类似。3.火焰传感器电路图
4.厨房火灾报警系统本任务所需软件已安装至电脑可直接使用。本任务所需硬件:下载器、ZigBee开发板、火焰传感器模块、5V电源适配器、USB下载线。环境准备任务实施
任务实施?获取厨房火焰传感器数据?如果有火焰则持续发送报警信息?当电脑发送0x01时停止报警任务要求编写代码步骤1:新建工程-工程名称为“厨房火焰报警系统”-保存-新建源程序.c文件名称为“main.c”-设置Opion-编写最简单的代码,代码如下所示。(新建工程具体步骤,不再重复介绍)4.厨房火灾报警系统#includeiocc2530.hvoidmain(){while(1){}}
任务实施步骤2:编写火焰传感器I/O宏定义,代码如下所示。4.厨房火灾报警系统步骤3:编写获取火焰传感器的状态代码并设置发送串口标志,根据电路图设置I/O口P0.0为输入。代码如下所示。//宏定义火焰传感器I/O口#defineflameP0_0#includeiocc2530.h#defineflameP0_0voidmain(){charflag=0;//声明标志P0DIR=~(0x01);while(1){if(flame==0)//如果有火焰{flag=1;//设置标志,便于发送串口循环}}}代码小贴士:代码:charflag=0;说明:程序设计时长用一个变量标示一些标志,flag表示一个标志,判断当标志为1时则不断执行所需代码。
任务实施步骤4:编写获取串口接收、发送与初始化数据代码,代码与任务一类似,在U0CSR开启接收使能,URX0IE=1开启中断使能,代码如右所示。4.厨房火灾报警系统voidsend(unsignedchars){U0DBUF=s;//发送awhile(!UTX0IF);UTX0IF=0;}voidsendstr(unsignedchar*s,unsignedcharlen){intcount=0;while(--len){send(*(s+count));count++;}}voidUartInit(){P0SEL|=0x0c;//设置外设PERCFG=0x00;//设置I/O位置U0CSR|=0xc0;//设置UART模式使能接收U0BAUD=59;//设置波特率为9600U0GCR=9;//设置波特率为9600;
您可能关注的文档
- ZigBee无线传感网技术与应用 课件 项目二任务二 变化的IO口 .pptx
- ZigBee无线传感网技术与应用 课件 项目三任务二 打造更灵敏的按键 .pptx
- ZigBee无线传感网技术与应用 课件 项目三任务三 数字电子时钟制作.pptx
- ZigBee无线传感网技术与应用 课件 项目四任务一 厨房温湿度监控系统.pptx
- ZigBee无线传感网技术与应用 课件 项目一任务一 工欲善其事,必先利其器.pptx
- ZigBee无线传感网技术与应用 课件 项目二任务三 定时控制空调排气系统.pptx
- ZigBee无线传感网技术与应用 课件 项目二任务一 测试输出信号.pptx
- ZigBee无线传感网技术与应用 课件 项目六任务二 无线智能窗帘控制系统.pptx
- ZigBee无线传感网技术与应用 课件 项目六任务三 智能家居传感网.pptx
- ZigBee无线传感网技术与应用 课件 项目六任务一 基于OSAL系统下温度监控.pptx
文档评论(0)