本例運行需要安裝VSPD,設置COM3,COM4對連
另外還需要安裝Virtual GPS,波特率設為9600
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
0.png (18.94 KB, 下載次數: 97)
下載附件
2019-3-19 04:17 上傳
0.png (42.99 KB, 下載次數: 70)
下載附件
2019-3-19 04:17 上傳
單片機源程序如下:
- //-----------------------------------------------------------------
- // 名稱: 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提供下載:
GPS導航系統仿真.zip
(445.48 KB, 下載次數: 223)
2019-3-18 22:52 上傳
點擊文件名下載附件
|