本博客主要介绍自2018年11月到2020年1月个人业余时间做的一些DIY项目的总结:
一、蓝牙版运动手环
硬件:STM32F103C8T6最小系统、HC-05蓝牙模块、mpu9250九轴传感器、as7000心率传感器、0.96寸OLED显示屏
软件:USART驱动蓝牙模块、IIC驱动九轴传感器以及心率传感器、SPI驱动OLED显示屏
功能:
1:蓝牙功能,用于与其他设备进行连接,并传输数据
2:每隔5秒手环向手机蓝牙APP发送数据
3:手机APP端控制手环OLED页面切换
4:板载按键单击进行OLED界面切换、双击切换到主界面,长按进行关机
5:OLED显示步数、里程、卡路里、心率数据
6:显示三轴加速度、三轴角速度、三轴磁力计等原始数据
7:显示俯仰角、翻滚角、偏航角等姿态角
8:模拟久坐提醒、跌倒检测、睡眠检测
9:向手机app端发送步数、里程、卡路里、心率数据
10:手机app端进行蓝牙切换OLED界面
项目演示:https://www.bilibili.com/video/BV1PK4y187Ab/
二、WIFI版运动手环
硬件:STM32F103C8T6最小系统、ESP01S模块、mpu9250九轴传感器、as7000心率传感器、0.96寸OLED显示屏
软件:USART驱动ESP01S模块、IIC驱动九轴传感器以及心率传感器、SPI驱动OLED显示屏
功能:
1:WIFI功能,连接路由器、连接云服务器
2:每隔0.2秒手环向云服务器推送数据
3:服务器端采用python,进行socket数据接收并保存到txt中
4:板载按键单击进行OLED界面切换、双击切换到主界面,长按进行关机
5:OLED显示步数、里程、卡路里、心率数据
6:显示三轴加速度、三轴角速度、三轴磁力计等原始数据
7:显示俯仰角、翻滚角、偏航角等姿态角
8:模拟久坐提醒、跌倒检测、睡眠检测
9:向服务器推送九轴原始数据、姿态角、心率等
项目演示:https://www.bilibili.com/video/BV1UV411d7TY/
三、WIFI实时时钟(单片机版本--AT指令)
硬件:STM32F103C8T6最小系统、ESP01S WIFI模块、0.96寸OLED显示屏
软件:USART驱动WIFI模块、SPI驱动OLED显示屏
功能:
1:ESP01S模块连接路由器,访问心知天气服务器
2:通过心知天气获得时间,写入本地RTC进行时间更新
3:OLED屏幕显示当前年月日、具体时间、生肖年、星期
项目演示:https://www.bilibili.com/video/BV1b7411Z793/
四、WIFI实时时钟(SDK版本--SDK开发)
硬件:ESP12F WIFI模块、0.96寸OLED显示屏
软件:SDK开发一键配网、IIC驱动OLED显示屏
功能:
1:微信进行一键配网,获取WIFI账号和密码
2:访问SNTP服务器,并进行时间显示
3:OLED屏幕显示当前年月日、具体时间、生肖年、星期
项目演示:https://www.bilibili.com/video/BV1gE411w7Jf/
五、ESP8266 NONOS 心率采集上报云端
硬件:ESP-12F模块、AS7000心率传感器、0.96寸OLED
软件:ESP8266 NONOS、IIC驱动心率传感器AS7000、IIC驱动OLED
功能:
1:微信一键配网,联网
2:访问并连接我的阿里云服务器
3:采集心率数据,OLED显示心率数据
4:采集的心率发送到云服务器,每秒发五条,服务器端进行数据接收和保存
项目演示:https://www.bilibili.com/video/BV1b7411Z7Cx/
六、ESP8266 FreeRTOS SDK开发七彩智能灯
硬件:ESP-12F模块、WS2812B灯圈、方糖R(天猫精灵)
软件:ESP8266 FreeRTOS 3.2 IDF框架、VSCODE开发环境、SPI驱动WS2812B灯圈
功能:
1:连接天猫精灵、对天猫精灵说“找队友”,进入零配网模式
2:通过与天猫精灵对话控制WS2812B灯圈颜色
3:询问天猫精灵当前灯的开关状态以及颜色情况
项目演示:https://www.bilibili.com/video/BV1k7411D71C/
七、室内温湿度时钟
硬件:STM32F103VET6最小系统、ESP01S WIFI模块、LCD显示屏、8MB-FLASH、DHT11温湿度
软件:USART驱动WIFI模块、SPI驱动FLASH(存放字库)、FSMC外设LCD显示屏
功能:
1:WIFI联网功能,用于连接路由器、手机热点等,获取上网功能
2:显示当前年月日、当前北京时间以及时间戳
3:显示当前年份的生肖年
4:显示当前农历、以及节气信息
5:显示当前周围的温湿度信息
项目演示:待录!
个人总结如下:
1、此期间接触到的芯片主要是ARM-M0 M3 M4系列的芯片,以及安信可的esp8266芯片做SDK开发
2、由于是个人项目,所以都是模块化搭建起来的,后续会进行pcb画板,然后集成起来
接下来的规划:
1、从事linux相关的开发
2、画原理图和pcb