易截截图软件、单文件、免安装、纯绿色、仅160KB

GPS长数据捕获时的C/A码相位漂移

GPS信号长数据捕获C/A码相位不一致的问题
  在生成了固定C/A码相位(固定速度、加速度为0m/s2、加加速度为0m/s3)的较长时间的仿真数据后,用来做多次捕获实验。此时会发现,当捕获的次数多了之后会出现C/A码相位的递增现象。当然除了程序可能出现的各种原因以外,还可以做如下解释:由于采样频率不能为C/A码速率的整数倍,所以对信号进行采样的过程中会出现样本边界模糊的问题,即正常情况下应该是N个样本而某些C/A码周期会出现N+1个样本的情况。这个就是导致长时间捕获后C/A码出现相位递增的根本原因。在做捕获的时候,本地C/A码形成的时候相位是从0开始的,也就是说会产生N+1个点,而不会产生N个点,所以在一段周期内就会多读出一个样本点来,而这种连续捕获的后果就会让C/A码从错误的起始点开始与接收数据对齐,继而导致一段时间后相位就会增加。


相关文档:

求方程ax^2+bx+c=0的根(函数)

#include<stdio.h>
#include<math.h>
float x1,x2,disc,p,q;
int main()
{
void greater_than_zero(float,float);
void equal_to_zero(float,float);
void smaller_than_zero(float,float);
float a,b,c;
printf("\ninput a,b,c:");
scanf("%f,%f,%f",&a,&b,&c) ......

C程序:使用 googletest 测试框架

googletest C/C++ 测试框架非常好用,介绍及下载请看  http://code.google.com/p/googletest/
//============================================================================
// 使用 googletest 测试框架
//============================================================================

// Returns n! ......

C程序:确定一个整数的计算机内部表示中有几个"1"

/*
注意不断右移判断最低位是1有多少个的算法是错误的,
因为根据GNU C/C++的实现来看,负数是带符号填充进行右移的,所以如果是负数,该算法会死循环。
变通办法:Java可以用>>>逻辑右移位操作符,C/C++可以强制转换成无符号整数再处理
下面的程序是正解。其中num &= (num - 1) 会消除num的最小位置的"1" ......

C 语言二维数组和双重指针

#include "Stdio.h"
#include "Conio.h"
#include
#define size 81
#define lim 5
#define tstr "ABCDEFGH"
void display(char **p,int i);
void display2(char *p[],int i);
void display3(char (*p)[40],int i);
void testint();
int main(void)
{
testint();
getch();
return 0;
}
test1() ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号