基于HT32的智能家居demo(蓝牙上位机)

参加合泰杯作品的部分展示,基于HT32的智能家居,这里展示灯光的相关控制,是用蓝牙进行的数据透传,参考了一些资料,美化封装了一下之前的上位机界面。

成果展示

点击主界面的蓝牙设置,进行连接,下面已经成功连接上,并且接收到了HT32单片机测量到的温湿度数据。

LED关闭 最右侧的LED

LED打开

开关灯的协议指令,控制台输出

设计过程

HT32单片机部分 (仅展示LED)

使用的是开发板自带的LED,只需要控制对于引脚输出的电平就可以控制LED的亮灭。

复制代码
#ifndef _LED_H_
#define _LED_H_

#include "ht32f5xxxx_ckcu.h"
#include "ht32f5xxxx_gpio.h"

//端口号定义
#define HT_GPIO_PORT HT_GPIOC 
//LED引脚定义
#define HT_GPIO_PIN  (GPIO_PIN_14|GPIO_PIN_15|GPIO_PIN_10|GPIO_PIN_11)

//LED1 LED2 宏定义开和关
#define LED1_ON() 	GPIO_WriteOutBits(HT_GPIO_PORT,GPIO_PIN_14,RESET)
#define LED1_OFF()  GPIO_WriteOutBits(HT_GPIO_PORT,GPIO_PIN_14,SET)

#define LED2_ON() 	GPIO_WriteOutBits(HT_GPIO_PORT,GPIO_PIN_15,RESET)
#define LED2_OFF()  GPIO_WriteOutBits(HT_GPIO_PORT,GPIO_PIN_15,SET)

#define A1_ON() 	GPIO_WriteOutBits(HT_GPIO_PORT,GPIO_PIN_11,RESET)
#define A1_OFF()  GPIO_WriteOutBits(HT_GPIO_PORT,GPIO_PIN_11,SET)

#define B1_ON() 	GPIO_WriteOutBits(HT_GPIO_PORT,GPIO_PIN_12,RESET)
#define B1_OFF()  GPIO_WriteOutBits(HT_GPIO_PORT,GPIO_PIN_12,SET)
void Led_Init(void);
#endif

蓝牙模块使用的是BT04,本来打算采用官方的模块,奈何焊接技术不行,

使用的单片机引脚接入, PA2 rX 和 PA3 tX 串口0 printf指向蓝牙(进行单片机向上位机的数据传输)这里简单的配置一下串口就行,和stm32类似。

QT蓝牙上位机部分

目录展示:目录有四部分

先进行的是my_custom的设计,里面设计了按钮开关(之前的博客做过)和其他需要使用的控件,因为qt本身的控件并没有滑动开关,所以这里重写绘画和鼠标点击事件进行滑动按钮的设置,在外面进行调用即可,QT可以进行封装到其他项目使用(但是我没有成果,所以只能在项目中进行调用)

之后我进行的是device文件夹的设计,里面就是设计的是灯相关的,需要调用my_custom里卖弄的控件,所以放在第二步,这里很关键的一点是要设置一个信号(可以后面设计了蓝牙再进行添加),用于进行蓝牙的数据传输(我直接在这里面调用蓝牙的socket进行传输失败(遇到数不清的erro),还是得在主界面里面使用信号槽机制)

然后是设计的蓝牙部分,蓝牙部分就是之前博客做的蓝牙上位机直接移植了过来。区别是这里要添加一个槽函数,用于发送信息。

最后是再主界面中进行编写,将两边connect起来

(上位机部分参考了b站老徐的作品:链接(博主使用的是tcp)【开源项目】Qt智能家居案例。源码请从简介获取。_哔哩哔哩_bilibili

相关推荐
逆小舟1 天前
【RTOS】智能家居-驱动调试&适配层开发
智能家居
WZGL12302 天前
从个体需求到整体守护,科技助力老人安全安心
大数据·人工智能·科技·安全·智能家居
逆小舟3 天前
【RTOS】智能家居-中间层
智能家居
华普微HOPERF3 天前
Matter协议,远不止于智能家居
智能家居
咕噜企业分发小米4 天前
Linux嵌入式系统在智能家居中的具体应用案例有哪些?能否详细介绍其技术实现?
linux·运维·智能家居
三佛科技-134163842124 天前
智能逗狗神器方案开发,狗狗跳跳球MCU方案设计
单片机·嵌入式硬件·智能家居·pcb工艺
云山工作室5 天前
基于zigbee智能家居的燃气检测系统(论文+源码)
云计算·毕业设计·智能家居
boneStudent5 天前
Day39:智能家居环境监测系统
stm32·单片机·嵌入式硬件·智能家居