| | |
| | | if(g_com_map[IMU_THRES]<1) |
| | | {g_com_map[IMU_THRES]=1;} |
| | | } |
| | | u16 decid; |
| | | void Program_Init(void) |
| | | { float temp; |
| | | u16 temp2; |
| | |
| | | #endif |
| | | OUT485_ENABLE; |
| | | ComMapCheck(); |
| | | g_com_map[VERSION] = 0x0219; |
| | | g_com_map[VERSION] = 0x021e; |
| | | dev_id = g_com_map[DEV_ID]; |
| | | slottime=ceil((double)g_com_map[MAX_REPORT_ANC_NUM]*SLOT_SCALE)+3; |
| | | max_slotpos=g_com_map[COM_INTERVAL]/slottime; |
| | | tyncpoll_time=(g_com_map[DEV_ID]%max_slotpos)*slottime; |
| | | module_power = g_com_map[POWER]; |
| | | total_slotnum = 1000/g_com_map[COM_INTERVAL]; |
| | | anchor_type = dev_id%3; |
| | | decid = (g_com_map[DEV_ID]/0x1000)*1000+((g_com_map[DEV_ID]%0x1000)/0x100)*100+((g_com_map[DEV_ID]%0x100)/0x10)*10+((g_com_map[DEV_ID]%0x10)); |
| | | anchor_type = decid%g_com_map[MAX_REPORT_ANC_NUM]; |
| | | |
| | | |
| | | |
| | |
| | | UART_PushFrame(hbsend,16); |
| | | } |
| | | extern u8 g_start_sync_flag,usart_send_flag,anc_report_num; |
| | | u16 heartbeat_timer,poll_timer; |
| | | u16 heartbeat_timer=58000,poll_timer; |
| | | int16_t sync_timer; |
| | | extern u8 flag_newsecond, tagpos_rec[50], tagpos_send[50],ancidlist_num; |
| | | uint32_t tagpos_binary; |
| | |
| | | UART_CheckSend(); |
| | | UART2_CheckReceive(); |
| | | |
| | | if( memcmp(g_com_map2,g_com_map,COM_MAP_SIZE)!=0) |
| | | { |
| | | SendAnchorState(SM_MAPERROR); |
| | | delay_ms(100); |
| | | SCB->AIRCR = 0X05FA0000|(unsigned int)0x04; //杞浣嶅洖鍒癰ootloader |
| | | } |
| | | if(heartbeat_timer>1000) |
| | | // if( memcmp(g_com_map2,g_com_map,COM_MAP_SIZE)!=0) |
| | | // { |
| | | // SendAnchorState(SM_MAPERROR); |
| | | // delay_ms(100); |
| | | // SCB->AIRCR = 0X05FA0000|(unsigned int)0x04; //杞浣嶅洖鍒癰ootloader |
| | | // } |
| | | if(heartbeat_timer>60000) |
| | | { |
| | | heartbeat_timer=0; |
| | | if(g_com_map[HEARTBEAT]&&g_com_map[DEV_ROLE]==0) |