|
DHT11 OLED STM32F103C8T6 減速電機(jī) led燈 紅外傳感
單片機(jī)源程序如下:
- #include "stm32f10x.h"
- #include "oled.h"
- #include "delay.h"
- #include "sys.h"
- #include "dht11.h"
- #include "led.h"
- #include "key.h"
- void led(void)
- { LED0 = 0;
- LED1 = 0;
- LED2 = 1;
- motor=0;
- delay_ms(200);
- LED0 = 0;
- LED1 = 1;
- LED2 = 0;
- delay_ms(200);
- LED0 = 1;
- LED1 = 0;
- LED2 = 0;
- delay_ms(200);
- LED0 = 0;
- LED1 = 1;
- LED2 = 1;
- delay_ms(200);
- LED0 = 1;
- LED1 = 0;
- LED2 = 1;
- delay_ms(200);
- LED0 = 1;
- LED1 = 1;
- LED2 = 0;
- delay_ms(200);
- LED0 = 0;
- LED1 = 0;
- LED2 = 0;
- delay_ms(200);}
- int main(void)
- {
- u8 t=0;
- u8 s=0;
- u8 temperature;
- u8 humidity;
- LED_Init();
- NVIC_Configuration();
- delay_init();
- DHT11_Init();
- OLED_Init();
- OLED_Clear();
- KEY_Init();
- motor=0;
- while(1)
- {
-
- if(t%80==0)//每100ms讀取一次
- {
- OLED_Clear();
- delay_ms(10);
- OLED_ShowString(1,1,"WENDU: C",12);
- OLED_ShowString(1,5,"SHIDU: %",20);
- DHT11_Read_Data(&temperature,&humidity); //讀取溫濕度值
- OLED_ShowNum(50,1,temperature,2,12); //顯示溫度
- OLED_ShowNum(50,5,humidity,2,12); //顯示濕度
- }
- delay_ms(10);
- t++;
- if(KEY1==0)
- {
-
-
- delay_ms(80);
- if(KEY1==0)
- { s=s+1;}
- }
-
- if(KEY0==0 && s==1)
- {
-
- if(temperature<25)
- {
- LED0 = 0;
- LED1 = 1;
- LED2 = 1;
- motor=0;
- }
- else if(temperature>=25 && temperature<27)
- {
- LED0 = 1;
- LED1 = 0;
- LED2 = 1;
- motor=0;
- }
- else if(temperature>27)
- {
- LED0 = 1;
- LED1 = 1;
- LED2 = 0;
- motor=1;
- }
- delay_ms(10);
- }
- else if(s==2)
- {
-
- led();
-
- }
- if(s>2)
- {s=1;}
- }
- }
復(fù)制代碼
代碼調(diào)試中,問(wèn)題很多,求指導(dǎo):
光纖燈.7z
(238.21 KB, 下載次數(shù): 4)
2021-5-17 22:14 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|
|