zhyinch
2019-11-13 cba4dbb02fc442a8e238d2dabb389e1e5e8185f6
测距异常值bug没找到原因
已修改2个文件
12 ■■■■■ 文件已修改
源码/核心板/Src/application/dw_app.c 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
源码/核心板/Src/main.c 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
源码/核心板/Src/application/dw_app.c
@@ -611,14 +611,17 @@
                    g_UWB_com_interval = 0;
                    dis_after_filter=dist_cm;
                    hex_dist = dist_cm+(int16_t)g_com_map[DIST_OFFSET];
                    if(hex_dist<100000&&hex_dist>-1000)
                    {
                        if(tag_id_recv-TAG_ID_START<=TAG_NUM_IN_SYS)
                    if(abs(hex_dist-his_dist[tag_id_recv-TAG_ID_START])<1000&&hex_dist<100000&&hex_dist>-1000)
                        {
                    if(abs(hex_dist-his_dist[tag_id_recv-TAG_ID_START])<1000)
                    {
                        g_Tagdist[tag_id_recv-TAG_ID_START] = hex_dist;
                        anchor_dist_last_frm[tag_id_recv-TAG_ID_START] = hex_dist;
                        g_Tagdist[tag_id_recv]=    hex_dist;
                    }
                    his_dist[tag_id_recv-TAG_ID_START]=hex_dist;
                    g_Tagdist[tag_id_recv]=    anchor_dist_last_frm[tag_id_recv-TAG_ID_START];
                    g_flag_Taggetdist[tag_id_recv]=0;
                    if(!g_com_map[MODBUS_MODE])
                    {
@@ -639,7 +642,8 @@
                    Modbus_HoldReg[tag_id_recv*2]=anchor_dist_last_frm[tag_id_recv-TAG_ID_START]>>16;
                    Modbus_HoldReg[tag_id_recv*2+1]=anchor_dist_last_frm[tag_id_recv-TAG_ID_START];
                    //dis_after_filter = LP_Frac_Update(p_Dis_Filter, dist_cm);
                        }
                    }
                }
            }else{
                /* Clear RX error events in the DW1000 status register. */
源码/核心板/Src/main.c
@@ -57,7 +57,7 @@
//        g_com_map[DEV_ID]=1;
//    g_com_map[COM_INTERVAL]=10;
    OUT485_ENABLE;
    g_com_map[VERSION] = 0x0107;
    g_com_map[VERSION] = 0x0109;
    temp=(float)g_com_map[MAX_REPORT_ANC_NUM]*4/3;    
    temp2=g_com_map[DEV_ID]*g_com_map[MAX_REPORT_ANC_NUM]*4/3;
    if(temp2<temp)