| | |
| | | save_com_map_to_flash(); |
| | | #endif |
| | | OUT485_ENABLE; |
| | | g_com_map[VERSION] = 0x0109; |
| | | g_com_map[VERSION] = 0x010a; |
| | | dev_id = g_com_map[DEV_ID]; |
| | | slottime=ceil((double)g_com_map[MAX_REPORT_ANC_NUM]/3)+1; |
| | | max_slotpos=g_com_map[COM_INTERVAL]/slottime; |
| | | tyncpoll_time=(g_com_map[DEV_ID]%max_slotpos)*slottime; |
| | | |
| | | #ifdef WORK_MODE_TAG |
| | | g_com_map[DEV_ROLE] =0x1; //鏍囩 |
| | | #else |
| | | g_com_map[DEV_ROLE] =0x0; //鍩虹珯 |
| | | #endif |
| | | |
| | | if(g_com_map[ANC_FLAG]==0xffff) |
| | | {g_com_map[DEV_ROLE]=1;} |
| | | |
| | | if(g_com_map[DEV_ROLE]) |
| | | { |
| | |
| | | { |
| | | UART_PushFrame(hbsend,16); |
| | | } |
| | | extern u8 g_start_sync_flag; |
| | | extern u8 g_start_sync_flag,usart_send_flag,anc_report_num; |
| | | u16 heartbeat_timer,poll_timer,sync_timer; |
| | | void IdleTask(void) |
| | | { |
| | |
| | | HeatBeat(); |
| | | } |
| | | |
| | | if(g_com_map[DEV_ROLE]==0&&usart_send_flag) |
| | | {u16 checksum; |
| | | usart_send_flag=0; |
| | | usart_send[2] = 4;//姝e父妯″紡 |
| | | usart_send[3] = anc_report_num*6+2;//姝e父妯″紡 |
| | | checksum = Checksum_u16(&usart_send[2],anc_report_num*6+2); |
| | | memcpy(&usart_send[4+anc_report_num*6],&checksum,2); |
| | | UART_PushFrame(usart_send,6+anc_report_num*6); |
| | | anc_report_num=0; |
| | | } |
| | | if(g_com_map[CNT_UPDATE]==1) |
| | | { |
| | | uint32_t result = 0; |