但是我觉得这个1秒钟一个gps位置信号应该来说普通的单片机完全可以胜任的啊,关键是算法要好!这个是51处理gps信号模块的c算法!
初始化串口就不写啦.
serial()
{ ri=0; //软件中断清出,
if(sbuf==0x24) //0x24对应的是$,串口数据gprmc的起始标记,
{ recoder=1;
i=0;
igps=0;
numbercoma=0; //设置标记字符,
}
if (record==1)
{
if(sbuf==0x2c)(numbercoma++;) //0x2c是 “,”
if (numbercoma==3) //第三个逗号后面在gprmc语句中是分割ne数据的.
{
stringgps[igps]=sbuf; //构造一个数组放置位置数据,
igps++;
}
if(sbuf=="*") // “*”是gps语句的结束标致。
{stringgps[igps]='\0'
j=0;
len=springgps,"%s",stringgps+1); //语句转换成需要的数据格式.
ndig=sprintf(buffer,"k1:%d",k1);
if(len2!=0)
{
unit numbergps=atoi(srtringgps);
}
numbergps=0;
numbercoma=0;
record=0;
igps=0;
}
}
}