zhyinch
2021-07-23 612814daf9bb44c4104ab3708d8a5fcba6f2a6d5
源码/核心板/Src/application/global_param.c
@@ -2,7 +2,7 @@
#include "Flash.h"
#include "dw_app.h"
#include <string.h>
char boardtype[4]="FZCJ";
uint16_t g_com_map[COM_MAP_SIZE];
@@ -17,23 +17,46 @@
   __enable_irq();
   return result;
}
void FactorySettings(void)
{
        g_com_map[0] = 0x55AA;
      g_com_map[DEV_ID] =0x04;//DEFAULT_DEV_ID;   //榛樿璁惧ID
      g_com_map[COM_INTERVAL]=100;
      g_com_map[MAX_REPORT_ANC_NUM]=2;
      g_com_map[GROUP_ID]=0;
      g_com_map[DIST_OFFSET]=-13;
      #ifdef WORK_MODE_TAG
         g_com_map[DEV_ROLE] =0x1;  //鏍囩
      #else
         g_com_map[DEV_ROLE] =0x0;  //鍩虹珯
      #endif
      g_com_map[ANC_POLL]=0;
      g_com_map[ALARM_DEV] = 0;
      g_com_map[ALARM_DISTANCE1] = 0;   //榛樿鎶ヨ璺濈50cm
      g_com_map[ALARM_DISTANCE2] = 0;   //榛樿鎶ヨ璺濈50cm
      g_com_map[ALARM_DISTANCE3] = 0;   //榛樿鎶ヨ璺濈50cm
      g_com_map[HEARTBEAT]=0;
      g_com_map[CNT_RESTART]=0;
      g_com_map[CNT_REBOOT]=0;
      g_com_map[CNT_UPDATE]=0;
      g_com_map[NEARBASE_NUM]=0;
      g_com_map[POWER]=30;
        g_com_map[SPEEDFILTER_THRES]=10000;
      g_com_map[FILTER_COEFFICIENT]=40;
        g_com_map[WAR_JDQ_TIME] = 1;
      //memcpy(&g_com_map[BOARD_TYPE],boardtype,4);
      save_com_map_to_flash();
        delay_ms(100);
}
void parameter_init(void)
{
   FLASH_Read(FLASH_IAP_CTRL_MAP, (uint8_t*)&g_com_map, (COM_MAP_SIZE<<1));
   
   if(g_com_map[0] != 0x55AA)
   if(g_com_map[0] != 0x55AA&&g_com_map[CNT_REBOOT]!=0)
   {
      g_com_map[0] = 0x55AA;
      g_com_map[ALARM_DISTANCE] = 200;   //榛樿鎶ヨ璺濈200cm
      g_com_map[ALARM_DEV] = 0;
      g_com_map[DEV_ID] = DEFAULT_DEV_ID;   //榛樿璁惧ID
      save_com_map_to_flash();
   }
   dis_after_filter = 1000;         //榛樿璺濈
   p_Dis_Filter = New_LP_Frac(0.3);
        FactorySettings();
          NVIC_SystemReset();
   }
}