近几年来,随着物联网的不断发展,多种新兴科学技术也开始得到了应用。在物联网领域中,由于蓝牙技术的不断成熟,使其得到更多的应用拥有更重要的作用。本部分主要介绍基于单片机的家长端与孩子端蓝牙互联。本文基本用STC89C52RC这种型号的单片机作为主要控制端,在大概规定距离内,因蓝牙模块的无线互联使得设备的小灯闪耀当距离过远,通过蜂鸣器报警,两个单片机通过内部程序实现实时连接和断开,从而完成家长端和孩子端的互联。
1 功能及总体方案
1.1功能描述
首先,距离大约 20 米内,HC-05 主从机一体蓝牙模块互联,信号通过无线传送到另一HC-05 蓝牙上,经该单片机处理后红色 LED 灯闪烁。超过大约20米距离,HC-05 主从机一体蓝牙模块信号中断,再经该单片机处理,实现两蜂鸣器报警,同时红色LED 灯常亮。
1.2系统组成及工作过程
当蓝牙模块距离较近,互相接收到蓝牙信号时灯会一直闪烁,此时蜂鸣器不会报警。反而距离过远,使得信号中断,会引起两端的蜂鸣器同时进行报警。为了取消报警,缩短两设备的距离,这时候自动恢复红灯闪烁且不报警的状态。
1.3工作流程设计
当佩戴好设备的同时,可以自动检测到蓝牙的连接情况,给出相应的提示,因此可明显看到互连情况。这样在便捷的情况下,使得设备提示达到最佳效果。两个设备蓝牙进行链接,当蓝牙中断时,蜂鸣器开始报警提示。
2 硬件设计
2.1硬件电路总体设计
硬件电路有最主要的单片机最小系统;外围电路有 HCO5 蓝牙模块,蜂鸣器模块以及电源。其中蜂鸣器和 LED 灯,分别起到报警和提示作用。
2.2 单片机最小系统电路
主要包括 STC89C52RC 芯片、复位模块和晶振模块。STC89C52RC是STC 的低功耗,高性能 CMOS8位微控制器,具有 8K 字节的系统可编程闪存STC89C52在采用MCS-51 内核的同时做出了很多方面的改进,使得芯片具有传统的 51 微控制器不具备的功能。在单芯片上,采用智能 8位CPU 和可编程闪存系统,使STC89C52可为许多嵌人式控制应用提供高度灵活,超高效的解决方案。指令代码完全兼容于传统的8051 微控制器,可以任选12个时钟/机器周期和6个时钟/机器周期。
2.3蓝牙模块电路
该模块所使用的单片机的输入引脚与模块的串行数据输人端连接,输出引脚与对应输出端连接这样达到了程序数据的传输,使得蓝牙信号可以根据程序设定进行互连或中断。与此同时,蓝牙模块的其他两个引脚 state 和 en 设置为悬空。
2.4提升与改进
为了实现设备最小化,可以对原有基础上的主控端进行了改进,为节省空间使用更小芯片。
由于更改上一款的直插式芯片,将该芯片变成贴片式,从而可以实现模块缩小,同时也便于操作和提高效率。
3 软件设计
3.1软件总体设计
下载程序之前,在电脑上安装 USB 转串口CH340 驱动,然后安装对应单片机的烧录工具,本次安装的程序下载软件是 stc-isp-15xx-v6.85H自动下载,可以通过此软件将写好的程序下载到STC89C52RC 芯片中。
软件设计的主要内容是:判断蓝牙是否接收到数据,接收到信号控制 LED 灯闪烁,距离过远接收不到信号,蜂鸣器响 LED 灯常亮。首先对串口进行初始化,定时器初始化,串口发送字符串,接着等待中断,当产生中断时进入申口中断服务程序,然后对蜂鸣器和 LED 进行控制。
3.2主程序设计
在这一阶段,要首先完成微控制器的初始化该阶段包括每个端口的定义、功能声明、变量定义和宏定义,然后要进行单片机的串口初始化,包括定时器工作模式选择、串口工作模式选择、波特率设置、开放串行中断等。当系统产生中断时,进人申行中断服务程序,中断程序包含例如控制功能等诸多功能。最后在各种功能的实现的基础上控制LED 灯显示和蜂鸣器。
出处 软件
原标题 基于 C52 的蓝牙距离预警功能的设计
作者 李翔字 马夕然 叶奕风
参考资料
https://www.hooketech.com/bluetooth-anti-loss-wristband.html