资源简介
基于51的GPS数据分离,1602显示,使用串口通信,将GPS传回数据中的时间,日期,经纬度分离出来, 在1602液晶上显示

代码片段和文件信息
#include
#include “1602.h“
sbit GPS_SPD=P2^1; //GPS模块速率设置
sbit KEY1=P2^0; //显示内容分屏切换
char code TIME_AREA= 8; //时区
//GPS数据存储数组
unsigned char JD[10]; //经度
unsigned char JD_a; //经度方向
unsigned char WD[9]; //纬度
unsigned char WD_a; //纬度方向
unsigned char date[6]; //日期
unsigned char time[6]; //时间
unsigned char speed[5]={‘0‘‘0‘‘0‘‘0‘‘0‘}; //速度
unsigned char high[6]; //高度
unsigned char angle[5]; //方位角
unsigned char use_sat[2]; //使用的卫星数
unsigned char total_sat[2]; //天空中总卫星数
unsigned char lock; //定位状态
//串口中断需要的变量
unsigned char seg_count; //逗号计数器
unsigned char dot_count; //小数点计数器
unsigned char byte_count; //位数计数器
unsigned char cmd_number; //命令类型
unsigned char mode; //0:结束模式,1:命令模式,2:数据模式
unsigned char buf_full; //1:整句接收完成,相应数据有效。0:缓存数据无效。
unsigned char cmd[5]; //命令类型存储数组
//显示需要的变量
unsigned int dsp_count; //刷新次数计数器
unsigned char time_count;
bit page;
void sys_init(void);
bit chk_key(void);
void ser_init()
{
TMOD=0X20;//设置定时器T1为工作方式2
TR1=1;//启动定时器T1
TH1=0xfd;//T1定时器装初值
TL1=0xfd;
REN=1;//允许串口接收
SM0=0;
SM1=1;//设置串口工作方式1
ES=1;//开串口中断
EA=1;//开总中断
}
main()
{
unsigned char i;
char Bhour;
sys_init();
lock=1;
use_sat[0]=‘0‘;
use_sat[1]=‘0‘;
total_sat[0]=‘0‘;
total_sat[1]=‘0‘;
while(1){
if(buf_full==0) //无GPS信号时
{
dsp_count++;
if(dsp_count>=65000){
LCD_cls(); //清屏
LCD_write_string(00“No GPS connect..“);
LCD_write_string(01“Please Check..“);
while(buf_full==0);
LCD_cls();
dsp_count=0;
}
}
else{ //有GPS信号时
if(chk_key()){ //检测到按键切换显示
page=!page;
LCD_cls();
}
if(!page){ //页面1
if(buf_full|0x01){ //GGA语句
if(lock==0){ //如果未定位
LCD_write_string(00“*---.--.---- “);
LCD_write_string(01“* --.--.---- “);
}else{ //如果已定位
LCD_write_char(00JD_a); //显示经度
for(i=0;i<10;i++){
LCD_write_char(i+10JD[i]);
}
LCD_write_char(01WD_a); //显示纬度
LCD_write_char(11‘ ‘);
for(i=0;i<9;i++){
LCD_write_char(i+21WD[i]);
}
}
LCD_write_char(141use_sat[0]); //显示接收卫星数
LCD_write_char(151use_sat[1]);
buf_full&=~0x01;
dsp_count=0;
}
if(buf_full|0x02){ //GSV语句
LCD_write_char(141total_sat[0]);
LCD_write_char(151total_sat[1]);
buf_full&=~0x02;
dsp_count=0;
}
if(buf_full|0x04){
if(lock==0){ //如果未定位
LCD_write_string(00“*---.--.---- “);
LCD_write_string(01“* --.--.---- “);
}else{ //如果已定位
LCD_write_char(00JD_a); //显示经度
for(i=0;i<10;i++){
LCD_write_char(i+10JD[i]);
}
LCD_write_char(01WD_a); //显示纬度
LCD_write_char(11‘ ‘);
for(i=0;i<9;i++){
LCD_write_char(i+21WD[i]);
}
}
LCD_write_char(140use_sat[0]); //显示接收卫星数
LCD_write_char(150use_sat[1]);
buf_full&=~0x04;
dsp_count=0;
}
}
else{ //页面2
if(buf_full|0x01){ //GGA语句
buf_full&=~0x01;
dsp_count=0;
}
if(buf_full|0x02){
buf_full&=~0x02;
dsp_count=0;
}
if(buf_full|0x04){ //RMC语句
Bhour=((time[0]-0x30)*10+time[1]-0x30)+TIME_AREA;
if(Bhour>=24){
Bhour-=24;
}else if(Bhour<0){
Bhour+=24;
}
LCD_write_char(01date[4]);
LCD_write_char(11date[5]);
LCD_writ
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 20731 2016-01-06 15:59 gps数据分离\GPS\1602
文件 8501 2016-01-06 14:45 gps数据分离\GPS\1602.c
文件 3686 2016-01-06 13:28 gps数据分离\GPS\1602.h
文件 6300 2016-01-06 15:59 gps数据分离\GPS\1602.hex
文件 16863 2016-01-06 14:45 gps数据分离\GPS\1602.LST
文件 29095 2016-01-06 15:59 gps数据分离\GPS\1602.M51
文件 25346 2016-01-06 14:45 gps数据分离\GPS\1602.OBJ
文件 1140 2016-01-06 15:59 gps数据分离\GPS\1602.Opt
文件 421 2016-01-06 15:59 gps数据分离\GPS\1602.plg
文件 1990 2016-01-06 15:04 gps数据分离\GPS\1602.Uv2
....... 1141 2016-01-06 15:59 gps数据分离\GPS\1602_Opt.Bak
....... 0 2016-01-06 13:01 gps数据分离\GPS\1602_Uv2.Bak
文件 1109623 2016-01-03 14:27 gps数据分离\对于GPS模块数据接收和提取的问题分析 - telezhaohu的日志 - 电子工程世界-论坛.pdf
目录 0 2016-01-06 15:59 gps数据分离\GPS
目录 0 2016-01-06 16:12 gps数据分离
----------- --------- ---------- ----- ----
1224837 15
- 上一篇:基于Echarts的物流大数据管理平台.rar
- 下一篇:nc-verilog 学习
相关资源
- 武汉大学 科傻GPS 静态后处理软件
- 开源的nmealib
- 相干与非相干实现捕获与跟踪GPS
- 天文钟GPS对时程序
- 用切比雪夫多项式标准化GPS卫星轨道
- 起算点点位不同对GPS-RTK测高的影响
- GPS-RTK技术在公婆泉矿区详查中的应用
-
A web-ba
sed interview platform with geospat - 根据GPS数据计算航向公式
- Excel在GPS坐标转换计算中的应用
- GPS-RTK技术及EPSW全息测绘软件在沉陷治
- 基于GPS数据的露天矿道路网自动提取
- 基于GPS-RTK与全站仪的城市道路改扩建
- GPS-RTK、全站仪联合作业在化石沟铜矿
- 基于GPS一机多天线技术的尾矿坝全自
- GPS技术在山区边坡监测中的应用
- GPS-RTK与全站仪联合作业在山谷型采石
- 论变形监测技术的现状与发展趋势
- GPS技术在大采深采区建筑物变形监测
- 探讨GPS技术在地形复杂矿山变形监测
- 全球地名地址及GPS坐标数据库
- 工作/生活照片归档管理/Exif查看器/
- gps程序、算法
- STM32+陀螺仪+GPS代码
- 基于单片机的GPS定位及显示系统设计
- GPS模拟仿真GPS卫星定位模拟仿真
- GPS数据转换X.Y坐标
- 伊敏露天矿三期卡车调度系统应用效
- STM32+BC20通过HTTP传输GPS北斗定位到湖畔
- NemaStudio1.36 NMEA模拟工具软件最新+注册
评论
共有 条评论