智能安防系统设计.doc_第1页
智能安防系统设计.doc_第2页
智能安防系统设计.doc_第3页
智能安防系统设计.doc_第4页
智能安防系统设计.doc_第5页
免费预览已结束,剩余37页可下载查看

下载本文档

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

文档简介

编号 毕毕业业论论文文 题 目智能安防系统设计 学生姓名 学 号 院 系 专 业 摘 要 I 摘摘 要要 近年来随着社会的不断进步与发展 尤其是物联网的出现 人们的生活水 平日益提高 生活方式也发生了很大的改变 因此作为社会的基本单元 家庭 财产的安全问题就显的尤为重要 这一问题的出现使得智能安防系统与居民的 日常生活越来越紧密 如果发现有陌生人侵入 为了防止和减少危害 保护人 身和财产安全 红外传感器就能给人们提前警示 随着 信息时代 的到来 传感器技术得到了显著的进步 其应用领域越来越广泛 对其需求越来越迫切 要求也越来越高 但是目前的智能安防系统大多数存在功能简单 容易破坏 灵敏度不高等问题 而性能好 使用方便的一般存在价格高的问题 综合以上 的两种问题 本文采用红外传感器 STC89C52 单片机和矩阵键盘设置密码来识 别是否是陌生人侵入 设计一套家庭智能安防系统 通过单片机控制报警系统 在检测到有陌生人侵入 单片机通过检测到该异常情况实现自动报警功能 实 现了对家庭的安防作用 关键词关键词 红外传感器 液晶显示 温度传感器 蜂鸣器 矩阵键盘 Abstract II AbstractAbstract In recent years with the progress and development of the society especially the emergence of the Internet of things people s living standard is increasing day by day life style and great changes have taken place so as the basic unit of society in the security problems of family property on the significant particularly important The emergence of the problem makes the intelligent security systems and residents daily life more and more closely if it is found that a stranger invasion in order to prevent and reduce the harm to protect personal and property safety infrared sensors can give people early warning With the coming of the information age sensor technology has been significant progress its application field is more and more widely has become more and more urgent demand for it demand is becoming more and more high but the most intelligent security systems function is simple easy to damage the sensitivity is not high but performance is good easy to use commonly exists the problem of high price Integrated the above two problems this article USES the infrared sensor STC89C52 single chip microcomputer and matrix keyboard password to identify whether the stranger intrusion design a set of home intelligent security system alarm system by single chip microcomputer control the invasion detected with strangers microcontroller through detect the abnormal situation to realize automatic alarm function realizes the security role of family Keywords Infrared sensor LCD display temperature sensor buzzer matrix keyboard 目 录 III 目目 录录 摘摘 要要 I ABSTRACT II 第一章第一章 绪论绪论 1 1 1 研究背景 1 1 2 智能安防系统的发展现状 1 1 3 研究的主要内容 2 第二章第二章 系统设计方案系统设计方案 3 2 1 系统功能需求分析 3 2 1 1 温度监测 3 2 1 2 非法入侵监测 3 2 2 功能要求 3 2 2 1 系统总体要求 3 2 2 2 硬件设计要求 3 2 2 3 软件设计要求 3 2 3 系统的可行性分析 4 第三章第三章 系统硬件设计系统硬件设计 5 3 1 总体设计 5 3 2 主控制器模块 5 3 2 1 中央处理单元 STC89C52 5 3 2 2 晶振电路 7 3 2 3 复位电路 7 3 2 4 程序存储器选择电路 7 3 3 显示模块 8 3 3 1 液晶显示 JM12864 简介 8 3 3 2 液晶显示 JM12864 引脚及功能 8 3 3 3 内部存储空间 9 3 3 4 液晶显示 JM12864 的指令集 9 3 4 时钟 DS1302 模块 11 3 4 1 时钟 DS1302 简介 SPI 总线 11 3 4 2 DS1302 引脚及功能 11 3 4 3 内部存储空间 11 3 4 4 DS1302 初始化 一般程序设计流程 12 3 5 温度传感器 DS18B20 模块 13 3 5 1 DS18B20 简介 单线总线 13 3 5 2 DS18B20 引脚及功能 13 3 5 3 DS18B20 内部结构 14 3 5 4 DS18B20 温度值的转换 15 3 5 5 DS18B20 操作流程 15 3 6 数据存储 AT24C02 模块 16 3 6 1 数据存储 AT24C02 简介 IIC 总线 16 目 录 IV 3 6 2 AT24C02 存储模块的引脚及功能 17 3 6 3 IIC 总线协议定义 17 3 6 4 AT24C02 存储模块的读写操作 18 3 7 4 4 矩阵键盘模块 18 3 7 1 矩阵键盘简介 18 3 7 2 矩阵键盘工作原理 18 3 7 3 键盘的消抖方法 19 3 8 蜂鸣器模块 19 3 8 1 蜂鸣器简介 19 3 8 2 蜂鸣器电路原理图 19 3 9 红外传感器模块 19 3 9 1 红外传感器简介 19 3 9 2 红外传感器原理 19 3 9 3 红外传感器特点 20 第四章第四章 系统软件设计系统软件设计 21 4 1 时钟 DS1302 时序图 21 4 1 1 单字节读操作 21 4 1 2 单字节写操作 21 4 1 3 DS1302 时序图 22 4 2 温度传感器 DS18B20 时序图 22 4 2 1 初始化 复位脉冲 应答脉冲 22 4 2 2 写时序 写 0 写 1 22 4 2 3 读时序 读 0 读 1 23 4 3 应用软件设计流程图 23 4 3 1 主程序流程图 23 4 3 2 矩阵键盘功能划分图 25 4 4 系统主要程序 25 4 4 1 系统主程序 25 4 4 2 矩阵键盘程序 27 第五章第五章 系统的调试与实现系统的调试与实现 29 5 1 下载运行与显示结果 29 5 2 分步调试步骤 32 第六章第六章 总结总结 37 致致 谢谢 38 参考文献参考文献 39 1 第一章第一章 绪论绪论 随着人们生活水平的不断提高 特别是物质生活水平的提高 单片机控制 无疑是人们追求的目标之一 它所给人们带来的方便也是不可否定的 但人们 对它的要求越来越高 要为现代人工作 科研 生活 提供更好更方便的设施 就需要从单片机技术入手 一切向着数字化控制 智能化控制方向发展 1 11 1 研究背景研究背景 随着光电信息技术 微电子技术 微计算机技术与视频图像处理技术等的 发展 传统的安防系统也正由数字化 网络化 而逐步走向智能化 这种智能 化是指在不需要人为干预的情况下 系统能自动实现对监控画面中的异常情况 进行检测 识别 在有异常时能及时作出预警或报警 现在人们越来越重视个人和财产安全 利用系统实现报警功能是智能小区 的基本标准之一 由于现在社会经济的发展楼房逐渐取代了平房 所以智能安 防报警系统可以极大的减少社会的财产损失 现已经掌握了烟雾 火 门磁 指纹识别采集技术 在防护方面 对指纹图像进行处理 构成门禁系统 加强 了防护功能 安防系统中报警是一种性价比比较高的装置 涉及到机器的功能 可靠性以及在使用过程中是否方便 便于编程等一系列的问题 采取单片机智 能控制 节约成本 使产品达到交互式与智能化 1 21 2 智能安防系统的发展现状智能安防系统的发展现状 人类的居住环境经过几次革命性的变化 原始人居住在窑洞里 后来渐渐 的学会了用自己的双手 建造可以能遮风挡雨的屋子 进入了 21 世纪 人类步 入了信息时代 智能化住宅就是信息化社会的产物 我国从 70 年代初期开始研制各种报警器 生产型号多样 品种较齐全 应 用范围也由单一的炼油系统扩展到几乎所有危险作业环境的各种类型报警器 产品数量也在不断增加 随着企业和住宅小区需求的凸现 智能安防当前面临 全新的发展契机 由于智能安防行业的特殊性 国家对智能安防产业的发展一 直都给予政策上的鼓励 在国家 十二五 发展规划中 将安防规划单独列明 明确指出要 加强公共安全体系建设 适应公共安全形势变化的新特点 推动 建立主动防控与应急处置相结合 传统方法与现代手段相结合的公共安全体系 可见安防产业已经受到国家的重视并有相应政策上的支持 这将对安防业的发 展起到不可估量的推动作用 根据 中国安防行业 十二五 发展规划 2011 2015 到 十二五 末期 我国的安防产业规模将实现翻一番的总体目标 到 2015 年 我国安防产业总产值将达到 5000 亿元 因此我国安防智能化产业正在 面临巨大的市场机遇 具有广阔的市场空间 近些年来 全国各地的平安城市建设如火如荼得展开 建设思路也逐渐向 2 数字化 网络化 集成化 智能化的方向发展 伴随着人们对建筑安防系统的 愈发重视和建筑业及建筑智能化行业的积极发展 传统建筑的智能化改造以及 新建建筑的智能化投资建设进入了快速发展的阶段 作为建筑智能化的一个重 要的子系统 安防智能化市场将迎来巨大的发展机遇 市场前景非常广阔 预 计到 2015 年 我国安防智能化市场规模将达到 1 609 6 亿元 1 31 3 研究的主要内容研究的主要内容 智能安防系统可以简单理解为图像的传输和存储 数据的存储和处理准确 而选择性操作的技术系统 就智能化安防系统来说 一个完整的智能安防系统 主要包括门禁 报警和监控三大部分 本设计主要是三大部分中的报警部分 主要是通过身份识别 输入正确的 密码 才能进入 防止陌生人的侵入 系统硬件设计中包括键盘模块 显示模 块 报警模块 系统软件设计介绍了系统软件的总体架构 各组成部分的程序 设计 包括在室内主人输入密码后可以修改显示的时间 星期 温度值的程序 利用单片机的知识和各种功能芯片完成本次设计 3 第二章第二章 系统设计方案系统设计方案 2 12 1 系统功能需求分析系统功能需求分析 本次设计的智能安防系统主要功能是防止陌生人侵入 从而保护人身和财 产安全 减少损失 为用户提供良好的生活环境 下面具体针对智能安防系统 来介绍系统的功能 2 1 12 1 1 温度监测温度监测 温度是人体对周围环境最敏感的要素之一 温度传感器在用户的设置下会 自动的采集室内温度信息 并将采集到的信息送到显示模块显示 如果温度值 超过 30 摄氏度时 蜂鸣器就会自动报警 从而实现室内温度的控制 保证舒适 的居住环境 2 1 22 1 2 非法入侵监测非法入侵监测 为了提高居住人员的生命财产安全 将红外传感器安装在门 窗 车库 花园等隐蔽的地方 实时监测非法入侵情况的发生 当监测到非法入侵事件时 传感器信号被发送到管理中心 管理中心将启动报警系统 直到有人按下开关 就停止报警 保障家庭财产不受损失 2 22 2 功能要求功能要求 2 2 12 2 1 系统总体要求系统总体要求 1 要求该系统在不影响人们正常生活的情况下正常使用 在有人和无人的情 况下都能正常使用 2 系统要求在险情出现时 自动实现报警直到有人按掉报警开关就停止报警 3 要求系统灵敏度高 监测能力强 2 2 22 2 2 硬件设计要求硬件设计要求 1 小型化 为了保证设备外观漂亮 应尽量保证节点的体积小型化 2 低功耗 由于设备需要长期在无人值守的情况下工作 所以要使用低功耗 的器件以节约能源延长使用寿命 3 可靠性 为了保障各监测节点能够正常工作 必须提高硬件的可靠性 4 可扩展性 当有新的监测对象引入该系统时 不同类型的传感器模块的信 号形式与大小可能制约系统的兼容性 系统的硬件设计必须具有较高的可 扩展性 2 2 32 2 3 软件设计要求软件设计要求 1 模块化结构 保证软件设计的各部分采用模块化结构设计 任何一个模块 的更新和改进都不会影响到其他模块 4 2 严格遵守各总线的通信协议 2 32 3 系统的可行性分析系统的可行性分析 智能安防系统是通过一定的手段对被控制的场合环境进行看管 异常情况 发生就自动报警 它是检测系统与报警系统的紧密结合 在智能系统中安全防 范有着非常重要的意义 直接决定了该系统的智能水平 基于智能报警系统是 一种廉价的 可靠的安防报警方式 通过单片机的控制和蜂鸣器报警完成整个 报警过程 所以本系统的初步设计方案理论上可行 而且设计的可扩展性前景 可观 5 第三章第三章 系统硬件设计系统硬件设计 3 13 1 总体设计总体设计 智能安防系统总体设计的控制器采用单片机 STC89C52 温度传感器采用 DS18B20 时钟芯片 DS1302 实现实时时间的变化 用液晶显示器 JM12864 实 现温度和时间的显示 数据存储 AT24C02 来存储开门和修改时间的密码 红外 传感器和蜂鸣器实现报警检测 矩阵键盘实现密码的设置 硬件系统共由 8 个 模块组成 以实现智能安防系统的设计 如图 3 1 所示 图 3 1 系统整体框图 3 23 2 主控制器模块主控制器模块 单片机最小系统包括单片机 STC89C52 晶振电路 复位电路 工作电 源电路 程序存储器选择电路五个部分 3 2 13 2 1 中央处理单元中央处理单元 STC89C52STC89C52 STC89C52 是一种带 8K 字节闪烁可编程可擦除只读存储器 FPEROM Falsh Programmable and Eras able Read Only Memory 低电压 高性能的 CMOS8 位微处理器 俗称单片机 单片机的可擦除只读存储器可以反复擦除 1000 次 与工业标准的 MCS 51 指令集和输出管脚相兼容 由于将多功能 8 位 CPU 和闪烁存储器组合在单个芯片中 STC 的 STC89C52 是一种高效微控制器 6 STC89 单片机为嵌入式控制系统提供了一种灵活性高且价廉的方案 STC89C52 单片机存储器结构采用的是哈佛型结构 程序存储器 ROM 和数据存储器 RAM 是分开的 有各自的寻址系统和控制信号 分别用不同 的指令操作 ROM 用来存放编写的程序和常用表格 RAM 用来存放程序运行 的数据和结果 STC89C52提供以下标准功能 4K字节Flash闪速存储器 128字节内部 RAM 32个I 0口线 看门狗 WDT 两个16位定时 计数器 5个中断源 一 个全双工串行通信口 片内振荡器及时钟电路 同时 支持两种节电工作模式 空闲方式 停止CPU的工作 但允许RAM 定时 计数器 串行通信口及中断系 统继续工作 掉电方式 保存RAM中的内容 但振荡器停止工作并禁止其它所 有部件工作直到下一个硬件复位 STC89C52单片机的引脚如图3 2所示 图 3 2 STC89C52 单片机的引脚 P0 P3 口均是并行 I O 口 其中的 P0 口和 P2 口除了可以进行数据的输入 输出外 通常还用来构建系统的数据总线和地址总线 P0 口为真正的双向口 P1 P3 口为准双向口 其中 P3 口还有第二功能 为 5 个中断源 两个定时器 两个外部中断 串行口 的引脚接口 7 3 2 23 2 2 晶振电路晶振电路 晶振有两种 6 MHZ 和 12MHZ 本设计采用 12MHZ 如图 3 3 所示 图 3 3 晶振电路 3 2 33 2 3 复位电路复位电路 复位是单片机非常重要的工作状态 任何单片机系统都是由复位状态进入 正常工作状态 复位操作的条件是加两个机器周期以上的高电平 复位后 CPU 的状态如下 PC 的值为 0000H 除 SP 的值为 07H 一般的特殊功能寄存器的 有效位都为 0 P0 P3 口锁存器的值为 FFH 是为作为输入口而准备的 复位电路有两种方式 上电复位和按键复位 本设计采用按键复位 如图 3 4 所示 图 3 4 复位电路 3 2 43 2 4 程序存储器选择电路程序存储器选择电路 当 EA 1 时 CPU 从芯片的内部的 ROM 中取指令运行 但超过 4KB 范围 的程序 也从外部扩展的 ROM 中取得 EA 0 时 只从外部扩展的 ROM 取指 令运行 8 3 33 3 显示模块显示模块 3 3 13 3 1 液晶显示液晶显示 JM12864JM12864 简介简介 JM12864 液晶显示模块 可以显示芯片内给定的 8 4 行 16 16 点阵的汉 字和图形 还可以显示自定义的汉字与图形 利用该模块灵活的接口方式和简 单 方便的操作指令 可构成人机交互图形界面 3 3 23 3 2 液晶显示液晶显示 JM12864JM12864 引脚及功能引脚及功能 1 液晶显示 JM12864 引脚如图 3 5 所示 图 3 5 液晶显示 JM12864 引脚 2 管脚功能描述如下 共 20 个引脚 1 号 VSS 模块的电源地 2 号 VDD 模块的电源正端 3 号 V0 LCD 驱动电压输入端 4 号 RS CS 并行的指令 数据选择信号 串行的片选信号 高电平 选择数据存储器 低电平 选择指令存储器 5 号 R W SID 并行的读写选择信号 串行的数据口 高电平 读操 作 低电平 写操作 6 号 E CLK 并行的使能信号 串行的同步时钟 高 低 配合 W 进 行写数据或指令 高电平时配合 R 进行读数据或指令 7 14 号 DB0 DB7 数据线 0 7 15 号 PSB 并 串行接口选择 H 并行 L 串行 16 和 18 号是 NC 空脚 9 17 号 RET 复位 低电平有效 19 号 LED A 背光源正极 LED 5V 20 号 LED K 背光源负极 LED OV 3 3 33 3 3 内部存储空间内部存储空间 液晶显示 JM12864 内部存储空间有三种存储方式 1 字型产生ROM CGROM 字型产生ROM CGROM 提供8192个常用字符 此触发器是用于模块屏 幕显示开和关的控制 屏幕显示开DDRAM 的内容就显示在屏幕上 2 字型产生 RAM CGRAM 允许用户自定义 字型产生 RAM 提供图象定义 造字 功能 可以提供四组 16 16 点的自定 义图象空间 使用者可以将内部字型没有提供的图象字型自行定义到 CGRAM 中 便可和 CGROM 中的定义一样的通过 DDRAM 显示在屏幕中 3 显示数据RAM DDRAM 模块内部显示数据RAM提供64 2个位元组的空间 最多可控制4行16字 64个字 的中文字型显示 当写入显示数据RAM时 可分别显示CGROM与 CGRAM的字型 三种字型的选择 由在DDRAM中写入的编码选择 在 0000H 0006H的编码中 其代码分别是0000 0002 0004 0006共4个 将选 择CGRAM的自定义字型 02H 7FH的编码中将选择半角英数字的字型 字符显示RAM在液晶模块中的地址80H 9FH 字符显示的RAM的地址与 32 8 4 个字符显示区域有着一一对应的关系 其对应关系如表3 1所示 共32 个 字节的RAM缓冲区 表 3 1 DDRAM 与显示位置对应表 80H 81H 82H 83H 84H 85H 86H 87H 90H 91H 92H 93H 94H 95H 96H 97H 88H 89H 8AH 8BH 8CH 8DH 8EH 8FH 98H 99H 9AH 9BH 9CH 9DH 9EH 9FH 3 3 43 3 4 液晶显示液晶显示 JM12864JM12864 的指令集的指令集 模块控制芯片提供两套控制命令 基本指令和扩充指令 基本指令有 11 条 扩充指令有 7 条不做要求 本设计用到基本指令中的三条 分别是 第一条清 除显示 第二条显示状态开关 第三条功能设定 其中忙检测 BF 标志提供内部 工作情况 BF 1 表示模块在进行内部操作 此时模块不接受外部指令和数据 10 BF 0 时 模块为准备状态 随时可接受外部指令和数据 下图为基本指令表以 及三条指令的说明 如表 3 2 所示 表 3 2 基本指令表 1 清除显示 功能 清除显示屏幕 把DDRAM位地址计数器调整为 00H 2 显示状态 开 关 功能 D 1 整体显示ON C 1 游标ON B 1 游标位置ON 3 功能设定 11 功能 DL 1 必须设为1 RE 1 扩充指令集动作 RE 0 基本指令集动 作 3 43 4 时钟时钟 DS1302DS1302 模块模块 3 4 13 4 1 时钟时钟 DS1302DS1302 简介 简介 SPISPI 总线 总线 DS1302 是美国 DALLAS 公司推出的一种高性能 低功耗的实时时钟芯片 采用 SPI 三线接口与 CPU 进行同步通信 并可采用突发方式一次传送多个字节 的时钟信号和 RAM 数据 实时时钟可提供秒 分 时 日 星期 月和年 一 个月小于 31 天时可以自动调整 且具有闰年补偿功能 采用双电源供电 主电 源和备用电源 可设置备用电源充电方式 提供了对后背电源进行涓细电流 充电的能力 3 4 23 4 2 DS1302DS1302 引脚及功能引脚及功能 1 DS1302 引脚如图 3 6 所示 图 3 6 DS1302 引脚 2 管脚功能描述如下 X1 X2 32 768KHz 晶振管脚 GND 接地 RST 复位脚 I O 数据输入 输出引脚 SCLK 串行时钟 Vcc1 Vcc2 电源供电管脚 12 3 4 33 4 3 内部存储空间内部存储空间 DS1302 的所有功能都是通过对其内部地址进行操作实现的 其内部存储空 间分为 2 部分 80H 91H 为功能控制单元 C0H FDH 为普通存储单元 所有单 元地址中最低位为 0 表示将对其进行写数据操作 最低位为 1 表示将对其进行 读数据操作 1 特殊存储单元 80H 91H 存放 DS1302 的时间相关的数据 用户不能用来 存放自己的数据 如表 3 3 所示 表 3 3 特殊存储单元 寄存器寄存器 名名 命令字节命令字节范范 围围位内容位内容 读读写写D7D6D5D4D3 D2 D1 D0 秒81H80H00 59CH秒的十位秒的个位 分83H82H00 590分的十位分的个位 时85H84H 01 12 或 00 23 12 240A PHR小时个位 日87H86H01 3100日的十位日的个位 月89H88H01 120000 1月的个位 星期8BH8AH01 0700000星期几 年8DH8CH00 99年的十位年的个位 注意 1 秒寄存器的 CH 位 置 1 时钟停振 进入低功耗态 置 0 时钟工作 2 小时寄存器的 D7 位 置 1 12 小时制 D5 置 1 表示上午 置 0 表示下午 置 0 24 小时制 此时 D5 D4 组成小时的十位 2 普通存储单元 C0H FDH 是提供给用户的存储空间 如表 3 4 所示 表 3 4 普通存储单元 命令字节命令字节位内容位内容 寄存器名寄存器名 读读写写 范围范围 D7D6 D5D4D3D2D1D0 写保护 8FH8EH00H 80H WP0 涓流充电91H90H TCSDSRS 时钟突发BFH BEH RAM 突发FFHFEH RAM0C1HC0H00H FFH 00H FFH RAM 数据 13 RAM30 FDH FCH 00H FFH 注意 1 WP 写保护位 置为 1 时 写保护 置为 0 时 未写保护 2 TCS 1010 时慢充电 DS 为 01 选一个二极管 为 10 选 2 个二极管 11 或 00 禁止充电 3 4 43 4 4 DS1302DS1302 初始化 一般程序设计流程 初始化 一般程序设计流程 1 注意对 DS1302 的读写操作必须在 RST 为 1 时才允许操作 2 确认对 DS1302 是读操作还是写操作 写操作时必须关闭写保护寄存器的写 保护位 0 x00 读操作时跟此寄存器无关 3 确认是否需要对备用电池充电操作 4 确定采用单字节操作还是突发模式操作 单字节读写操作 a 写操作 先写地址 RW 0 允许写数据的单元地址 然后写数据 b 读操作 先写地址 RW 1 允许读数据的单元地址 然后读数据 突发模式读写操作 时间 日历特殊寄存器必须一次读写 8 个寄存器 RAM 普通寄存器可一次读写 1 31 个寄存器 a 写操作 先写地址 0 xBE 特殊 0 xFE 普通 然后写多个数据 8 个 特殊 1 31 普通 b 读操作 先写地址 0 xBF 特殊 0 xFF 普通 然后读多个数据 8 个 特殊 1 31 普通 5 读写操作完毕 写操作完成后必须打开写保护寄存器的写保护位 0 x80 3 53 5 温度传感器温度传感器 DS18B20DS18B20 模块模块 3 5 13 5 1 DS18B20DS18B20 简介 单线总线 简介 单线总线 DS18B20 数字温度计是 DALLAS 公司生产的 1 Wire 即单总线器件 具 有线路简单 体积小的特点 因此用它来组成一个测温系统 具有线路简单和 容易操作的优点 在一根通信线 就可以挂很多这样的数字温度计 十分方便 3 5 23 5 2 DS18B20DS18B20 引脚及功能引脚及功能 1 DS18B20 引脚如图 3 7 所示 14 图 3 7 DS18B20 引脚 2 管脚功能描述如下 GND 电压地 外接电源地引脚 DQ 数据输入 输出引脚 VDD 电源电压 外接电源输入引脚 NC 空引脚不需连接 3 5 33 5 3 DS18B20DS18B20 内部结构内部结构 DS18B20 共有三种形态的存储器分别为 ROM 只读存储器 8 个字节 RAM 数据暂存器 9 个字节 EEPROM 非易失性存储器 3 个字节 1 DS18B20 内部结构如图 3 8 所示 15 图 3 8 DS18B20 内部结构 2 ROM 只读存储器 用于存放 DS18B20 的 ID 编码 其前 8 位是单线系列编码 DS18B20 的编 码是 28H 后面 48 位是芯片唯一的序列号 最后 8 位是以上 56 的位的 CRC 码 冗余校验 DS18B20 共 8 个字节 64 位 ROM 数据在出产时设置不由 用户更改 3 RAM 数据暂存器 用于内部计算和数据的存取 数据在掉电后丢失 DS18B20 共 9 个字节 RAM 每个字节为 8 位 4 EEPROM 非易失性存储器 用于存放长期需要保存的数据 上下限温度报警值和用户配置寄存器 DS18B20 共 3 个字节的 EEPROM 并在 RAM 都存在镜像 以方便用户操作 3 5 43 5 4 DS18B20DS18B20 温度值的温度值的转换转换 DS18B20 可完成对温度的测量 以 12 位转化为例 用 16 位符号扩展的二 进制补码读数形式提供 以 0 0625 LSB 形式表达 其中 S 为符号位 这 12 位 转化后得到的 12 位数据 存储在 DS18B20 的两个 8 比特的 RAM 中 二进制中 的前面 5 位是符号位 如下所示 16 1 如果测得的温度大于 0 前 5 位为 0 只要将测到的数值乘于 0 0625 即可得 到实际温度 如下所示 25 0625 0000 0001 1001 00010191h 2 如果温度小于 0 前 5 位为 1 测到的数值需要取反加 1 再乘于 0 0625 即可 得到实际温度 如下所示 25 0625 1111 1110 0110 1111FE6Fh 3 5 53 5 5 DS18B20DS18B20 操作流程操作流程 若要读出当前的温度数据我们需要执行两次工作周期 第一个周期为复位 跳过 ROM 指令 0 xCC 执行温度转换存储器操作指令 0 x44 等待 800uS 温度转换时间 紧接着执行第二个周期为复位 跳过 ROM 指令 0 xCC 执行 读 RAM 的存储器操作指令 0 xBE 读数据 最多为 9 个字节 中途可停止 只读简单温度值则读前 2 个字节即可 读当前的温度是主机 单片机 控制 DS18B20 完成的 只有完成复位 发 送 ROM 指令 发送 RAM 指令这三步 才能对 DS18B20 进行预定的操作 复 位要求主 CPU 将数据线下拉 500 微秒 然后释放 当 DS18B20 收到信号后等待 16 60 微秒左右 后发出 60 240 微秒的存在低脉冲 主 CPU 收到此信号表示 复位成功 DS18B20 操作流程图如图 3 9 所示 17 图 3 9 DS18B20 操作流程图 1 控制器发送复位信号 首先我们必须对 DS18B20 芯片进行复位 复位就是由控制器 单片机 给 DS18B20 单总线至少 480us 的低电平信号 2 DS18B20 回复存在脉冲应答 在复位电平结束之后 控制器应该将数据单总线拉高 以便于在 15 60us 后 接收存在脉冲 存在脉冲为一个 60 240us 的低电平信号 至此 通信双方已经 达成了基本的协议 3 控制器发送 ROM 指令 ROM 指令共有 5 条 每一个工作周期只能发一条 ROM 指令为 8 位长度 单总线上可以同时挂接多个器件 并通过每个器件上所独有的 ID 号来区别 4 控制器发送存储器操作指令 操作指令为 8 位 共 6 条 存储器操作指令的功能是命令 DS18B20 作什么 样的工作 是芯片控制的关键 5 执行或数据读写 指令执行或数据的读写 要依存储器操作指令而定 3 63 6 数据存储数据存储 AT24C02AT24C02 模块模块 3 6 13 6 1 数据存储数据存储 AT24C02AT24C02 简介简介 IIC IIC 总线总线 AT24C02 提供 2k 位的串行电可擦写可编程只读存储器 EEPROM 组织 形式为 256 字 8 位字长 采用 IIC 总线接口 仅使用两根连线 数据线 时钟 线 便可以实现全双工同步数据传输 18 3 6 23 6 2 AT24C02AT24C02 存储模块的引脚及功能存储模块的引脚及功能 1 AT24C02 引脚如图 3 10 所示 图 3 10 AT24C02 引脚 2 管脚功能描述如下 A0 A1 A2 芯片的引脚地址和页面选择输入 VCC GND 芯片的供电引脚 SCL IIC 总线接口的串行时钟线 SDA IIC 总线接口的串行数据线 WP 写保护引脚 3 6 33 6 3 IICIIC 总线协议定义总线协议定义 1 只有在总线空闲时才允许启动数据传送 时钟线与数据线都为高电平时为 空闲信号 2 在数据传送过程中 当时钟线为高电平时数据线必须保持稳定状态 数据 线的高或低电平状态只有在 SCL 时钟线是低电平时才能改变 3 起始信号 时钟线保持高电平期间 数据线电平由高 低的跳变 开始传送数据 4 停止信号 时钟线保持高电平期间 数据线电平由低 高的跳变 结束传送数据 5 起始信号和停止信号类型图如图 3 11 所示 图 3 11 起始信号和停止信号 19 3 6 43 6 4 AT24C02AT24C02 存储模块的读写操作存储模块的读写操作 读写操作要严格按照时序图的要求进行操作 高位在前 低位在后 上升 沿数据写入 下降沿数据读出 1 读操作 读字节操作 分为 立即 当前地址读多字节操作 选择 随机地址读多字节操作 读页操作 顺序 连续地址读操作 2 写操作 字节写操作 顺序 地址信息 存储单元的字节地址 数据 页写操作 AT24C02 8 字节 字节多于 8 个会自动覆盖前面所写入的单 元 在写操作完成后 需要一定的延时来完成内部写周期 也可以进行忙检测 否则操作就会失败 3 73 7 4 44 4 矩阵键盘模块矩阵键盘模块 3 7 13 7 1 矩阵键盘简介矩阵键盘简介 4 4 的矩阵式键盘由 4 根行线和 4 根列线交叉构成 按键位于行列的交叉点 上 就构成了 16 个按键 如图是 16 个按键的矩阵式键盘 分别定义为 0 9 的数 字键与其他的功能键 如图 3 12 所示 图 3 12 矩阵式键盘 3 7 23 7 2 矩阵键盘工作原理矩阵键盘工作原理 采用行扫描法 判断键盘中是哪个按键按下 先将某一条行线置为低电平 然后检测列线的状态 只要有一列的电平为低 则表示键盘中有键被按下 若 20 所有列线均为高电平 则键盘中无键按下 最后读取键盘的值 确定是 16 个按 键中的某个按键被按下 3 7 33 7 3 键盘的消抖方法键盘的消抖方法 机械式按键按下或释放时 由于机械弹性作用的影响 通常有一定时间的 机械抖动 抖动时间与触点材料的机械特性有关 一般为 5 10ms 然后才能稳 定下来 消除抖动有两种方法 1 硬件消抖 通常用稳态电路或滤波电路 2 软件消抖 一般采用软件延时 延时时间为 10ms 3 83 8 蜂鸣器模块蜂鸣器模块 3 8 13 8 1 蜂鸣器简介蜂鸣器简介 蜂鸣器是一种一体化结构的电子讯响器 采用直流电压供电 广泛应用于 计算机 打印机 复印机 报警器 电子玩具 汽车电子设备 电话机 定时 器等电子产品中作发声器件 在单片机应用的设计上 很多方案都会用到蜂鸣 器 大部分都是使用蜂鸣器来做提示或报警 3 8 23 8 2 蜂鸣器电路原理图蜂鸣器电路原理图 蜂鸣器驱动电路一般有 4 个部分 一个三极管 一个蜂鸣器 一个续流二 极管和一个电源滤波电容 如图 3 13 所示 图 3 13 蜂鸣器驱动电路 3 93 9 红外传感器模块红外传感器模块 3 9 13 9 1 红外传感器简介红外传感器简介 红外传感系统是用红外线为介质的测量系统 红外传感技术已经在现代科 技 国防和工农业等领域获得了广泛的应用 本设计采用的是人体红外传感器 一般用在企业 宾馆 商场 库房等敏感区域 安全区域和报警系统中 不但 适用于防盗报警场所 也适于对人体伤害极为严重的高压电及 X 射线 射线 工业无损检测 21 3 9 23 9 2 红外传感器原理红外传感器原理 1 实物图 红外传感器一般有 3 个部分 接地引脚 接电源引脚和一个控制引脚 如 图 3 14 所示 图 3 14 红外传感器 2 工作原理 一旦有人侵入探测区域内 人体红外辐射通过部分镜面聚焦 并被热释电 元接收 由于两片热释电元接收到的热量不同 热释电也不同 不能抵消 于 是就输出检测信号 3 9 33 9 3 红外传感器特点红外传感器特点 1 人体红外线传感器的功耗很小 能长期可靠工作 同时由于其不发射任何类 型的辐射信号 不易被常规手段侦测到 所以在安全监控领域得到大量使 用 2 人体红外线传感器容易受各种热源 光源 射频辐射的干扰 其穿透力也差 3 人体的红外辐射容易被各种物体遮挡 并且当环境温度和人体温度接近时 探测灵敏度会明显下降 4 全自动感应 当有人进入其感应范围则输入高电平 人离开感应范围则自动 延时关闭高电平 输出低电平 22 第四章第四章 系统软件设计系统软件设计 4 14 1 时钟时钟 DS1302DS1302 时序图时序图 4 1 14 1 1 单字节读操作单字节读操作 图 4 1 单字节读操作 1 数据输入 经过 8 个时钟周期的控制字节的输入 一个字节的输入将在下 8 个时钟周 期的上升沿完成 数据传输从字节最低位开始 2 数据输出 经过 8 个时钟周期的控制读指令的输入 控制指令串行输入后 一个字节 的数据将在下个 8 个时钟周期的下降沿被输出 注意第一位输出是在最后一位 控制指令所在脉冲的下降沿被输出 要求 RST 保持位高电平 4 1 24 1 2 单字节写操作单字节写操作 图 4 2 单字节写操作 1 CE 必须在高电平时 才能对 DS1302 读 写操作 2 低位在前 高位在后 一个 SCLK 周期传递一位 3 上升沿输入 下降沿输出 4 先写地址 RW 0 允许写数据的单元地址 然后写数据 5 先写地址 RW 1 允许读数据的单元地址 然后读数据 23 4 1 34 1 3 DS1302DS1302 时序图时序图 图 4 3 DS1302 时序图 注意 1 R W 1 可以读 0 可以写 2 R C 1 普通存储器 0 特殊寄存器 4 24 2 温度传感器温度传感器 DS18B20DS18B20 时序图时序图 4 2 14 2 1 初始化 复位脉冲初始化 复位脉冲 应答脉冲 应答脉冲 主机发送复位脉冲 从机回复应答脉冲 应答脉冲可以让主机知道从机设 备正在一线总线上并且已经准备好了 可以接收或发送数据了 如图 4 4 所示 图 4 4 初始化 4 2 24 2 2 写时序 写写时序 写 0 0 写 写 1 1 写时序有两种 一是写位函数 每次写 1 位数据 二是写字节函数 每次 写 8 位数据 即 1 字节数据 写的时候是低位在前 高位在后 如图 4 5 所示 1 0 1 0 1 0 1 0 1 0 1 0 RST SCLK I O RST SCLK I O D0D1D2D3D4D5D6D7R WA0A1A2A3A4R C1 R WA0A1A2A3A4R C1D0D1D2D3D4D5D6D7 单单字字节节读读操操作作 单单字字节节写写操操作作 地地址址命命令令数数据据输输入入 地地址址命命令令数数据据输输出出 0 1 0 1 0 1 12345678910111213141516 123456789101112131415 24 图 4 5 写时序 4 2 34 2 3 读时序 读读时序 读 0 0 读 读 1 1 读时序有两种 一是位读出函数 每次读 1 位数据 二是读字节函数 每 次读 8 位数据 即 1 字节数据 读的时候是低位在前 高位在后 如图 4 6 所示 图 4 6 读时序 4 34 3 应用软件设计流程图应用软件设计流程图 4 3 14 3 1 主程序流程图主程序流程图 主程序流程图如图 4 7 所示 25 主程序开始 寄存器 变量初始化 是否有按键按下 是否是界面 切换键 K 11 显示输入密码界面 是否是输入开门 密码 进入欢迎光临界面后跳 到显示当前时间界面 是否是输入修改 时间密码 修改时间界面 是否是保存键 K 15 保存到DS1302中 返回显示界面 显示修改后的时间 保存到AT24C02中 开门 修改密码 设置界面 主程序结束 是 是 是 是 否 是 是 是 是 是 是 是 显示当前时间 显示当前时间 否 否 显示密码输 入错误 否 界面切换键K 11 否 图 4 7 主程序流程图 26 4 3 24 3 2 矩阵键盘功能划分图矩阵键盘功能划分图 123 456 789 0 Sav 图 4 8 矩阵键盘功能划分图 各功能介绍 1 的功能 开启报警功能 当有陌生人侵入 LCD12864 显示会出现 标志符号 就会报警 直到有人把按键按下 停止报警 标志符号就不显示 当显示 有 修改时间输入三次错误密码时 会自动报警 直到按下 键就停 止报警 2 的功能 当前时间显示介面 修改时间显示介面或设置开门密码和修改时间密码的 功能切换 3 Sav 的功能 保存修改的当前时间 设置开门密码和修改时间密码 4 的功能 在修改时间显示介面 设置开门密码和修改时间密码界面中光标右移功能 4 44 4 系统主要程序系统主要程序 4 4 14 4 1 系统主程序系统主程序 include include 包含 nop 延时函数的头文件 include include 自定义变量的头文件 include include include 判断平年或闰年 星期几的函数头文件 include include sbit hwx P3 2 红外传感器的控制引脚 sbit p10 P1 0 小灯的控制引脚 第一个 LCD 灯 int js 0 js10s 0 计时 计时 10s int ss 0 控制蜂鸣器 在温度小于 30 度和大于 30 度时蜂鸣器报警只执行一次 main 27 TMOD 0 x11 两个定时器 TL0 176 TH0 60 定时器 1 赋初值 TL1 176 TH1 60 定时器 2 赋初值 ET1 1 ET0 1 TR0 1 TR1 0 EA 1 sy 0 控制音乐符号变量 sd 0 jmqh 1 界面切换变量 gsqh 1 修改时间值的两位个十切换变量 kzgb 0 控制光标在第二三个界面时按其他键 光标不会跟着走 bl 1 输入三次错误密码的机会限制变量 while 1 lcd12864 调用 lcd12864 显示时间 if hwx 0 红外传感器的控制引脚等于 0 时 有陌生人侵入 报警 BeepIO 0 蜂鸣器开 else BeepIO 1 蜂鸣器关 if BeepIO 0 蜂鸣器开 if js 10 30 温度值大于 30 度 蜂鸣器开 BeepIO BeepIO 蜂鸣器取反 ss 1 控制蜂鸣器 蜂鸣器报警只执行一次 void int0 interrupt 1 定时器 1 报警和调用 ds18b20 TL0 176 TH0 60 js if ss 1 ss 0 if js 20 0 ds18b20 调用 ds18b20 显示温度 每 1s 变化一次 if js 1200 js 0 28 void int1 interrupt 3 定时器 2 只有三次机会用完了才会开启 TL0 176 TH0 60 输入错误密码机会超过三次报

温馨提示

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

评论

0/150

提交评论