便携式地理信息采集仪的设计
系统软件设计
3.1 主程序功能
主程序负责初始化、开中断、分析解析GPS数据、数据显示指导系统进入各种相应的工作状态。主程序流程图见图6a。

图6 程序流程图
Fig.6 Program Flow Diagram
3.1 GPS数据接收程序设计
车载终端的设计需要从GPS定位信息中提取出有用的信息并且显示出来,所以也需要了解各种NMEA数据的含义。下面仅列出GPS固定数据输出语句(GPGGA)输出范例,各数据代表的意义如表1所示。输出范例:
名称 | 实例 | 单位 | 叙述 |
信息代号 | $GPGGA | GGA数据 | |
格林尼治时间 | 025812.487 | 时时分分秒秒.秒秒秒 | |
纬度 | 3752.5236 | 度度分分.分分 | |
北半球或南半球指示器 | N | 北半球(N)或南半球(S) | |
经度 | 11229.1768 | 度度度分分.分分 | |
东半球或西半球指示器 | E | 东(E)半球或西(W)半球 | |
GPS状态 | 1 | 1=非差分定位 | |
使用卫星数 | 07 | ||
水平精度因子 | 1.0 | ||
海拔高度 | 830.0 | m | (-9999.9~99999.9) |
While ((IFG1 URXIFG0) == 1);
{ UART0_RX_BUF[num++]=RXBUF0;
if (UART0_RX_BUF[0]!='$') num=0;
if(num==5)
{ if (UART0_RX_BUF[2]!='P') num=0;
if (UART0_RX_BUF[3]!='G') num=0;
if (UART0_RX_BUF[4]!='G') num=0;
}
if (num==90)
{ for (i=70;i90;i++)
{ if (UART0_RX_BUF[i]!='*') num=0;
else k=i; }
}
}
}
3.3显示程序设计
信息采集仪具有实时数据显示功能,可以将采集到的地理信息显示出来,工作人员可以更直观的掌握地理信息数据。单片机接收到GPS数据并且解析完成后,将需要显示的信息(经纬度、海拔等)存储到显示缓冲器内,以便显示时调用。本设计采用定时器中断方式进行数据显示,当定时器溢出中断时,进入数据显示程序,显示程序调用显示缓冲器内数据,通过P6端口送到LCD显示模块进行显示。显示程序流程图如图6b:
结论
地理信息分析研究一门发展迅速的学科,是气候变化,地理地貌的研究的基础,其应用涉及到民用、军用各个行业,所以信息的采集精确程度一直备受各方面关注。便携式地理信息采集仪硬件以及软件均采用模块化设计,易于升级与维护。经过实际运行,采集数据准确可靠,为地理信息研究部门提供了第一手资料。避免了以往人工记录存在较大误差的缺点,该系统具有良好的推广价值和应用前景。
评论