智能无线防丢器设计毕业论文.doc_第1页
智能无线防丢器设计毕业论文.doc_第2页
智能无线防丢器设计毕业论文.doc_第3页
智能无线防丢器设计毕业论文.doc_第4页
智能无线防丢器设计毕业论文.doc_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

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

文档简介

I 智能无线防丢器设计毕业论文智能无线防丢器设计毕业论文 目目 录录 1 1 前言前言 1 1 1 课题的背景与意义 1 1 2国内外研究状况及相关领域中已有的研究成果 1 1 3 设计任务的分析 1 1 4 预期结果 2 2 2 总体方案设计的论证总体方案设计的论证 3 2 1 系统方案设计 3 2 2 模块方案设计 4 2 2 1 主控芯片方案 4 2 2 2 无线通信模块方案 4 3 3 硬件电路设计硬件电路设计 6 3 1 STC89C51 单片机主控模块设计 6 3 2 单片机最小系统 8 3 2 1 时钟电路 8 3 2 2 复位电路 9 3 2 3 STC89C51 中断技术概述 9 3 3 nRF24L01 无线模块设计 10 3 3 1 nRF24L01 概述 10 3 3 2 引脚功能及描述 11 3 3 3 nRF24L01 射频芯片特性 12 3 3 4 nRF24L01 发送程序设计 16 3 4 声光报警模块设计 17 3 4 1 灯光提示电路 17 3 4 2 声音报警电路 17 3 5 震动报警模块设计 18 3 6 按键模块设计 19 4 4 软件系统的设计软件系统的设计 19 4 1 软件介绍 20 4 2 nRF24L01 发送流程图设计 21 4 3nRF24L01 接收流程图设计 22 4 4 母机流程图设计 23 4 5 子机流程图设计 24 5 5 系统的调试及实验结果系统的调试及实验结果 25 II 5 1 调试流程 25 5 2 实验结果 25 6 6 结论结论 26 7 7 致谢致谢 28 8 8 参考文献参考文献 28 附录一 主机原理图附录一 主机原理图 33 附录二 从机原理图附录二 从机原理图 34 附录三 元件清单附录三 元件清单 35 附录四 附录四 NRF24L01NRF24L01 发送模块程序发送模块程序 36 附录五 附录五 NRF24L01NRF24L01 接收模块程序接收模块程序 40 1 1 1 前言前言 1 1 课题的背景与意义课题的背景与意义 随着科学技术的进步 社会状况的良好发展 现代人们的生活节奏不断加快 而由于个人发展 家庭琐事 社会竞争等诸多因素 人们常常使自己的大脑处于忙 碌和紧张的状态 长此以往容易导致自己记忆力下降 出现忘东忘西的状况 常常 不记得自己的手机 钱包 钥匙放在何处 另外 随着生活水平的不断提高 逛街 购物 出外旅行越来越受到人们的青睐 这些都是比较繁华热闹的地方 自己的钱 包 手机不知什么时候就被小偷偷走了 更要命的是那些带着自己孩子外出的人们 稍微不注意自己的孩子就跑丢了 为了预防以上这些不好事情的发生 智能电子防 丢器就出现在我们的生活中并且很方便 很实用 智能电子防丢器有体积小 携带方便 环保 性能好等特点 对防止钱包 手 机 钥匙 小孩等贵重物品的丢失有很好的用途 是现代生活所必不可少的物品 1 本课题设计的防丢器通过单片机系统分别控制发送模块和接收模块 在保留声音报 警功能的同时添加振动报警功能 这样在噪杂的人群中能更好的发挥防丢器的优势 更有效地解决物品丢失的问题 1 2 国内外研究状况及相关领域中已有的研究成果国内外研究状况及相关领域中已有的研究成果 随着社会的发展 时代的进步 防丢器将在人们日常生活中发挥着越来越大的 作用 因此 好多专家与学者对防丢器进行了研究 分析及其设计 在 2000 年 张 朝辉设计了一款以 UM3758 108A 编解码芯片为核心的防丢器 2 当母机和子机超 过规定范围内时就会出现声光报警 2010 年刘密歌 王路设计了一款防丢器 它以 PT2262 PT2272 编解码集成芯片为核心 3 该防丢器不仅有防丢功能 而且还具有 查找功能 2014 年郭明明 韩阳等人研究并设计了基于蓝牙技术的双向防丢器 该 防丢器克服了原有防丢器单项声光报警的问题 开发了一种新型的防丢器 4 而本设计则是采用 2 4GHz 无线技术的 NRF24L01 无线通信模块进行短距离传 输 2 4GHz 技术属于国际性的频段 抗干扰性强 5 同时本设计在原有防丢器基础 上加以震动报警功能 克服了原有防丢器的缺陷和不足 具有结构简单 功耗低 实用性强 方便使用等优点 这种震动报警功能在噪杂的人群中效果显得尤为突出 更好的解决了物品丢失以及儿童丢失的问题 1 3 设计任务的分析设计任务的分析 2 本设计分为硬件电路部分和软件编程部分 硬件电路的主要部分是 STC89C51 单片机和采用 2 4G 技术进行短距离通信的 NRF24L01 无线发送和接收模块 6 该防 丢器运用 NRF24L01 无线发送和接收模块在规定距离内母机和子机进行正常信号传 输 超出距离母机和子机不能进行正常信号传输的思想 通过 STC89C51 单片机对 母机或者子机接收的信息进行处理 并随时更新母机 子机的信息 进而对声光报 警器和震动报警器进行控制 7 以完成信号不能正常传输就报警的任务 另外 本 设计拥有结构简单 价格低廉 安全性高 传输速率快等特点 本设计的软件编程部分是以 KeilC51 软件为开发平台 使用 C 语言进行程序编 写的 本此设计选用的是 STC89C51 单片机 单片机具有以下特性 结构不复杂 安全性能高 处理功能强 速度快 低电压低耗 体积小 价格低廉 使用方便 程序的循环利用率较高 1 4 预期结果预期结果 母机和子机通过无线模块在 10m 的范围内上能相互通信 当信号不能正常传输 时 进行声光报警和震动报警 本设计的模块主要包括 STC89C51 单片机控制模块 NRF24L01 无线发送和接收模块 声光报警和震动报警模块 灯光提示电路模块以 及按键查找模块 8 3 2 总体方案设计的论证总体方案设计的论证 2 1 系统方案设计系统方案设计 子机 子机主要包括 STC89C51 单片机控制模块 NRF24L01 无线发送和 接收模块 声光报警模块 灯光提示电路 晶振电路模块以及复位电路模块 如 下图 2 1 所示 单 片 机 复位电路 晶振电路 声光报警模块 NRF24L01 无线模块 灯光提示电路 图 2 1 子机模块 母机 母机主要包括 STC89C51 单片机控制模块 NRF24L01 无线发送和接收 模块 声光报警和震动报警模块 复位电路模块以及晶振电路模块 如下图 2 2 所 示 单 片 机 按键查找模块 晶振电路 声光报警模块 NRF24L01 无线模块 复位电路震动报警模块 图 2 2 母机模块 4 图 2 2 母机模块 2 2 模块方案设计模块方案设计 2 2 1 主控芯片方案主控芯片方案 方案一 采用 STC89C51 单片机实现 STC89C51 单片机具有安全性能高 运行速度快 处理功能强 结构简单 功耗低 体积小 价格低廉 易于调试和 维护等优点 9 10 同时 STC89C51 单片机易于开发 应用领域广 技术掌握 较全面 技术运用能力较娴熟 方案二 采用 MSP430F149 单片机 MSP430F149 单片机具有集成度高 功能强大 可靠性高 运行速度快 功耗低等优点 11 12 但是考虑到本设计 结构简单 不需要强大的功能做支撑 另外 MSP430F149 单片机也有很多缺 点 比如成本较高 开发周期较长等等 综合考虑我们选择 STC89C51 单片机作为本系统的微控制单元 英文缩写 为 MCU 2 2 2 无线通信模块方案无线通信模块方案 方案一 采用集成芯片 M7216 集成芯片 M7216 属于遥控编码的一种 具有内码数量大 编码重复率低 工作电压低等优点 但是集成芯片M7216 系统结构复杂 功能难以实现 方案二 运用编解码芯片 PT2262 2272 编解码芯片 PT2262 2272 具有功 耗低 价格低廉 应用领域广 地址码较多等优点 13 14 传输方式及结构如 下图 2 3 所示 编码 高频发射高频接收 载波 检波放大整形 报警解码 图 2 3 PT2262 2272 芯片传输结构图 5 据调查及其上图表明 编解码芯片PT2262 2272 的缺点主要包括稳定性差 发射频率较低 系统较复杂 实现功能较少 只能完成单向报警功能 等方面 方案三 采用 2 4G 技术进行短距离传输的 NRF24L01 无线发送和接收模 块 NRF24L01 无线发送和接收模块具有价格低廉 体积小 功耗低 稳定性好 运行速度快 抗干扰性强等优点 15 16 同时该模块结构简单 功能强大 能 够实现双向报警 综上所述 我们采用 NRF24L01 无线发送和接收模块作为本设计的通信模块 3 硬件电路设计硬件电路设计 6 3 1 STC89C51 单片机主控模块设计单片机主控模块设计 STC89C51 单片机是一个低压高性能 8 位单片机 片内含 8k Flash 闪存 512 bytes 的 RAM 2K 字节 EEPROM 存储空间并且具有处理能力强 性能稳 定 功耗低 价格低廉的优点 17 它完全兼容普通 51 单片机的指令和功能 并且可以独自完成 ISP 在线编程功能 主要功能特性 1 8k 可反复擦写 Flash ROM 2 32 个双向 I O 口 3 512x8bit 内部 RAM 4 可直接使用串口下载 5 内带 2K 字节 EEPROM 存储空间 6 三级加密程序存储器 7 低功耗空闲和掉电模式 8 掉电后中断可唤醒 9 8 个中断向量源 10 时钟频率介于 0Mhz 和 24Mhz 之间 11 通用异步串行口 UART 12 具有两个 16 位的定时 计时器 引脚图见图 3 1 EA VP 31 X1 19 X2 18 RESET 9 P37 RD 17 P36WR 16 P32 INT0 12 P33 INT1 13 P34 T 0 14 P35 T 1 15 P10 1 P11 2 P12 3 P13 4 P14 5 P15 6 P16 7 P17 8 P00 39 P01 38 P02 37 P03 36 P04 35 P05 34 P06 33 P07 32 P20 21 P21 22 P22 23 P23 24 P24 25 P25 26 P26 27 P27 28 PSEN 29 ALE P 30 P31 T XD 11 P30 RX D 10 GND 20 VCC 40 U1 ST C89C52 图 3 1 单片机管脚图 STC89C51 单片机引脚介绍如下 主电源引脚 2 根 VCC Pin40 电源输入 接 5V 电源 7 GND Pin20 接地线 外接晶振引脚 2 根 XTAL1 Pin19 单片机中振荡电路外部信号的引入接口 XTAL2 Pin18 单片机中振荡电路的输出接口 控制引脚 4 根 RST VPP Pin9 具有复位功能的引脚 若该引脚在规定周期内出现两个连续的 高电平脉冲时 则对单片机进行初始化操作 恢复单片机原有的状态 ALE PROG Pin30 地址锁存允许信号 一般情况下 STC89C51 单片机对外 部信息访问时 ALE 能够锁存低 8 位字节的地址 另外 ALE 端的脉冲输出频 率是振荡器输出频率的六分之一 具有定时 降低成本的作用 PSEN Pin29 外部存储器信息读取信号 当单片机读取内部存储器信息时 PESN 保持原有的状态 当单片机读取外部储存器信息时 PESN 在每个周期内变化 两次 EA VPP Pin31 对访问内部 外部信号进行控制 当这个引脚接低电平时 单 片机将读取外部信息指令 当这个引脚接高点平时 单片机首先读取内部储存信息 指令 一旦访问的地址范围大于内部储存器的范围时 单片机将自动读取外部储存 信息指令 另外 当外部编译器对内部程序进行编译时 可输入编程电压 VPP 双向 I O 端口 4 组 STC89C51 单片机有 4 组 8 位的可编程 I O 口 分别位 P0 P1 P2 P3 口 对 于每一组 I O 端口而言都包含 8 个引脚 4 组 I O 端口一共有 32 个引脚 18 P0口 Pin39 Pin32 P0端口是一个没有内部上拉电阻的8位双向输入 输出 端口 此时该端口输出低电平为0 输出高电平则为高阻态 因此在众多情况下加上 内拉电阻是非常有必要的 比如该端口作为普通的输入 输出端口或者该端口对 NPN型管进行驱动时 另外 该端口还可以用作复用总线 提供8位数据和低8位地 址 该端口的引脚依次命名为P0 0 P0 1 P0 2 P0 3 P0 4 P0 5 P0 6 P0 7 P1口 Pin1 Pin8 P1端口是一个内部含有上拉电阻的8位双向输入 输出端 口 该端口可同时对四个负载进行驱动 当输入1时为高点平 当该端口作为输入口 时 被拉低的引脚可输出一个电流 该端口的引脚依次命名为 P1 0 P1 1 P1 2 P1 3 P1 4 P1 5 P1 6 P1 7 P2口 Pin21 Pin28 P2端口也是一个内部含有上拉电阻的8位双向输入 输 出端口 该端口也可同时对四个负载进行驱动 当输入1时为高点平 可作为输入口 该端口的引脚依次命名为P2 0 P2 1 P2 2 P2 3 P2 4 P2 5 P2 6 P2 7 P3口 Pin10 Pin17 P3端口同样也是一个内部含有上拉电阻的8位双向输入 输出端口 该端口同样可对四个负载进行驱动 当输入1时为高点平 当该端口作为 8 输入口时 被拉低的引脚可输出一个电流 该端口的引脚依次命名为 P3 0 P3 1 P3 2 P3 3 P3 4 P3 5 P3 6 P3 7 3 2 单片机最小系统单片机最小系统 单片机最小系统指的就是运用较少的元器件 组成一个能够正常运行的系统 一般情况下 我们把最小系统看作是应用系统的核心 19 该系统包括 STC89C51 单 片机 时钟电路 复位电路 该系统原理框图如下图 3 2 所示 图 3 2 单片机最小系统原理框图 3 2 1 时钟电路时钟电路 晶振是 STC89C51 单片机系统中不可或缺的元件 就晶振供给的时钟频率角度 而言 时钟频率越低 单片机系统的运行速度就越慢 时钟频率越高 单片机系统 的运行速度就越快 晶振的存在主要是为单片机系统提供时钟信号的 20 而对于 STC89C51 单片机的时钟信号而言 它包括内部时钟和外部时钟两种模式 如下图 3 3 所示是 STC89C51 单片机内部时钟结构框图 在单片机系统本身存在的振荡电路 基础上 用晶振与单片机的 18 19 引脚相连接 然后再并联接入两个电容就构成了 自激振荡器 此时便可产生单片机所需的时钟信号 两个电容的主要功能是稳频和 加快振荡速度 电容数值的大小介于 5pF 和 30pF 之间 最常用的电容值是 30pF 振荡频率的数值介于 1 2Mhz 和 12Mhz 之间 最常用的是 6Mhz 和 12Mhz 时钟电路 Stc89c51单片 机 复位电路 I OI O 9 30pF 30pF 18 19 Y 1 图 3 3 STC89C52 内部时钟电路 3 2 2 复位电路复位电路 在电路电源接通的前提下 如果 STC89C51 单片机的 RESET 引脚能够满足以下 两个条件 1 从电源正极植入高电平 2 高电平脉冲持续两个周期的时间 那么单片机就会执行复位操作 另外 如果该引脚一直处于高电平植入状态 那么单片机内部将不断执行复位操作 对于复位电路而言 它分为自动复位电路和 手动复位电路两种模式 而本设计采用的是自动复位电路 自动复位操作主要是通 过电容的充放电功能来完成的 当电压的上升时间小于 1ms 时 单片机就可以完成 自动复位 21 本设计的自动复位框图如下 3 4 所示 GND 5 R4 C3 10uf 9 RESET 10K 图 3 4 STC89C51 复位电路 3 2 3 STC89C51 中断技术概述中断技术概述 10 中断技术是由单片机内部的中断系统来实现的 它的主要作用是对主程序进行 管理和监控 并且当中断系统发出中断指令时 单片机应及时作出响应并执行中断 操作 22 23 中断技术的具体操作步骤如下 首先由中断系统发出中断指令 然后对 这一指令进行判断 若中断指令被允许 那么单片机就停止执行现有的程序 接着 执行并处理中断系统发出的中断指令 待到中断指令执行完成后 单片机再转到程 序中断的地方 继续执行主程序 如下图 3 5 所示是程序中断的处理过程 图 3 5 中断过程 对于单片机系统而言 中断技术在其运行过程中发挥着重要的作用 假如单片 机内部无中断系统 那么单片机在运行过程中就要对单片机系统中的服务请求进行 查询 这样不仅浪费大量的时间 而且单片机的工作效率也大大降低了 故在单片 机中采用中断技术是非常必要的 3 3 nRF24L01 无线模块无线模块设计设计 3 3 1 nRF24L01 概述概述 本设计采用 NRF24L01 无线通信模块实现母机 子机之间的通信 它是由 nRF24L01 芯片制作而成的 nRF24L01 无线收发器芯片的工作频率在ISM 频 段规定的范围内 一般介于2 4GHz 和 2 5GHz 之间 可对近距离无线信号进行 单向发送和单向接收 同时 该芯片具有体积小 功率损耗低 实用性强 性能 稳定 电路结构简单等优点 另外 该芯片还采用了高斯频移键控GFSK 的 调制方式 并在芯片内部创建了链路层 为此该芯片能够实现很多功能 比如自 动应答 自动重发 地址码检测 循环冗余校验码检测等 24 该芯片的数据 传输速率为 1Mbit s 或者 2Mbit s 一般采用串行外围接口 SPI 与微控制单元相 连接的方式设置芯片参数 以便更好进行数据传输 对于串行外围接口而言 它 的传输速率一般介于 0Mbit s 到 8Mbit s 之间 工作电压介于 1 9V 到 3 6V 之 11 间 并且它还拥有 125 个射频传输信道供我们选择 25 另外 针对无线通信模 块而言 它主要是由频率 发生器增强型 SchockBurstTM 模式控制器功率放大器 时钟处理器 晶体振荡器调制器 频率合成器 解调器输出功率信道的选取以及协 议的配置组成 此模块进行信号收发时 消耗的电流较低 调查数据如下 当无线 收发模块进行信号发送时 消耗的电流量是 9 0mA 在对信号进行接收时消耗的电 流量是 12 3mA 特别是在空闲模式或者关机模式下该模块消耗的电流量更少 随着时代的进步 科学技术的发展 nRF24L01 芯片在无线通信领域发挥的作 用越来越大 应用领域也越来越广泛 nRF24L01 芯片不仅被运用到键盘 鼠 标等小型设备中 而且还用到日常生活中的防盗系统 遥控系统 勘测系统等大 型设备中 另外 由于人们对无线传输的要求愈来愈高 nRF24L01 芯片技术 也不断得到更新和完善 当前国内外无线研究技术组织对nRF24L01 芯片技术 进行创新 并在某些领域取得了较好的成果 故本设计采用具有2 4G 技术的 nRF24L01 无线发送和接收模块进行短距离通信 这样更能保证传输的安全性和 可靠性 3 3 2 引脚功能及描述引脚功能及描述 nRF24L01 的电路图引脚如图 3 6 所示 图 3 6 NRF24L01 引脚图 各引脚功能如下 CE 传送数据 RX 或接收数据 TX 模式选择 CSN SCK MOSI MISO 串行外围接口 用于与 nRF24L01 芯片相连接 IRQ 中断引脚 VDD 电源输入端 12 VSS 电源接地端 XC2 XC1 晶体振荡器模拟输出 输入引脚 VDD PA 为射频的功率放大器提供 1 8 V 电源 ANT1 ANT2 天线接口 IREF 参考电流输入引脚 通过以上对 nRF24L01 引脚功能的研究与分析 再加以对设计模型的考虑 制作出了本设计的 pcb 图及其实物图 如下图 3 7 所示 图 3 7 NRF24L01 模型图和实物图 3 3 3 nRF24L01 射频芯片特性射频芯片特性 1 射频通道 nRF24L01 的工作频率可选择的范围是2 400GHz 到 2 483GHz 每个频道 的带宽是 1MHz 1Mbps 速率 或 2MHz 2Mbps 速率 nRF24L01 无线射 频通道的工作频率是由六位寄存器RF CH 确定的 并且射频通道的工作频率 将对射频通道运用的中心频率起到决定性作用 我们可由下列公式计算出射频通 道工作频率即 F0 2400 RF CH MHz 对于射频通道而言 如果发送端和接收端的射频通道设定不相同即它们不在 一个信道内传输 那么两者就不能实现通信 为此我们在收发信号时 应当把两 者的射频通道设定为同一条 才能实现通信 但是对于具体的情况还需具体分析 13 比如当射频通道的带宽是 2MHz 时 我们必须设定 RF CH 寄存器的内容不大 于 2 否则将影响发送端和接收端之间的通信 2 工作模式 通过对寄存器 PWR UP PRIM RX 和使能端 CE 引脚的设定 我们可以把 nRF24L01 设定为四种模式 包括发送模式 接收模式 空闲模式和关机模式 如下表 3 1 所示 表 3 1 nRF24L01 工作模式表 模式PWR UPPRIM RXCEFIFO 寄存器状态 接收模式111 发送模式101寄存器中数据在TXFIFO 发送模式10 1 0 据发送完停留在发送模式直到数 空闲模式 101TXFIFO 为空 空闲模式 1 0无数据传输 关机模式0 3 数据包处理方式 对 nRF24L01 无线发送和接收模块而言 它采用两种方式对数据包进 行处理 一种是 ShockBurstTM 模式 另一种是增强型 ShockBurstTM 模式 这两种数据包的处理方式都是将微控制单元MCU 与 nRF24L01 无线发送和接 收模块通过串行外围接口 SPI 相互连接起来 26 1 ShockBurstTM 模式 当运用 ShockBurstTM 模式对信号进行接收时 如果接收端收到准确的地址 和数据 那么这时接收端通过中断请求IRQ 告知微控制单元 MCU 信息已准确 收到 接着微控制单元通过RXFIFO 寄存器读取接收到的地址和数据 运用这 一模式进行数据和地址发送时 可以自动生成循环冗余校验码 当数据完全发送 完毕后 接收端的中断请求IRQ 告知微控制单元 MCU 信息已发出 这样就能 大大减少了微控制单元 MCU 对信息确定性的查询时间 从而提高了工作效率 另外 在 nRF24L01 无线通信模块的内部含有两类寄存器 一类是RXFIFO 寄 14 存器 另一类是 TXFIFO 寄存器 无论是在收发模式 关机模式还是在空闲模 式下 微控制单元 MCU 都可以对 FIFO 寄存器进行访问 2 增强型 ShockBurstTM 模式 对于增强型 ShockBurstTM 模式而言 它在保持微控制单元MCU 工作量 的基础上 又同时拥有自动应答功能和自动重发功能 它的主要流程为 首先由 发送端发出信号 当接收端接收所发出的地址和数据 则通过自动应答功能对发 送端进行回复 然后发送端对反馈信息进行检测 若信息检测无误 那么发送端 继续发送下一条信息 如果信息检测有误 那么就执行自动重发功能 直到信息 传输无误为止 另外对于增强型ShockBurstTM 模式下的应答和重发功能都是 自动运行的 无需人工操作 由此可以看出采用增强型ShockBurstTM 模式对 数据包进行处理具有功率损耗低 成本低 抗干扰性强等优点 经过综合考虑 因此本设计我们采用增强型ShockBurstTM 模式对数 据包进行处理 4 自动应答功能 自动应答功能主要是为信息接收端服务的 自动应答功能指的是当接收端接 收到信号时 那么接收端便自动对发送端进行信息反馈 以便很好的对信息的准 确性进行检测 当信息确认无误后 系统便进入正常工作状态 这个功能在很大 程度上降低了微控制单元 MCU 的工作量 减少了电流损耗 大大提高了工作 效率 27 5 自动重发功能 自动重发功能主要是为信息发送端服务的 当发送端检测到接收端反馈 信息无误时 那么随后系统将进入正常工作模式 若发送端没有要发送的数据时 这时发送端则进入空闲模式下 一旦检测到反馈信息出现错误时 这时系统自动 返回到发送模式对错误数据进行重新发送 直到数据准确无误为止 28 6 数据包格式 数据包识别 PID 及其循环冗余 CRC 校验 增强型 ShockBrustTM 模式下的数据包格式如下表3 2 所示 前 导码 地址 3 5 字节 9 位 标 志位 数据 1 32 字 节 CRC 校验 0 1 2 ShockBurstTM 模式下的数据包格式如表 3 3 前导码地址 3 5 字节 数据 1 32 字节 CRC 校验 0 1 2 前导码的作用主要是对脉冲编码0 或 1 进行检测 在进行数据传输时加上 前导码 而在数据接收端则把前导码除去 15 地址主要是指的接收地址 地址宽度介于3 个字节到 5 个字节之间 当数 据进行传输时 数据包在信道中可自行配置地址 而在接收端再把配置地址自动 去除 标志位一共有 9 位 其中两位代表数据包识别位 其他7 位保留以满足将 来产品所需 数据包识别 PID 的主要作用就是为了对新数据包和旧数据包进行 区分 当接收到新数据包时 PID 值加 1 反之 PID 值保持不变 数据位介于 1 字节到 32 字节之间 在通信过程中 必须保证发送端和接收 端数据位数相同 否则接收端接收错误 对于接收到的数据宽度一般通过 RX PW Px 寄存器进行设定 x 的取值介于 0 到 5 之间 循环冗余校验码 CRC 的作用主要是对信息的准确性进行检测 以便保证 信息的完整性和可靠性 检测的部分主要包括地址 PID 和有效数据等 如果 循环冗余码出现错误时 那么接收端则不对数据包进行接收 下图 3 8 是数据包识别 PID 的生成和检测框图 图 3 8 数据包识别 PID 的生成和检测框图 由上图可得出以下结论 1 发送端 每当发送一个新的数据包 PID 值就会加 1 2 接收端 对于接收端而言 让新接收的数据包PID 值与上次接收数 据包的 PID 值进行比较 假如两次 PID 值不相同 则认为此数据包为新数据包 系统对其进行接收 假如两次PID 值不同 然后再对两次循环冗余码CRC 进 行比较 如果两者相同 则认为是旧数据包直接丢弃 若循环冗余码CRC 不 同 则认为是新数据包 系统对其进行接收 16 7 载波检测 在采用增强型 ShockBurstTM 模式进行数据包处理时 载波检测将发挥很重 要的作用 在数据包传送过程中 如果数据包丢失率增加 那么这时我们就在接 收端对传输通道 CD 值进行检测 当 CD 值为高电平时 表明此通道传输数据 过多 出现拥塞现象 这时我们采取的方式就是改变传输通道 当CD 值为低 电平时 表明此通道可进行正常的数据传输 8 数据通道 当 nRF24L01 无线通信模块设置为接收模式时 接收端可同时对六路通 道不同 地址不同 速率相同的数据进行接收 对于数据通道而言 它是由寄存 器 EN RXADDR 来设定的 一般情况下 只有通道0 和通道 1 处于开启状态 另外 这些数据通道都通过寄存器RX ADDR Px 赋予各自不同的地址 x 的 取值为 0 到 5 其中 RX ADDR P0 和 RX ADDR P1 的地址是 40 位 RX ADDR P2 到 RX ADDR P5 的地址为 32 位共用地址再加上各自调节的低 8 位地址 29 3 3 4 nRF24L01 发送程序设计发送程序设计 当 nRF24L01 无线通信模块发送数据时 起初应该把nRF24L01 设定为发 射模式 然后通过串行外围接口SPI 将 nRF24L01 无线通信模块与 STC89C51 单片机相连接 紧接着将接收节点地址TX ADDR 以及有效数据 TX PLD 按 照先后顺序输入到 nRF24L01 无线通信模块的储存器中 在这一过程中 对于 接收节点地址 TX ADDR 只需输入一次就行了 而对于有效数据TX PLD 则 必须在满足 CSN 为高电平的条件时连续输入 接下来设定CE 引脚为高电平 并且维持 10 s 以上 最后经过 130 s 后再对数据进行发送 如果nRF24L01 无线通信模块的接收端打开了自动应答模式 那么数据发送后就等待接收端信号 的回应 通过接收端的反馈数据对信息的准确度进行判断 如果反馈的地址与发 送的地址相一致 那么数据传输成功 这时设定TX DS 为高电平并把 TX FIFO 寄存器中的数据删除 但是假如接收端反馈的地址与发送的地址不相 符合 此时保留 TX FIFO 寄存器中的数据 发送端通过自动重发功能对数据进 行发送 直到数据传输成功或者重发次数ARC 大于设定的值 如果发送次数 大于设定的值 那么这时就把MAX RT 或者 TX DS 设定为高电平 把中断请 求 IRQ 设定为低电平 通过数据接口告知微控制单元MCU 然后微控制单元 进行处理 直到数据传输成功 30 那么发送端和接收端通信成功后 如果还有 17 数据需要发送 那么系统就进入正常收发模式 如果没有数据需要发送 那么系 统就进入空闲模式 如下图3 9 所示是 nRF24L01 发送数据的时序图 图 3 9 nRF24L01 发送数据 时序图 3 4 声光报警模块设计声光报警模块设计 3 4 1 灯光提示电路灯光提示电路 R1 2 2K 5 D2 LEDY P37 图 3 10 灯光提示电路 发光二极管英文缩写为 LED 它能够将电能转化为可见光 具有转化率高 热 量低 体积小 功耗低 寿命长 环保 应用领域广泛等优点 本设计采用发光二 极管与电阻串联的形式作为灯光提示电路 当物品丢失的时候 给予人们灯光警示 在此串联电路中 由于电源供电电压为 5V 而发光二极管的供电电压为 3V 因此 串联一个电阻起到分压的作用 3 4 2 声音报警电路声音报警电路 18 A 1 B 2 F BUZZER 5 G ND FR1 2 2K Q 1 9012 图 3 11 声音报警电路 蜂鸣器指的就是一种能够发出声音的电子器件 它是采用直流电压供电的方式 对蜂鸣器进行供电的 按照结构原理可以分为压电式蜂鸣器和电磁式蜂鸣器两种 根据驱动方式的不同可以 分为有源蜂鸣器和无源蜂鸣器 有源蜂鸣器是由直流电压 驱动的 而无源蜂鸣器是由方波驱动的 它的应用领域广泛 主要运用到电话 汽 车内部设备 报警器等电子产品中 31 结合上图可知本设计的声音报警电路是由一 个 PNP 型三极管 一个有源蜂鸣器和一个限流电阻组成 此电路采用 PNP 型三极 管 Q1 只起到开关的作用 当基极输入低电平时 三极管被导通 蜂鸣器发出报警 声 而当基极输入高电平时 三极管停止工作 蜂鸣器不发出报警声 当物品丢失 时 该电路给予人们声音报警警示 3 5 震动报警模块设计震动报警模块设计 Q 1 9012 R1 2 2K A M 1 3v R2 68 G ND 5 图 3 12 震动报警电路 由上图可知震动报警电路主要由两个电阻 一个电机 一个 PNP 型三极管和一 组偏心块组成 可调偏心块安装在电机转子轴的两侧 当电机旋转时 偏心块就会 产生激振力 当转子的平衡量超出设定的范围时 电机就会震动 而且转子超出平 衡量越大 电机震动就会越剧烈 本设计选用 3v 震动电机来提醒主人防丢 更加增 加了设计的可靠性 19 3 6 按键模块设计按键模块设计 对于按键来说 它可以分为独立按键和矩阵式按键两种模式 独立按键具有结 构简单 系统稳定性强的优点 而矩阵式按键结构较复杂 不适合用在简单的电路 中 通过考虑本设计的实际状况 最终决定使用独立式按键 本设计按键模块的主要作用是母机对子机的查找 当按下母机上的按键时 子 机就会出现灯光报警和声音报警 它的工作原理主要是当按下按键时 就会在单片 机的输入 输出接口输入低电平 那么此时单片机出现短路状态 母机和子机之间 不能进行正常通信 而当按键维持现状的情况下 单片机的输入 输出接口输入的 是高电平 此时能够保持母机和子机进行通信 另外 在按键的过程中会出现抖动现象 解决这种现象的方式一般分为硬件去 抖动和软件去抖动 硬件抖动就是我们平常所说的电平不稳定 这种抖动持续的时 间范围是 10 200ms 硬件去抖动就是及时对硬件电路进行处理 而软件去抖动则是 跳过抖动的时间 等到按键保持稳定的时候 再对其进行处理 32 本设计采用的是 软件去抖动的方式 软件去抖动是这样实现的 当有低电平出现时对其进行延迟 延迟时间保持 10 200ms 之后 再对输入 输出接口进行检测 如果此时值为 1 则把它当做干扰信号 如果值为 0 则执行相应的程序 如下图 3 13 所示是按脚模 块的电路部分 G ND S1 SW PB P17 图 3 13 按键电路 20 4 软件系统的设计软件系统的设计 4 1 软件介绍软件介绍 Keil C51 是进行 C 语言编写 调试 运行的有效平台 是由美国公司 Keil Software 开发研制的 另外 C 语言具有结构规范 可读性强 容易维护与调试 使用简洁方便等优点 33 我们采用这两种语言进行一个模块的编程就能够深刻体会 到两种语言的差别 Keil C51 这个软件包括大量的库函数 标准的编程界面以及完 整的开发工具 调试工具 这个软件使用简单方便 运行速度较高 尤其在大型软 件的开发 研制中更能体现出 Keil C51 软件的强大功能 34 下文将详细介绍 Keil C51 软件 KeilC51 软件界面如图 4 1 所示 图 4 1 KeilC51 软件界面 Protel99SE 是 PORTEL 公司在 80 年代末推出的 EDA 软件 Protel99SE 软件能 够用于电路原理图 印刷电路板的设计 具有功能强大 简单易掌握的优点 是当 今网络最受欢迎的设计软件 同时它完成 32 个信号层 16 个电源地层及其 16 个加 工层的设计 Protel99SE 软件的特点 1 提供不同格式的电气网络表高达 30 种 2 强大的全局编辑功能 3 可以器件的同步管理与使用 4 可同时运行原理图及其 PCB 并且对器件 网络等进行搜索与查找 21 5 不仅可以对元器件进行正向标注 而且还能够反向标注 这样使得原理图 与 PCB 保持整体上的一致性 6 符合国际设计标准 简单容易掌握 7 它可以同时完成 32 个信号层 16 个电源地层及其 16 个加工层的设计 最终生成 格式的文件 8 具有严格的设计规则和环境 9 以自动重铺 智能覆铜功能 覆铀可 10 供给丰富的设计原理图及其电路板的标准模板 4 2 nRF24L01 发送流程图设计发送流程图设计 如下图 4 2 所示是 nRF24L01 发送端的流程框图 图 4 2 发送模式软件流程图 4 3nRF24L01 接收流程图设计接收流程图设计 22 如下图 4 3 所示是 nRF24L01 接收端的流程框图 图 4 3 接收模式软件流程图 4 4 母机流程图设计母机流程图设计 23 母机流程图如图 4 4 所示 4 4 母机流程图 4 5 子机流程图设计子机流程图设计 子机流程图如图 4 5 所示 24 4 5 子机流程图 5 系统的调试及实验结果系统的调试及实验结果 25 5 1 调试调试流程流程 硬件调试 检测硬件电路的焊接是否牢固 若出现漏焊或者焊接中出现粒尖 桥接的现象 对其进行重新焊接 要求焊点即牢固又美观 以保证硬件电路的完整 性以及可靠性 软件调试 首先将编写好的程序在 keil 软件中重新编译 确定程序编写无误 接着把程序生成 HEX 的格式 然后将调试好的程序烧录到 NRF24L01 无线通信模块 中 最终我们将硬件电路和软件编程结合起来 在防丢器的使用环境中进行测试 5 2 实验结果实验结果 通过实验我们实现了防丢器的目标 在母机和子机的距离在10m 之内 时 NRF25L01 无线通信发送端和接收端可以进行正常通信 当母机和子机的距 离超过 10m 时 母机出现声音报警和震动报警 子机出现声音报警 为此我们还 做出了数据测试表和实物模型图 如下表 5 1 和下图 5 1 所示 表 5 1 数据测试表 测试数据数值 主机端电流44mA 从机端电流38mA 供电电压4 2 5 8V 主机端功率0 22W 从机端功率0 19W 收发距离 10m 26 图 5 2 实物模型图 27 6 结论结论 本设计以 stc89c51 单片机为控制核心 以采用2 4G 技术进行短距离通信 的 NRF24L01 无线发送和接收模块为主要传输模块 在完成对实物模型焊接的 基础上 对各个模块进行编程并进行多次调试 最后通过焊接好的硬件电路与调 试好的程序相结合实现了在规定距离内 母机 子机进行正常传输 另外 当子 机和母机没有超出规定的距离时 我们还可以通过按键查找子机 一旦母机 子 机超出规定的距离 母机就会出现声音报警和震动报警 子机出现声音报警 虽 然在本次设计中我们取得了一定的成绩 但是我们也在设计的过程中遇到了很多 难题 比如 NRF24L01 无线发送和接收模块程序的编写 调试 硬件电路的设 计及其原理图的设计 然而这次设计却让我们对无线传输有了更加深刻的理解 对软件编程有了更深一步的掌握 同时通过这次设计也增强了我们独立学习的能 力 动手能力 思考问题的能力 也开拓了我们的创新能力 通过对相关资料的调查和分析 我完成了本课题的设计并实现了防丢器的预 期功能 现将工作总结如下 一 本设计内容重点 1 NRF24L01 无线传输模块的调试 2 NRF24L01 的各种操作命令 3 单片机 C 语言的熟练 二 研究展望 本课题研究的防丢器具有价格低廉 结构简单 方便使用 实用性强等优点 该产品在当代生活中发挥的作用越来越大 使用的领域也越来越广泛 尤其是在 噪杂的人群中 防丢器的震动报警功能效果更加凸显 很好的保护了人民的珍贵 物品 减少了儿童丢失事件的发生 随着时代的进步 科学技术的迅速发展 防丢器正朝着功耗更低 价格更低 可靠性更好 体积更小 实用性更强 造型更加美观方向发展 因为受自己所学 知识的限制 致使该防丢器存在着很多缺陷和不足 本设计只能对短距离丢失的 物品起到警示作用 而不能真正起到防丢作用 比如一个物品丢失了 而我们只 知道物品已丢失 但是我们却不能确定物品丢失的位置 如果在现有防丢器的基 础上安装 GPS 定位系统 那么该防丢器的设计就更加完美了 另外 我们所设 计的防丢器是用电池进行供电的 一般情况下 电池的寿命较短 因此 设计一 个能够长时间供电的物品是防丢器未来发展的必要趋势 28 7 致谢致谢 这次毕业论文能够成功撰写 我要感谢我的导师汪教授 因为从始至终他一直 对我照顾有加 很有耐心的指导我 在论文初步撰写的时候 他帮助我选择题目 并给分析本篇的重点 难点 另外他还帮助我查阅资料 同时他还抽出空闲的时间 反复查看我的论文进展状况并给我进行细致的修改 这些为我顺利完成毕业论文打 下了坚实的基础 汪教授性情温和 和蔼可亲 有高超的思维能力 敏锐的洞察力 勤勤恳恳的 工作态度 积极乐观的生活态度 严谨的科学态度 知识丰富 学问深广 耐心教 导他人堪称师者模范 他深深打动着我 激励着我 让我一路前行 他是我一生学 习的榜样 最后 我要感谢我们学院的领导和老师 是你们给我提供那么好的学习环境 在我学习困难时给予我无私的帮助 谢谢你们对我的鼓励和支持 同时我还要感谢 那些与我一起学习 一起奋斗的同学们 谢谢你们在我紧要关头给我信心 给我力 量 再次感谢你们 29 8 参考文献参考文献 1 Wang Xiaodong feng xiang you Based on single chip microcomputer intelligent lost preventer system design J Journal of henan science and technology 2011 21 61 61 王啸东 尤凤翔 基于单片机的智能防丢器系统设计 J 河南科技 2011 21 61 61 2 Qing wu li FanGuiQing Kang Chunlei With new monolithic codec IC two way transmission control circuit J Journal of henan normal university natural science edition 1996 3 32 34 李庆武 樊贵卿 康春雷 采用新型单片编解码 IC 的双向传输控制电路 J 河南 师范大学学报 自然科学版 1996 3 32 34 3 Chun hua xie RaoYong PT2262 PT2272 multichannel hardware control method J Journal of modern electronic technology 2011 34 19 100 102 谢春华 饶勇 PT2262 PT2272 的多通道硬件控制方法 J 现代电子技术 2011 34 19 100 102 4 KanLiFeng ming ming guo Han Yangdeng Based on bluetooth technology research and design of two way anti lost J Journal of electronics 2014 15 11 12 阚力丰 郭明明 韩洋等 基于蓝牙技术的双向防丢器的研究与设计 J 电子制 作 2014 15 11 12 5 Li Jiao Yang Ren kun XiaoJun 2 4 GHz wireless technology standard and ZigBee anti jamming performance J Journal of telecommunication engineering technology and standardization 2006 19 3 31 35 李蛟 杨仁锟 肖峻 2 4GHz 无线技术标准及 ZigBee 抗干扰性能 J 电信工程技 术与标准化 2006 19 3 31 35 6 Shen Yong Jiang Wenxiong GGGG Based on the general wireless communication module nRF24L01 design J Journal of electronic design engineering 2013 21 18 84 86 沈勇 蒋文雄 段勇 基于 nRF24L01 的通用无线通信模块设计 J 电子设计工 程 2013 21 18 84 86 7 Liu Mi song wang The design and implementation of multi functional electronic anti lost J Journal of xi an journals of liberal arts colleges from natural science edition 2010

温馨提示

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

评论

0/150

提交评论