yincheng.zhong
2023-08-02 34a46bcbc3a65ff69369a697c7a10d5992be6161
Src/main.c
@@ -75,7 +75,7 @@
static void MX_LPTIM1_Init(void);
static void MX_USART1_UART_Init(void);
static void MX_SPI1_Init(void);
static void MX_ADC_Init(void);
void MX_ADC_Init(void);
static void MX_DMA_Init(void);
static void MX_TIM2_Init(void);
/* USER CODE BEGIN PFP */
@@ -188,6 +188,7 @@
   if(HAL_GPIO_ReadPin(INPUT_5V_GPIO_Port,INPUT_5V_Pin))
   {
      nomove_count = 0;
    bat_percent=Get_VDDVlotage();
      if(state5v==0)
      {
         state5v=1;
@@ -226,10 +227,7 @@
   }
         if(g_com_map[CNT_REBOOT]==1)
      {
         g_com_map[CNT_REBOOT]=0;
         g_com_map[MAP_SIGN_INDEX]=0;
         save_com_map_to_flash();
         delay_ms(100);
         ReturnFactory();
         SCB->AIRCR = 0X05FA0000|(unsigned int)0x04; //软复位回到bootloader   
      }
      if(g_com_map[CNT_RESTART]==1)
@@ -282,7 +280,7 @@
      {
        case 1:
     
       HAL_GPIO_WritePin(GPIOB, MOTOR_Pin, GPIO_PIN_SET);
  HAL_GPIO_WritePin(GPIOB, MOTOR_Pin, GPIO_PIN_SET);
  GPIO_InitStruct.Pin = MOTOR_Pin;
  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
  GPIO_InitStruct.Pull = GPIO_NOPULL;
@@ -295,6 +293,7 @@
         break;
      }
}
int16_t g_commap_antdelay;
u8 active_flag,nomovesleeptime;
void Program_Init(void)
{   float temp;
@@ -306,9 +305,9 @@
   hardware_pici = STMFLASH_ReadHalfWord(FLASH_HARDWARE_VERSION_MAP+2);
   hardware_type = STMFLASH_ReadHalfWord(FLASH_HARDWARE_VERSION_MAP+4);
   //deca_sleep(1000);
   g_com_map[VERSION] = (1<<8)|28;
   g_com_map[VERSION] = (1<<8)|37;
    active_flag = g_com_map[ACTIVE_INDEX];
       module_power = g_com_map[POWER];
    module_power = g_com_map[POWER];
   imu_enable=g_com_map[IMU_ENABLE];
   motor_enable=g_com_map[MOTOR_ENABLE];
   
@@ -342,7 +341,11 @@
      {module_power=67;}
      if(module_power<0)
      {module_power=0;}
    if(g_com_map[ANT_LENGTH]>10000)
    {
        g_com_map[ANT_LENGTH] = 0;
    }
    g_commap_antdelay = -g_com_map[DIST_OFFSET];
   current_slotnum=1;
   current_time=GetLPTime();
      if (HAL_LPTIM_TimeOut_Start_IT(&hlptim1, LPTIMER_1S_COUNT, slot_startcount) != HAL_OK)  //system time is 1010ms   1 puls=30.518us
@@ -383,6 +386,11 @@
{
      //SCB->AIRCR = 0X05FA0000|(unsigned int)0x04; //软复位回到bootloader   
}
void MX_ADC_DeInit(void)
{
    HAL_ADC_DeInit(&hadc);
    HAL_ADCEx_DisableVREFINT();
}
/* USER CODE END 0 */
/**
@@ -414,16 +422,15 @@
  /* Initialize all configured peripherals */
  MX_GPIO_Init();
  MX_LPTIM1_Init();
   MX_DMA_Init();
   MX_DMA_Init();
  MX_USART1_UART_Init();
  MX_SPI1_Init();
  MX_ADC_Init();
//  MX_TIM2_Init();
  MX_TIM2_Init();
  /* USER CODE BEGIN 2 */
   LED_LG_ON;
   Program_Init();
   LIS3DH_Data_Init();
   Accelerometer_Init();
   Dw1000_Init();
   Dw1000_App_Init();
   HardWareTypeDiffConfig();
@@ -462,7 +469,7 @@
//      }
//      LED_TR_BLINK;s
      
         bat_percent=Get_Battary();
         bat_percent=Get_VDDVlotage();
      if(bat_percent>15)
      {   LED_TB_ON;
         Tag_App();
@@ -558,7 +565,7 @@
  * @param None
  * @retval None
  */
static void MX_ADC_Init(void)
void MX_ADC_Init(void)
{
  /* USER CODE BEGIN ADC_Init 0 */
@@ -595,7 +602,7 @@
  }
  /** Configure for the selected ADC regular channel to be converted.
  */
  sConfig.Channel = ADC_CHANNEL_1;
  sConfig.Channel = ADC_CHANNEL_VREFINT;
  sConfig.Rank = ADC_RANK_CHANNEL_NUMBER;
  if (HAL_ADC_ConfigChannel(&hadc, &sConfig) != HAL_OK)
  {