基于51单片机的GPS全球定位系统_精品文档.doc
- 文档编号:1200630
- 上传时间:2022-10-18
- 格式:DOC
- 页数:5
- 大小:83KB
基于51单片机的GPS全球定位系统_精品文档.doc
《基于51单片机的GPS全球定位系统_精品文档.doc》由会员分享,可在线阅读,更多相关《基于51单片机的GPS全球定位系统_精品文档.doc(5页珍藏版)》请在冰豆网上搜索。
姓名:
樊建威学号:
0801500213
基于单片机AT89C51的GPS经纬度定位信息处理
引言:
GPS系统是一个高精度、全天候和全球性的无线电导航、定位和定时的多功能系统。
GPS技术已经发展成为多领域、多模式、多用途、多机型的国际性高新技术产业。
全球定位系统由三部分构成:
地面控制部分,空间部分和用户装置。
地面控制部分由主控站、地面天线、监测站和通讯辅助系统组成;空间部分由24颗卫星组成;用户装置部分主要由GPS接收机和卫星天线组成。
GPS接收机是软硬件结合的电路,相关通道接收来自射频前端的信号并将其转换成数字信号,解调解扩得到导航电文,在微处理器的控制处理后得到最终数据。
GPS的使用现在已经非常普及,大到航空航海系统,小到个人移动设备,都有着它的身影。
随着GPS的民用化与成本的降低,已经走入了人们的日常生活中,很多手机、PDA等手持设备都配备了GPS功能。
简单的说,GPS就功能就是在地球经纬座标系下对被测对象的方位进行测定,同时可以提供较高精度与实时的测定数据。
对于基于单片机的便携式设备,如果要获取持有者的位置信息,则GPS是最好的解决方案。
图1
1.系统的硬件设计
系统的总体设计如图1所示。
单片机AT89C51串口TXD、RXD分别与M-87的RXA、TXA进行连接,用于对M-87进行设置后,采集M-87的GPS定位和时间信息;单片机AT89C51的XTAL1、XTAL2采用内部时钟电路,与11.0592MHz的石英晶体和电容连接;单片机的复位电路采用加电自动复位电路;P1口与OLED显示模块的数据位DB0-DB7连接,P2.1与引脚RS连接,选择数据或指令寄存器;P2.2与引脚R/W连接,选择读或写;P2.3与引脚E连接,使能OLED显示模块;P2.4与引脚CS1连接,选择左半屏显示或不显示;P2.5与引脚CS2连接,选择右半屏显示或不显示;P2.6与引脚RSTB连接,用于对OLED进行复位。
2.系统的软件设计
GPS串口数据解码程序
bitReceivingF=0;
bitEndF=0;
bitRMCF=0;
bitGGAF=0;
bitVTGF=0;
bitGSAF=0;
ucharxdataGPS_wd[12]; //纬度
ucharxdataGPS_jd[13]; //经度
ucharSegment; //逗号计数
ucharBytes_counter;
ucharCommand;
voidGPRMC(uchar);
voidGPGGA(uchar);
voidGPVTG(uchar);
voidGPGSA(uchar);
voidgps(uchar);
voidgps(uchartmp)
{
//com_send_byte(tmp);
if(tmp=='$')//起始标志
{
Command=0;
ReceivingF=1;
Bytes_counter=0;
Segment=0; //清空语句段计数器
return;
}
if(ReceivingF)
{
if(tmp==',')
{
++Segment;
Bytes_counter=0; //清空段字节计数器
return;
}
if(tmp=='*')//收到结束标志
{
ReceivingF=0;
EndF=1;
return;
}
if(Segment==0)
{
if(Bytes_counter==3)//段0,语句类型判断
switch(tmp)
{
case'G':
Command=1;//语句类型$GPGGA
GGAF=1;
break;
case'M':
Command=2;//语句类型$GPRMC
RMCF=1;
break;
case'T':
Command=3;//语句类型$GPVTG
VTGF=1;
break;
case'S':
break;
default:
Command=0;//非有效数据类型,终止当前数据接收
ReceivingF=0;
break;
}
if(Bytes_counter==4)
if(Command==0&&tmp=='A')
{
Command=4;//语句类型$GPGSA
GSAF=1;
}
}
else
{
switch(Command)
{
case1:
GPGGA(tmp);
break;
case2:
GPRMC(tmp);
break;
case3:
GPVTG(tmp);
break;
case4:
GPGSA(tmp);
break;
default:
break;
}
}
++Bytes_counter;
}
NewByteF=0;
return;
}
voidGPGGA(uchartmp)
{
switch(Segment)
case1:
if(Bytes_counter==3) //$GPGGA段1处理纬度ddmm.mmmm(度分)格式
{
GPS_wd[Bytes_counter]='.'; //接收第二个字节后插入'.'
++Bytes_counter;
GPS_wd[11]='\0';
}
if(Bytes_counter==0)
++Bytes_counter;
GPS_wd[Bytes_counter]=tmp;
break;
case2:
GPS_wd[0]=tmp; //$GPGGA第2段处理纬度半球N(北半球)或S(南半球)
break;
case3:
if(Bytes_counter==4) //$GPGGA段3处理经度dddmm.mmmm(度分)格式
{
GPS_jd[Bytes_counter]='.'; //接收第3个字节后插入'.'
++Bytes_counter;
GPS_jd[12]='\0';
}
if(Bytes_counter==0)
++Bytes_counter;
GPS_jd[Bytes_counter]=tmp;
break;
case4:
GPS_jd[0]=tmp; //$GPGGA第4段处理经度半球E(东经)或W(西经)
break;
}
}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 51 单片机 GPS 全球定位系统 精品 文档