基于STM32的简易智能家居设计(嘉立创支持)

一、项目功能概述

1、OLED显示温湿度、空气质量,并可以设置报警阈值

2、设置4个继电器开关,分别控制灯、空调、开关、风扇

3、设计一个离线语音识别系统,可以语音控制打开指定开关、并且可以显示识别命令词到OLED屏上

4、OLED实时显示4个继电器的状态

5、设计一个低功耗开关电路,可以语音控制使得系统进入低功耗模式,并且进入低功耗模式后可以再次语音唤醒系统,重新开始正常工作

语音控制具体描述:

二、项目原理图

(一)最小系统

!!\[在这里插入图片描述(https://img-blog.csdnimg.cn/direct/3eb5e38eb3ef4e819bc6d78a378b8e71.png)

(二)供电

(三)传感器


(四)语音模块

(五)继电器模组

(六)按键蜂鸣器

(七)低功耗开关

三、程序设计

cpp 复制代码
 int main(void)
 {	
	u16 key;
	int adc,cnt=0;
	float volt;
	delay_init();	    	 
	NVIC_Configuration(); 	 
	BEEP_Init();
	OLED_Init();			
	OLED_Clear();
	uart_init(115200);
	printf("欢迎使用吃夜宵的智能家居系统\r\n");
	KEY_Init();
	LED_Init();
	TIM3_Int_Init(500-1,720-1);
	DEV_Init();//外设初始化
	 
	 
	OLED_ShowCHinese(8,0,50);//
	delay_ms(200);
	OLED_ShowCHinese(24,0,51);//
	delay_ms(200);
	OLED_ShowCHinese(40,0,52);//
	delay_ms(200);
	OLED_ShowCHinese(56,0,39);//
	delay_ms(200);
	OLED_ShowCHinese(72,0,40);//
	delay_ms(200);            
	OLED_ShowCHinese(88,0,48);//
	delay_ms(200);            
	OLED_ShowCHinese(104,0,49);//
	delay_ms(200);            
		
	OLED_ShowNum(0,2,201908,6,16);
	OLED_ShowNum(48,2,384176,6,16);
	
	
		OLED_ShowCHinese(40,4,53);
		OLED_ShowCHinese(56,4,54);
		OLED_ShowCHinese(72,4,55);
		
		delay_ms(1500);            
		
		OLED_Clear(); 
		OLED_Dis_Menu();
	while(1)		
	{		
		if(cnt++ ==1000)
		{
			cnt = 0;
			LED0=!LED0;
			adc =	Get_Adc_Average(0,5);
			volt = adc*3.3/4096;
			air = pow((3.4880*10*volt)/(5-volt),(1.0/0.3203));
			printf("air :%d\r\n",air);
			//获取温湿度
			DHT11_Read_Data( &temp, &humi);
			if(last_temp!=temp || last_humi!=humi)
			{
				OLED_Dis_DHT(temp,humi,air);
			}
		}
		key = Key_GetValue();          //按键扫描
		if(key)
		DealKeyVal(key);
		if(!KEY1_IO())
		{
				printf("%d\r\n",GetTime());
		}
		if(temp>Max_temp || humi>Max_humi || air>Max_air)
		{
			if(cnt<500)BEEP=1;
			else if(cnt<1000)BEEP=0;
		}else BEEP=0;
		
		
		delay_ms(1);
	}	  
	
}

四、扩展功能

(一)根据环境温湿度、空气状况,自动控制智能家居设备

(二)优化界面,添加系统更多设置,报警设置、家居控制模式选择、智能开关机模式

(三)添加定时开关智能家居模式

(四)添加蓝牙或WIFI模块

(五)设计手机APP控制

(六)添加更多语音控制功能

感谢嘉立创对全程设计的支持。

相关推荐
恒锐丰-罗生1 小时前
率能半导体 SS6840 单通道 H 桥电机驱动芯片深度解析
驱动开发·嵌入式硬件·硬件工程
zhonyu鱼1 小时前
Home Assistant:开源的智能家居自动化平台,统一控制全屋设备
开源·自动化·智能家居
欧阳天羲1 小时前
全屋智能家居一体化方案‑配套资料文档合集
云原生·eureka·智能家居
国产化创客2 小时前
ESP32-S3+INMP441+MAX98357 本地 WAV 录音播放方案详解
物联网·开源·音视频·智能家居·智能硬件
拾知_H2 小时前
STM32+FreeRTOS基础配置
stm32·嵌入式硬件·freertos
智购科技自动贩卖机2 小时前
自动售货机硬件主控方案选型实战:单片机、树莓派、ESP32怎么选?
人工智能·单片机·嵌入式硬件·物联网·网络协议·yolo·架构
WWJA王文举4 小时前
# STM32使用DMA后数据异常?可能不是DMA配置问题:从缓存、变量类型、时序到外设状态全面排查
stm32·嵌入式硬件·缓存
电化学仪器白超4 小时前
MV-CS200-10UC相机参数配置
python·单片机·嵌入式硬件·数码相机·自动化·ltspice
我和头发拼了4 小时前
STM32--9USART收发HEX数据包
stm32·单片机·嵌入式硬件
wuyk5554 小时前
7.AVL 树:第一个自平衡二叉搜索树
开发语言·stm32·单片机·算法