ISKBoard example project
guowenxue
7 days ago 9d92def44dc84a0fd125850c81ec99aecee2b899
楼道声光控灯项目程序
1 files modified
21 ■■■■■ changed files
Core/Src/main.c 21 ●●●●● patch | view | raw | blame | history
Core/Src/main.c
@@ -39,7 +39,8 @@
/* Private macro -------------------------------------------------------------*/
/* USER CODE BEGIN PM */
#define THRESHOLD_LUX       100
#define THRESHOLD_NOISY     1000
/* USER CODE END PM */
/* Private variables ---------------------------------------------------------*/
@@ -91,23 +92,27 @@
  MX_USART1_UART_Init();
  MX_ADC1_Init();
  /* USER CODE BEGIN 2 */
  init_relay();
  init_led();
  /* Turn on relay after 1 second */
  HAL_Delay(1000);
  turn_relay(Relay1, ON);
  printf("Auto light program start.\r\n");
  /* USER CODE END 2 */
  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
      lux = noisy = 0;
      adc_sample_lux_noisy(&lux, &noisy);
      printf("Lux:%lu Noisy:%lu\r\n", lux, noisy);
      if( lux<=THRESHOLD_LUX && noisy>= THRESHOLD_NOISY )
      {
          printf("Lux:%lu Noisy:%lu, turn light on\r\n", lux, noisy);
          turn_relay(Relay1, ON);
      HAL_Delay(5000);
          printf("turn light off now\r\n");
          turn_relay(Relay1, OFF);
      }
      HAL_Delay(10);
    /* USER CODE END WHILE */