RTKLIB改-set_index-增加北斗的

if (sys == SYS_CMP)
{

  unsigned char temp[64];
  for (int x = 0; x < 64; x++)
  {
  temp[x] = ind->code[x];
  }

  qsort(&temp, n, sizeof(ind->code[0]), comp);

  for (j = 0; j < n; j++)
  {
  if (temp[0] == ind->code[j])
  {
  ind->pos[j] = 0; continue;
  }
  if (temp[n - 1] == ind->code[j])
  {
  ind->pos[j] = 2;
  continue;
  }
  else ind->pos[j] = 1;
  }

}

利用qsort对code(十六进制表示的char类型)进行排序,最小的在最上面,由于北斗只有三个频点,故只需要设置三个位置即可。

最小的code对应第一个位置(精度最高),依次往下。

设计思路:

要找到code里面的顺序,但是qsort会打乱原来的顺序,故增加了一个temp,将temp进行排序,然后与code对比,来设置优先级(位置pos)。

posted @ 2016-10-16 09:19  OnEDaYa  阅读(691)  评论(0编辑  收藏  举报