前言
这个智能设备通过硬件端和APP端协同工作,实现了多方面的功能。硬件端包括STM32F103C8T6微控制器进行程序中控和数据通信,OLED显示器用于展示设备状态和天气信息,ESP8266-01s无线模块用于联网和获取天气数据,DS1302时钟模块用于设定闹钟和显示日期时间,DS18B20温度传感器用于检测环境温度,掉电记忆功能使用内部Flash存储数据,蜂鸣器提供状态提示。APP端能够通过MQTT协议与设备通信,允许用户设置想要查询的城市天气,远程设定闹钟,以及进行时间校准。整体上该设备结合了智能控制和远程交互,提供了一个方便用户监测和控制环境的解决方案。
一 连线图
1 原理图
2. 开发板本身自带一个LED ,这个LED作为我们查看网络连接状态和获取数据状态的说明
(1)首先需要打开我们的WIFI热点让设备进行联网操作,看到显示数据界面,即可进行下一步功能测试
(2)硬件每隔8秒会向APP传输一次数据。
热点名字:NET密码:12345678,请使用2.4GHZ频率的无线网。
2 PCB效果
关注微信公众号--星之援工作室 发送关键字(项目清单)
可获取项目清单资料
➡️➡️
⚠️⚠️(本文章仅提供思路和实现方法,并不包含代码,需要代码的同学请自行联系博主)
⚠️⚠️(有疑问或需要定制或者技术支持等,也请自行联系博主)⚠️⚠️
3 实物效果
4 APP效果
5 功能概括
(1)硬件端
- STM32F103C8T6:用于所有程序的中控和模块数据通信;
- OLED显示器:显示是设备的状态和天气,
- ESP8266-01s:使用无线模块进行联网使用,实验API获取天气
- DS1302时钟模块:用于闹钟定时的设置,以及实现年月日等信息的显示
- DS18B20:用于检测当前环境的温度数据
- 掉电记忆,使用内部flash储存
- 蜂鸣器:用于状态提示
(2)APP端
- 使用MQTT协议与设备进行信息交互;
- 可以下发设置需要访问的城市天气
- 可以通过APP远程设置定时器的闹钟设置
- 可以进行时间校准
(3)云平台使用(阿里云)(需要可以找我获取)
只是链接各个设备使用,采用MQTT即时通讯;
(4)演示视频
链接:
https://pan.baidu.com/s/11n9-0wPg1udCJaJRUTb1Mw?pwd=XZY0
提取码:XZY0
二 底层代码使用方式
1 使用说明
(1). 使用的时候设备会自动连接WIFI
热点名字:NET密码:12345678,请使用2.4GHZ频率的无线网。
(2). 短按按键可以切换温度显示
(3). 长按按键可以查看闹钟时间
(多看视频,视频中有完整功能演示)
(多看视频,视频中有完整功能演示)
(多看视频,视频中有完整功能演示)
2 下载程序
- 先根据原理图进行连线,连接好以后在做后面的操作
- 打开手机热点 热点名字:NET密码:12345678
- 打开程序(硬件由工作室出的可以忽略下载程序这部分)
三 APP使用方式
1下载APP
(1)操作方式:
使用Android手机安装APK进行操控
安装Android studio导入项目使用模拟器
官网下载最新版本
https://developer.android.google.cn/studio?hl=zh-cn
安装包(工作室使用版本)链接:
https://pan.baidu.com/s/1DnRGWeJt7XBTmzqHj1KRSQ?pwd=xzy0
提取码:xzy0
安装教程
https://zhuanlan.zhihu.com/p/528196912
(2)使用说明
打开APP后设备会自动订阅MQTT主题,等待1-5秒APP会自动获取到设备上的数据,若5秒内没有获取到设备数据,则请检测设备是否在线,若在线,则请重新打开APP进行数据的获取
(多看视频,视频中有完整功能演示)
(多看视频,视频中有完整功能演示)
(多看视频,视频中有完整功能演示)
四 程序架构及修改(通用)
链接:
https://pan.baidu.com/s/1TZkvdEOp-ERgi-2A1o-KWw?pwd=XZY0
提取码:XZY0
APP参数修改
联系方式 微信号:13648103287