gps定位及轨迹记录C.docx
- 文档编号:2478728
- 上传时间:2022-10-30
- 格式:DOCX
- 页数:22
- 大小:20.25KB
gps定位及轨迹记录C.docx
《gps定位及轨迹记录C.docx》由会员分享,可在线阅读,更多相关《gps定位及轨迹记录C.docx(22页珍藏版)》请在冰豆网上搜索。
gps定位及轨迹记录C
主程序文件:
#include"_STC90.h"
#include"_GPS.h"
sbitC_LED=P0^4;//数据通讯指示
sbitKey0=P3^3;
sbitKey1=P1^2;
sbitKey2=P1^0;
bitflg_gsv=0;
bitflg_mode=0;
bitflg_upload=0;
bitflg_rx=0;
bitflg_rxf=0;
ucharflg_rmcgga=0;//1rmc2gga
voidget_gpsmode(void)
{
if(!
flg_mode){
if(buf_gps[3]=='M'&&buf_gps[4]=='C')flg_rmcgga=1;//RMC
else{
if(buf_gps[3]=='G'&&buf_gps[4]=='A')flg_rmcgga=2;//GGA
elseflg_rx=0;
}
}
else{
if(buf_gps[3]=='S'&&buf_gps[4]=='V')flg_rmcgga=3;//GGA
elseflg_rx=0;
}
}
voidUART_RX(void)interrupt4
{
uchartp_rx;
while(!
RI);
tp_rx=SBUF;
if(!
flg_rxf){
if(flg_rx){
buf_gps[count_gps]=tp_rx;
if(count_gps==4)get_gpsmode();
if(tp_rx=='*'){flg_rx=0;flg_rxf=1;}
elsecount_gps++;
}
else{
if(tp_rx=='$'){flg_rx=1;count_gps=0;flg_rmcgga=0;}
}
}
if(tp_rx=='#')flg_upload=1;
RI=0;
}
voidUART_TX(uchartp_tx)
{
SBUF=tp_tx;
while(!
TI);
TI=0;_nus(100);
}
ucharvar_js7=36;
ucharvar_js5=0;
ucharvar_js4=0;
uintvar_jsrec=0;
//60ms
voidTIMER2_SEV(void)interrupt5
{
TF2=0;
if(var_js7>0)var_js7--;
if(var_js5>0)var_js5--;
if(var_js4>0)var_js4--;
if(var_jsrec>0)var_jsrec--;
}
voidinitial(void)
{
C_LED=0;
GPS_EN=0;
EA=0;
AUXR=0x01;
IPH=0x0c;IP=0x14;
SCON=0x50;
PCON=0x00;
RI=0;TI=0;ES=1;
TCON=0x00;
TMOD=0x21;
TH1=256-6;TL1=256-6;ET1=0;TR1=1;
T2CON=0x00;T2MOD=0x00;
RCAP2H=(65536-55296)/256;RCAP2L=(65536-55296)%256;
ET2=1;TR2=1;
I2C_Init();
L5_init();
L5_wrstr_cn(24,2,0,4,4);//卫星定位
L5_wrstr_cn(24,4,4,4,4);//轨迹记录
EA=1;
while(var_js7>0);
Lgps_disp_init();
C_LED=1;
}
voidKey_deal(void)
{
ucharjk=255;
C_LED=0;EA=0;flg_rx=0;flg_rxf=0;
if(!
Key0){
do{_nms(8);jk--;}while(!
Key0&&jk>0);
if(jk>0){
flg_mode=!
flg_mode;
L5_setxy(0,1);ofs=0;line=0x00;Lwr_icob(336);
if(!
flg_mode)Lgps_disp_dt();
}
else{
flg_sata=!
flg_sata;L5_SATA();
GPS_EN=flg_sata;
}
do{while(!
Key0);_nms(5);}while(!
Key0);
}
if(!
Key1){
do{_nms(20);jk--;}while(!
Key1&&jk>0);
if(jk>0){at_onewr('H');var_js4=10;}
elseat_format();
do{while(!
Key1);_nms(5);}while(!
Key1);
}
if(!
Key2){
do{_nms(8);jk--;}while(!
Key2&&jk>0);
if(jk>0)L5_LED=!
L5_LED;
else{
while(!
Key2){
rec_add();
_nms(255);_nms(255);_nms(255);_nms(255);
}
var_jsrec=var_rec*50;var_jsrec/=3;
}
}
C_LED=1;EA=1;
}
voidmain(void)
{
initial();
while
(1){
if(flg_rxf){
if(flg_sign)C_LED=0;
L5_ComData
(1);var_js5=6;
get_cama();
if(!
flg_mode){
if(flg_rmcgga==1)L5_RMC();
elseif(flg_rmcgga==2)L5_GGA();
}
else{
if(flg_rmcgga==3){
if(!
flg_gsv){
L5_GSV();
if(buf_gps[8]=='3')flg_gsv=1;
}
else{
if(buf_gps[8]=='2'){L5_GSV();flg_gsv=0;}
}
}
}
for(count_gps=0;count_gps<96;count_gps++)
buf_gps[count_gps]=0;
C_LED=1;flg_rxf=0;
}
if(var_js5==1){L5_ComData(0);var_js5=0;}
if(var_js7==0){L5_BAT();var_js7=16;}
if(!
(Key0&Key1&Key2)){_nms(5);Key_deal();}
if(var_js4==1){L5_AtWr(0);var_js4=0;}
if(!
flg_sata){
if(var_rec>0){
if(var_jsrec==0){
at_onewr('A');var_js4=10;
var_jsrec=var_rec*50;var_jsrec/=3;
}
}
}
if(flg_upload){
if(flg_sata){
uintk;ucharr;
C_LED=0;EA=0;flg_rx=0;flg_rxf=0;
for(k=0;k AT24C64_RdPage(k*16); UART_TX(k/256);UART_TX(k%256); for(r=0;r<16;r++)UART_TX(C64_buf[r]); L5_sch(1,1,k,at_id); } EA=1;L5_sch(0,0,0,0);C_LED=1; } flg_upload=0; } } } _gps.h文件: #include"_STC90.h" #include"_LCD5110.h" #include"_AT24C64.h" #defineBat_full10//电量满 #defineBat_empt11//电量空 #defineSignal12//信号 #defineNoSignal13//信号 #definefile14//文件 #defineSata_run15//状态运行 #defineSata_pause16//状态暂停 #defineIco_gps17//GPS #defineIco_com18//数据通讯 #defineIco_del19//删除 #defineIco_upload20//上传 #defineIco_wait21//等待 #definechr_point22//大'.' #definechr_degree23//度 #definechr_min24//分 #defineIco_point25//小度 #defineIco_degree26//小度 sbitBat_Low=P1^4;//电池0低 sbitGPS_EN=P3^5;//GPS使能 ucharbuf_gps[96]={0}; ucharcount_gps=0; bitflg_sign=0; ucharvar_seg[20]={0}; ucharofs=0; ucharline=0x00; voidget_cama(void) { uchartp_c=0,cj; for(cj=0;cj<20;cj++)var_seg[cj]=0; for(cj=0;cj if(buf_gps[cj]==','){var_seg[tp_c]=cj;tp_c++;} } voidLwr_icob(uintnb){for(;nb>0;nb--)L5_wrbyte(1,line);} voidLwr_ico(ucharic) { uchari0,i1; switch(ic){ case'0': case'1': case'2': case'3': case'4': case'5': case'6': case
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- gps 定位 轨迹 记录