基于DSP的GPGGA定位数据提取源程序(代码).doc_第1页
基于DSP的GPGGA定位数据提取源程序(代码).doc_第2页
基于DSP的GPGGA定位数据提取源程序(代码).doc_第3页
基于DSP的GPGGA定位数据提取源程序(代码).doc_第4页
基于DSP的GPGGA定位数据提取源程序(代码).doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

温泉源:基于DSP的GPGGA定位数据提取基于DSP的GPGGA定位数据提取源程序(完整)附 录 源程序#include #include mmdrv.h #include mcbsp.h /串口头文件 #include cpu_reg.h #include lcd_86.h #define uint16 unsigned int#define uint8 unsigned char ioport unsigned portefff;#define IO_374 portefff void init_exint1_interrupt();void init_GPIO(void); void uart_rece_data_parse(void);/数据解析函数void uart_trans(void); void uart_trans_byte(unsigned int data);unsigned int flag=0xffff;char tx_re_buf1=0x38;/*/* welcome interface */*/void display()LCD_clear(0);cur_row=0; cur_col=50; LCD_pr_chars( Parse GPGGA data,20);cur_row=1; cur_col=0; LCD_pr_chars(*,22);cur_row=2; cur_col=0; LCD_pr_chars(Press key1:tm,lat,lon,hght,26);cur_row=3; cur_col=0; LCD_pr_chars(Press key2:for more data,25);cur_row=4; cur_col=11;LCD_pr_chars(please work harder,25);void main(void)unsigned int key_val;unsigned int i,j; SWWSR = 0x7fff; SWCR = 0x0001; BSCR = 0x8006; CLKMD = PLL_DIV_INIT; waitloop( 0x0400 ); CLKMD = PLL_LOCK_INIT_X(14); waitloop( 0x0400 ); PMST = 0x0168;IO_374=0xffff;/374 enable init_exint1_interrupt(); init_GPIO(); init_lcd();display(); /显示菜单 Close_LED_sign(); Close_LED_Data(); Close_LED_Traf(); waitloop( 0x0400 ); while(1)flag=0xffff; /*消抖*/i=Get_Key(); waitloop( 0x040000L );j=Get_Key(); if(i=j) key_val=j;/*保存 key_val*/ while(Get_Key() asm(tnop); /wait blank_key switch(key_val) default: break; case 1: LCD_clear(0); /清屏 uart_rece_data_parse(); /提取海拔,时间,纬度,经度 break; case 17:display();break; /*/* initial interrrupt */*/ void init_exint1_interrupt() IFR =0xffff; IMR =0x0002;/TINT=IMR.3EXINT1=IMR.1asm(trsbxtintm ); interrupt void EXINT1_isr() Close_LED_sign(); Close_LED_Data(); Close_LED_Traf();asm(tnop); /中断处理函数asm(tnop);flag=0; cur_row=7; cur_col=15; LCD_pr_chars( Uart_Stop ,17); /*/* initial GPIO */*/ void init_GPIO(void) GPIOCR =0xfffe; /EXINT1=GPIO.0=input=0,nand_cs=GPIO.6=output=1 GPIOSR =0x0040; /GPIO.6=output=1 /*/* pare GPGGA data */*/void uart_rece_data_parse(void) unsigned int ii;unsigned int jj;unsigned char data300;unsigned int tm7,latitude10,lontitude11,height8,EW2,NS2;unsigned int locate=0;unsigned int comma=0;unsigned int data_num=0;char chartable10=0,1,2,3,4,5,6,7,8,9;Uart_Init(); for(ii=0;ii300;ii+)/清空数据缓冲区 dataii =0; while(1)dojj = Uart_rx(); if(!flag) asm(tnop); break; while(jj=0xFFFF); if(locate300)/存储接收到的数据datalocate =jj; locate+;elseii=0;while(1) if(dataii=36) /$ if(ii+1)300&dataii+1=71)/G if(ii+2)300&dataii+2=80)/P if(ii+3)300&dataii+3=71)/G if(ii+4)300&dataii+4=71)/G if(ii+5)300&dataii+5=65)/A break; /判断是否为GPGGA数据 ii+; ii+=6; for(;ii300;ii+) if(dataii=36) break; /$ if(comma=1)/获取时间 tmdata_num=dataii; data_num+; else if(comma=2)/获取纬度 latitudedata_num=dataii; data_num+; else if(comma=3)/获取南北纬标志位 NSdata_num=dataii; data_num+; else if(comma=4)/获取经度 lontitudedata_num=dataii; data_num+; else if(comma=5)/获取东西经标志位 EWdata_num=dataii; data_num+; else if(comma=9) heightdata_num=dataii; data_num+; if(dataii=44)/判断是否为逗号 comma+; data_num=0;/从逗号后第一个字节开始存储数据 /LCD显示提取信息cur_col=50;cur_row=0;LCD_pr_chars(GPGGA,5);cur_col=0;cur_row=1;LCD_pr_chars(*,23); cur_col = 1; cur_row =2; LCD_pr_chars(Time:,5); LCD_nextchar(chartabletm0-48); LCD_nextchar(chartabletm1-48); LCD_nextchar(:); LCD_nextchar(chartabletm2-48); LCD_nextchar(chartabletm3-48); LCD_nextchar(:); LCD_nextchar(chartabletm4-48); LCD_nextchar(chartabletm5-48); cur_col = 1; cur_row = 3; LCD_pr_chars(Latitude:,9); for(ii=0;ii9;ii+) if(latitudeii=46) LCD_nextchar(.); else LCD_nextchar(chartablelatitudeii-48); if(NS0=78) LCD_nextchar(N); else LCD_nextchar(S); cur_col = 1; cur_row = 4; LCD_pr_chars(Longitude:,10); for(ii=0;ii9;ii+) if(lontitudeii=46) LCD_nextchar(.); else LCD_nextchar(chartablelontitudeii-48); if(EW0=69) LCD_nextchar(E); else LCD_nextchar(W); cur_col = 1; cur

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论