VARIANT型变量转换为 ColeSafeArray型变量,再将其转换为 BYTE型数组,然后将数组转换为 CString型变量,以满足不同的变量类型显示数据的需要。* /
//提取 GPS信号
CString m_zjz;
m_zjz=m_comdata;
//寻找 GPS信号的头标志
int s;
s=m_zjz.Find("$ GPRMC,");
CString m_gps;
//NUM为所提取 GPS信号的长度
m_gps=m_zjz.Mid(s,NUM);
int x;
x=m_gps.GetLength();
//信号长度不符合要求,则拒绝接收
if (x != NUM) {
m_gps.Empty();
}
//寻找所需要的 GPS信号的头标志
int y;
y=m_gps.Find("$ GPRMC,");
if (y != 0)
{
m_gps.Empty();
}
//m- gpsdata是已声明的类成员变量
m_gpsdata=m_gps;
}
}
这样就将 GPS信号的数据流提取出来了。再通过简单的字符串操作就可以分别找出 GPS信号中的经度、纬度以及相对应的格林威治时间等定位信息。
以上
程序在 Win98/95/NT、 P133 PC机、 ROCKWELL JUPITER GPS接收板环境下调试通过。