| | |
| | | #include "Rcc_Nvic_Systick.h" |
| | | #include "Usart.h" |
| | | #include "Spi.h" |
| | | #include "Flash.h" |
| | | #include "led.h" |
| | | #include "beep.h" |
| | | #include "dw_driver.h" |
| | |
| | | void ComMapCheck(void) |
| | | { |
| | | |
| | | if(g_com_map[ANT_LENGTH]>10000) |
| | | { |
| | | g_com_map[ANT_LENGTH] = 0; |
| | | } |
| | | if(g_com_map[WAR_JDQ_TIME]>1000||g_com_map[WAR_JDQ_TIME]<0) |
| | | { |
| | | g_com_map[WAR_JDQ_TIME] = 1; |
| | | } |
| | | if(g_com_map[COM_INTERVAL]==0) |
| | | { |
| | | g_com_map[COM_INTERVAL]=100; |
| | | } |
| | | if(dist_threshold<300) |
| | | {dist_threshold = 300;} |
| | | if(dist_threshold>15000) |
| | | {dist_threshold = 15000;} |
| | | } |
| | | u16 JDQ_time; |
| | | int16_t g_commap_antdelay; |
| | | void Program_Init(void) |
| | | { float temp; |
| | | u16 temp2; |
| | |
| | | g_com_map[ANC_FLAG]=1; |
| | | save_com_map_to_flash(); |
| | | #endif |
| | | OUT485_ENABLE; |
| | | if(g_com_map[COM_INTERVAL]==0) |
| | | { |
| | | g_com_map[COM_INTERVAL]=100; |
| | | } |
| | | // |
| | | // g_com_map[COM_INTERVAL]=100; |
| | | // g_com_map[MAX_REPORT_ANC_NUM]=10; |
| | | // g_com_map[GROUP_ID]=0; |
| | | // g_com_map[DIST_OFFSET]=-116; |
| | | |
| | | g_com_map[VERSION] = 0x0133; |
| | | dist_threshold = (g_com_map[SPEEDFILTER_THRES]*10)/(1000/g_com_map[COM_INTERVAL]); |
| | | // g_com_map[DEV_ROLE] =0x0; //åºç« |
| | | // |
| | | // g_com_map[ANC_POLL]=1; |
| | | // g_com_map[ALARM_DEV] = 0; |
| | | // g_com_map[ALARM_DISTANCE1] = 0; //é»è®¤æ¥è¦è·ç¦»50cm |
| | | // g_com_map[ALARM_DISTANCE2] = 900; //é»è®¤æ¥è¦è·ç¦»50cm |
| | | // g_com_map[ALARM_DISTANCE3] = 1400; //é»è®¤æ¥è¦è·ç¦»50cm |
| | | // g_com_map[RELAY2_DISTANCE1] = 0; //é»è®¤æ¥è¦è·ç¦»50cm |
| | | // g_com_map[RELAY2_DISTANCE2] = 900; //é»è®¤æ¥è¦è·ç¦»50cm |
| | | // g_com_map[RELAY2_DISTANCE3] = 1400; //é»è®¤æ¥è¦è·ç¦»50cm |
| | | // g_com_map[WAR_JDQ_TIME] = 1; //1ç§ |
| | | // g_com_map[POWER]=30; |
| | | // g_com_map[SPEEDFILTER_THRES]=10000; |
| | | // g_com_map[FILTER_COEFFICIENT]=40; |
| | | // g_com_map[ANT_LENGTH]=0; |
| | | // g_com_map[NOMOVESLEEP_TIME]=728; |
| | | |
| | | |
| | | OUT485_ENABLE; |
| | | ComMapCheck(); |
| | | g_com_map[VERSION] = 0x013a; |
| | | FLASH_Read(FLASH_HARDWARE_FLAG, (uint8_t*)&g_com_map[HARDWAREFLAG_INDEX], 16); |
| | | dist_threshold = (g_com_map[SPEEDFILTER_THRES]*10)/(1000/g_com_map[COM_INTERVAL]); |
| | | g_commap_antdelay = g_com_map[ANT_LENGTH]; |
| | | JDQ_time = g_com_map[WAR_JDQ_TIME]*10; |
| | | g_com_map[SW_TYPE] = SW_FANGZHUANG; |
| | | dev_id = g_com_map[DEV_ID]; |
| | | group_id=g_com_map[GROUP_ID]; |
| | |
| | | module_power=67; |
| | | } |
| | | |
| | | // if(g_com_map[DEV_ROLE]) |
| | | // { |
| | | // printf("æ ç¾ID: %d .\r\n",dev_id); |
| | | // printf("é讯é´é: %d ms.\r\n",g_com_map[COM_INTERVAL]); |
| | | // printf("忬¡é讯åºç«æ°é: %d个.\r\n",g_com_map[MAX_REPORT_ANC_NUM]); |
| | | // }else{ |
| | | // |
| | | // anchor_type = dev_id%g_com_map[MAX_REPORT_ANC_NUM]; |
| | | // printf("åºç«ID: %x .\r\n",dev_id); |
| | | // printf("åºç«ç±»å: %c .\r\n",anchor_type+0x41); |
| | | // printf("忬¡é讯åºç«æ°é: %d个.\r\n",g_com_map[MAX_REPORT_ANC_NUM]); |
| | | // } |
| | | if(g_com_map[DEV_ROLE]) |
| | | { |
| | | printf("æ ç¾ID: %d .\r\n",dev_id); |
| | | printf("é讯é´é: %d ms.\r\n",g_com_map[COM_INTERVAL]); |
| | | printf("忬¡é讯åºç«æ°é: %d个.\r\n",g_com_map[MAX_REPORT_ANC_NUM]); |
| | | }else{ |
| | | |
| | | anchor_type = dev_id%g_com_map[MAX_REPORT_ANC_NUM]; |
| | | printf("åºç«ID: %x .\r\n",dev_id); |
| | | printf("åºç«ç±»å: %c .\r\n",anchor_type+0x41); |
| | | printf("忬¡é讯åºç«æ°é: %d个.\r\n",g_com_map[MAX_REPORT_ANC_NUM]); |
| | | } |
| | | OUT485_DISABLE; |
| | | // printf("DEVICE PAIRID: %d .\r\n",g_com_map[PAIR_ID]); |
| | | // printf("DEVICE ALARM DISTANCE: 1.%d 2.%d 3.%d .\r\n",g_com_map[ALARM_DISTANCE1],g_com_map[ALARM_DISTANCE2],g_com_map[ALARM_DISTANCE3]); |
| | |
| | | |
| | | for(i=0;i<255;i++) |
| | | { |
| | | g_Tagdist[i]=0xffff; |
| | | g_Tagdist[i]=0x1ffff; |
| | | } |
| | | } |
| | | |
| | |
| | | int main(void) |
| | | { |
| | | |
| | | Device_Init(); |
| | | Device_Init(); |
| | | //StartUpTest(); |
| | | Program_Init(); |
| | | Dw1000_Init(); |