標題: OLED+DHT11+光敏+ULN2003步進電機+室內燈源程序 [打印本頁]

作者: yy1450711034    時間: 2020-3-10 16:00
標題: OLED+DHT11+光敏+ULN2003步進電機+室內燈源程序
1.硬件準備:
DHT11模塊
OLED(IIC)模塊
核心板STM32F103C8T6
光敏傳感器模塊
LUN2003驅動步進電機模塊
步進電機
LED燈一只
電阻220歐姆一只

2.硬件接線:
OLED SCL---PB12    SDA---PB13  VCC---3.3V
DHT11   DAT---14
光敏AO--PA4
電機驅動連線:IN4: PB9   IN3: PB8   IN2: PB7   IN1: PB6  
LED--PB0
3.程序源碼:
u8 buff[30];                //參數顯示緩存數組
u8 DHT11_Temp,DHT11_Hum;  //溫濕度
u16 gz_value;         //光照檢測值
u8 mode;
u8 curtain_flag;
u8 last_curtain_flag;
u16 count;
void BUJING_Cotrol(u8 mode,u16 count);
//u16 A_DHT11_Temp=25;    //溫度閾值
//u16 A_DHT11_Hum=50;     //濕度閾值
u16 A_gz_value=2000;    //光照強度閾值

int main(void)
{
LED_Init();
Adc1_Channe_Init();    //ADC初始化
delay_init();     //延時函數初始化
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//設置中斷優(yōu)先級分組為組2:2位搶占優(yōu)先級,2位響應優(yōu)先級
// uart_init(9600);
DHT11_Init();
Moto_Init();
OLED_Init();    //OLED初始化
OLED_Clear();    //OLED清屏
while(1)
{
  
   DHT11_Read_Data(&DHT11_Temp,&DHT11_Hum);
   OLED_ShowCHinese(0,0,0);
   OLED_ShowCHinese(16,0,2);
   sprintf((char*)buff,":%2dC",DHT11_Temp);
   OLED_ShowString(32,0,buff,16); //顯示溫度
   OLED_ShowCHinese(66,0,1);
   OLED_ShowCHinese(82,0,2);
   sprintf((char*)buff,":%2d%%",DHT11_Hum);
   OLED_ShowString(96,0,buff,16);//顯示濕度
   
   gz_value   = 4096- get_Adc_Value(0x04);
   OLED_ShowCHinese(0,4,5);
   OLED_ShowCHinese(16,4,6);
   OLED_ShowCHinese(32,4,7);
   OLED_ShowCHinese(48,4,8);
   sprintf((char*)buff,":%4d",gz_value);
   OLED_ShowString(64,4,buff,16);//顯示光照強度
  
//      printf("光照強度:%d\r\n",gz_value);
//   delay_ms(200);
  }
}
void BUJING_Cotrol(u8 mode,u16 count)
{
if(mode==0)
{
  while(count--)
  {
    Motorccw_angle(120,8);
  }
}
if(mode==1)
{
  while(count--)
  {
   Motorcw_angle(120,8);
  }
}
}







51hei圖片20200310155936.png (6.79 KB, 下載次數: 44)

51hei圖片20200310155936.png

OLED+DHT11+光敏+電機窗簾+室內燈.7z

154.27 KB, 下載次數: 91, 下載積分: 黑幣 -5






歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1