| | |
| | | /* Private variables ---------------------------------------------------------*/ |
| | | ADC_HandleTypeDef hadc; |
| | | |
| | | IWDG_HandleTypeDef hiwdg; |
| | | |
| | | LPTIM_HandleTypeDef hlptim1; |
| | | |
| | | RTC_HandleTypeDef hrtc; |
| | |
| | | static void MX_LPTIM1_Init(void); |
| | | static void MX_USART1_UART_Init(void); |
| | | static void MX_TIM3_Init(void); |
| | | static void MX_IWDG_Init(void); |
| | | /* USER CODE BEGIN PFP */ |
| | | |
| | | /* USER CODE END PFP */ |
| | |
| | | MX_LPTIM1_Init(); |
| | | MX_USART1_UART_Init(); |
| | | MX_TIM3_Init(); |
| | | MX_IWDG_Init(); |
| | | /* USER CODE BEGIN 2 */ |
| | | |
| | | Uart_Register(UART_ID_DBG, &huart1); |
| | |
| | | /* USER CODE BEGIN ADC_Init 2 */ |
| | | |
| | | /* USER CODE END ADC_Init 2 */ |
| | | |
| | | } |
| | | |
| | | /** |
| | | * @brief IWDG Initialization Function |
| | | * @param None |
| | | * @retval None |
| | | */ |
| | | static void MX_IWDG_Init(void) |
| | | { |
| | | |
| | | /* USER CODE BEGIN IWDG_Init 0 */ |
| | | |
| | | /* USER CODE END IWDG_Init 0 */ |
| | | |
| | | /* USER CODE BEGIN IWDG_Init 1 */ |
| | | |
| | | /* USER CODE END IWDG_Init 1 */ |
| | | hiwdg.Instance = IWDG; |
| | | hiwdg.Init.Prescaler = IWDG_PRESCALER_256; |
| | | hiwdg.Init.Window = 4095; |
| | | hiwdg.Init.Reload = 4095; |
| | | if (HAL_IWDG_Init(&hiwdg) != HAL_OK) |
| | | { |
| | | Error_Handler(); |
| | | } |
| | | /* USER CODE BEGIN IWDG_Init 2 */ |
| | | |
| | | /* USER CODE END IWDG_Init 2 */ |
| | | |
| | | } |
| | | |
| | |
| | | uint16_t yundong_time; |
| | | uint8_t gpslednum; |
| | | #define BAT_TIME 100 |
| | | #define DIANLIANG 15 |
| | | uint8_t air780_state; |
| | | extern uint8_t chongman_flag; |
| | | uint8_t jinru_parsegga_flag; |
| | | void Bat_Percent_Poll() |
| | | { |
| | | bat_time++; |
| | | if(bat_time>100) |
| | | if(bat_time>BAT_TIME) |
| | | { |
| | | bat_time=0; |
| | | bat_percent=Get_Battary(); |
| | |
| | | } |
| | | void Powerled_Poll() |
| | | { |
| | | if(bat_percent>BAT_TIME) |
| | | if(!HAL_GPIO_ReadPin(INPUT_5V_GPIO_Port,INPUT_5V_Pin)) |
| | | { |
| | | powerled = GREEN; |
| | | } |
| | | else |
| | | { |
| | | powerled = RED; |
| | | if(bat_percent>DIANLIANG) |
| | | { |
| | | powerled = RED; |
| | | } |
| | | else |
| | | { |
| | | powerled = RED; |
| | | } |
| | | } |
| | | } |
| | | void Fangchai_Panduan_Poll() |
| | |
| | | { |
| | | if(nomove_flag==0&&!HAL_GPIO_ReadPin(INPUT_5V_GPIO_Port,INPUT_5V_Pin)&&fangchai_state==0&&air780_state==0) |
| | | { |
| | | if(gpsled==LEDOFF) |
| | | if(jinru_parsegga_flag==0) |
| | | { |
| | | gpslednum++; |
| | | if(gpslednum>5) |
| | |
| | | nomove_count++; |
| | | Sleep_Panduan_Poll(); |
| | | Bat_Percent_Poll(); |
| | | if(!chongman_flag) |
| | | { |
| | | powerled=LEDOFF; |
| | | loraled=LEDOFF; |
| | | gpsled=LEDOFF; |
| | | uwbled=LEDOFF; |
| | | Set4LEDColor_Off(); |
| | | } |
| | | HAL_IWDG_Refresh(&hiwdg); |
| | | } |
| | | /* USER CODE END 4 */ |
| | | |