Proteus仿真实例_基于STM32单片机的智能书房系统(仿真文件+程序)24-32f-03

该文章已生成可运行项目,

一.系统概述

本次设计的系统是以STM32F103单片机作为核心控制器,可以通过光照传感器对书房内的光照强度进行采集,可以通过温度传感器完成对温湿度的采集,并且可以将采集到的光照强度和温湿度在显示屏上进行显示,同时可以通过按键对各个参数的阈值进行设定,可以通过红外传感器完成对是否有人进行书房的监测,当有人且光照强度低于设定阈值后会控制LED灯亮,当温度或者湿度超过网值后会控制空调启动,进行环境调节。

二.仿真概述

1. 系统内通过DHT11进行温湿度检测,光敏电阻模块进行光强检测,红外检测来检测是否有人,通过OLED显示屏显示检测到的温湿度、光强以及是否有人,还可以显示设定的阈值。

2.  通过调节DHT11红色按钮进行温湿度调节,当检测到温湿度超过阈值后就会控制空调进行调节,空调的开关闭合且指示灯亮。

3.  通过调节光敏电阻模块的滑动变阻器进行光强调节,当检测到光强低于阈值且红外检测模块检测到人就会控制照明灯亮起。

4.  通过按键可以设置温湿度和光强阈值,调节哪个参数阈值就会在显示屏上显示“set”字样。

三.程序设计

#include <stm32f10x.h>
#include <delay.h>
#include <ADC_x.h>
#include <Lcd1602.h>
#include <Led.h>
/*==================================*
 *======>>>>>>  【ZW】  <<<<<<======*
 *==================================*/
#include "OLED.h"
#include "dht11.h"
#include <Key.h>
u8 t,h,l;
u8 set;
u8 th=30,hh=50,ll=20;
u8 key;
int main(void)
{	

	Adc1_Init();
	
	Led1_Init();
	Key_Init();
	OLED_Init();
	DHT11_Init();
	
	OLED_ShowString(1,1,"temp:");
	OLED_ShowString(2,1,"humi:");
	OLED_ShowString(3,1,"light:");
	OLED_ShowString(4,1,"people:");//OLED_ShowString(3,1,"in");OLED_ShowString(3,1,"absent");
	
//	Led1_High;
//	relay_High;
	
	
	
	while(1)
	{
		Key_Scan(&key);//OLED_ShowNum(1,14,key,1);
		
		if(key==3) { set++; if(set>3) set=0; key=0;}
		if(set==0) OLED_ShowString(3,13,"   ");
		else OLED_ShowString(3,13,"set");
		if(set==1){ if(key==1&&set==1) th++;if(key==2&&set==1) th--; key=0;}
		if(set==2){ if(key==1&&set==2) hh++;if(key==2&&set==2) hh--; key=0;}
		if(set==3){ if(key==1&&set==3) ll++;if(key==2&&set==3) ll--; key=0;}

		DHT11_Read_Data(&t,&h);OLED_ShowNum(1,10,th,2);OLED_ShowNum(2,10,hh,2);
		OLED_ShowNum(1,7,t,2);
		OLED_ShowNum(2,7,h,2);
		l = Get_Adc1();
		OLED_ShowNum(3,7,l,2);OLED_ShowNum(3,10,ll,2);
		
		if(Key4==0){ OLED_ShowString(4,8,"in    ");}
		else { OLED_ShowString(4,8,"absent"); }
		
		if(t>=th|| h>=hh) { relay_High;}
		else relay_Low;
		
		if(l<=ll && Key4==0) Led1_High;
		else Led1_Low;

	}	
}
本文章已经生成可运行项目
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小常硬件

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值