仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)
仿真
程序
单片机源程序如下:
- //-----------------------------------------------------------------
- // 名称: GPS导航系统仿真
- //-----------------------------------------------------------------
- // 说明:本例运行时,由GPS实物模块或虚拟GPS软件Virtual GPS输出的
- // GPS协议数据将被系统接收,并对其中的"$GPRMC"协议数据进行解析,
- // 所获取的当前经度、纬度、速度、时间信息将被刷新显示LCD.
- //
- //-----------------------------------------------------------------
- #include <reg51.h>
- #include <intrins.h>
- #include <string.h>
- #include <stdlib.h>
- #include "LCD_160128.h"
- #include "PictureDots.h"
- volatile INT8U rec_OK = 0;
- volatile char time[] = "00:00:00";
- volatile char Longitude[] = "ddd°mm.mmmm' X"; //经度
- volatile char Latitude[] = " dd°mm.mmmm' X"; //纬度
- volatile char Speed[12]; //地面速度
- code char p[] = "$GPRMC"; //协议头部
- //-----------------------------------------------------------------
- // 主程序
- //-----------------------------------------------------------------
- void main()
- {
- }
- //-----------------------------------------------------------------
- // 串口接收中断函数,对所接收的GPS各协议数据中"$GPRMC"进行解析,例如:
- // $GPRMC,194633.656,A,8702.999833,N,12149.593667,E,130.07,6,180308,...
- //-----------------------------------------------------------------
- void Serial_INT() interrupt 4
- {
- }
复制代码
所有资料51hei提供下载:
23 GPS导航系统仿真.zip
(449.25 KB, 下载次数: 193)
|