赞
踩
1.可以检测环境中温湿度,气压,一氧化碳,空气质量,烟雾浓度和光照强度。
2.将测量的值显示在屏幕上,数据上报机智云平台可以通过手机APP实时查看当前的状态。
3,通过光敏传感器检测光照强度,当光照强度小于阈值,表明此时天黑了,自动点亮LED灯照明并且自动关闭窗帘!反之!就会关闭灯!打开窗帘,可以实现手动打开关闭。
4.可以通过过按键调节系统阈值,可以实现系统阈值掉电保存。
功能描述:该设计可以检测环境中温湿度,气压,一氧化碳,空气质量,烟雾浓度和关光照强度,并把测量的值显示在屏幕上,数据上报云平台可以通过手机APP时时查看。通过光照强度传感器检测光照强度,当光照强度小于阈值,表明此时天黑了,自动点亮LED灯照明并且驱动步进电机顺时针旋转180度表示拉上窗帘。如果光照强度高,表示是白天,熄灭LED灯,并驱动步进电机逆时针旋转180度,表示拉开窗帘。可以通过过按键调节系统阈值,系统阈值掉电保存,无需重新修改。
#include "sys.h" #include "delay.h" #include "usart.h" #include "led.h" #include "timer.h" #include "ADC.h" #include "usart3.h" #include "key.h" #include "rtc.h" #include "oled.h" #include "stmflash.h" #include "math.h" #include "dht11.h" #include "bmp280.h" #include "exti.h" #include "gizwits_product.h" #include "common.h" u8 buff[30];//参数显示缓存数组 u8 count; dataPoint_t currentDataPoint;//云端数据点 u8 wifi_sta;//wifi连接状态标志 u8 mode=0;//模式控制自动和手动 u8 NTP_sta=0;//网诺时间获取状态 u8 display_contrl=0; u8 window_flag=0; u8 last_window_flag=0; extern u8 DHT11_Temp,DHT11_Hum; //温湿度 u16 Pre; //气压检测值 u16 gz_value; //光照检测值 u16 m2_value; //烟雾检测值 u16 m7_value; //一氧化碳检测值 u16 m135_value; //空气质量检测值 u16 A_DHT11_Temp=25; //温度阈值 u16 A_DHT11_Hum=50; //湿度阈值 u16 A_pre=1500; //气压阈值 u16 A_gz_value=2000; //光照强度阈值 u16 A_m2_value=2000; //烟雾阈值 u16 A_m7_value=2000; //一氧化碳阈值 u16 A_m135_value=2000; //空气质量阈值 //数据采集 void userHandle(void) { currentDataPoint.valueLED=!LED0; currentDataPoint.valueWindow=window_flag; currentDataPoint.valueHeating = Heating; currentDataPoint.valueRefrigeration = Refrigeration; currentDataPoint.valueHumidification = Humidification; currentDataPoint.valueDehumidification = Dehumidification; currentDataPoint.valueTemp=DHT11_Temp; currentDataPoint.valueHum=DHT11_Hum; currentDataPoint.valuePre=Pre; currentDataPoint.valueGZ_Val=gz_value; currentDataPoint.valueMQ2_Val=m2_value; currentDataPoint.valueMQ7_Val=m7_value; currentDataPoint.valueMQ135_Val=m135_value; } void Get_Data(u16 count);//获取传感器数据 void WIFI_Contection(u8 key);//WiFi连接控制 void BUJING_Cotrol(u8 mode,u16 time,u16 count); void Gizwits_Init(void); void System_Init(void); void Threshold_Value_Read(void); void Key(u8 key); void Show_First(void); void Show_Second(void); void Show_Set0(); void Show_Set1(); void Show_Set2(); void Show_Set3(); void Show_Set4(); void Show_Set5(); void Show_Set6(); void Show_Set7(); void Device_Control(void); int main(void) { u8 t=0; int key_value; //按键值 System_Init(); Threshold_Value_Read(); while(1) { Get_Data(0); Device_Control(); key_value = KEY_Scan(0); Key(key_value); if(display_contrl%2==0&&t;>=10) Show_First(); else if(display_contrl%2==1&&t;>=10) Show_Second(); userHandle(); //用户数据采集 gizwitsHandle((dataPoint_t *)¤tDataPoint;);//机智云协议处理 WIFI_Contection(key_value);//WiFi连接控制 t++; delay_ms(100); //mode=currentDataPoint.valuemode; } }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。