📄 gps.c
字号:
// **************************************************************
// *** 广 州 天 河 双 龙 电 子 公 司 ***
// *** http://www.sl.com.cn ***
// *** 实验:GPS ***
// *** 作者:zxy@sl.com.cn ***
// *** 2007年4月5日 ***
// *** 目标MCU:MEGA169 晶振:内部(INT)8MHZ ***
// **************************************************************
//编译器GCC-AVR
#include <avr/io.h>
#include <avr/interrupt.h>
#include <util/delay.h>
#include "avr.h"
#include "UART0_drv.h"
unsigned char engga[]={
0XB5,0x62,0x06,0x01,0x06,0x00,0xF0,0x00,0x00,0x01,0x00,0x00,0xFE,0x18// 使能GGA
};
unsigned char disgga[]={
0XB5,0x62,0x06,0x01,0x06,0x00,0xF0,0x00,0x00,0x00,0x00,0x00,0xFD,0x15// 取消GGA
};
unsigned char engll[]={
0XB5,0x62,0x06,0x01,0x06,0x00,0xF0,0x01,0x00,0x01,0x00,0x00,0xFF,0x1D// 使能GLL
};
unsigned char disgll[]={
0xB5,0x62,0x06,0x01,0x06,0x00,0xF0,0x01,0x00,0x00,0x00,0x00,0xFE,0x1A//,0x取消GLL
};
unsigned char engsa[]={
0XB5,0x62,0x06,0x01,0x06,0x00,0xF0,0x02,0x00,0x01,0x00,0x00,0x00,0x22// 使能GSA
};
unsigned char disgsa[]={
0xB5,0x62,0x06,0x01,0x06,0x00,0xF0,0x02,0x00,0x00,0x00,0x00,0xFF,0x1F// 取消GSA
};
unsigned char engsv[]={
0XB5,0x62,0x06,0x01,0x06,0x00,0xF0,0x03,0x00,0x01,0x00,0x00,0x01,0x27//使能GSV
};
unsigned char disgsv[]={
0XB5,0x62,0x06,0x01,0x06,0x00,0xF0,0x03,0x00,0x00,0x00,0x00,0x00,0x24// 取消GSV
};
unsigned char enrmc[]={
0XB5,0x62,0x06,0x01,0x06,0x00,0xF0,0x04,0x00,0x01,0x00,0x00,0x02,0x2C// 使能RMC
};
unsigned char disrmc[]={
0XB5,0x62,0x06,0x01,0x06,0x00,0xF0,0x04,0x00,0x00,0x00,0x00,0x01,0x29// 取消RMC
};
unsigned char envtg[]={
0XB5,0x62,0x06,0x01,0x06,0x00,0xF0,0x05,0x00,0x01,0x00,0x00,0x03,0x31// 使能VTG
};
unsigned char disvtg[]={
0xB5,0x62,0x06,0x01,0x06,0x00,0xF0,0x05,0x00,0x00,0x00,0x00,0x02,0x2E// 取消VTG
};
unsigned char engrs[]={
0XB5,0x62,0x06,0x01,0x06,0x00,0xF0,0x06,0x00,0x01,0x00,0x00,0x04,0x36/// 使能GRS /
};
unsigned char disgrs[]={
0XB5,0x62,0x06,0x01,0x06,0x00,0xF0,0x06,0x00,0x00,0x00,0x00,0x03,0x33// 取消GRS
};
unsigned char engst[]={
0XB5,0x62,0x06,0x01,0x06,0x00,0xF0,0x07,0x00,0x01,0x00,0x00,0x05,0x3B/// 使能GST /
};
unsigned char disgst[]={
0xB5,0x62,0x06,0x01,0x06,0x00,0xF0,0x07,0x00,0x00,0x00,0x00,0x04,0x38// 取消GST
};
unsigned char enzda[]={
0xB5,0x62,0x06,0x01,0x06,0x00,0xF0,0x08,0x00,0x01,0x00,0x00,0x06,0x40// 使能ZDA /
};
unsigned char diszda[]={
0XB5,0x62,0x06,0x01,0x06,0x00,0xF0,0x08,0x00,0x00,0x00,0x00,0x05,0x3D// 取消ZDA
};
void Send_Command_To_GPS( unsigned char *command )
{
unsigned char *p,i;
p = command;
for (i = 0;i < 14;i ++)
{
UART0_TransmitByte( *p );
p ++;
}
_delay_ms(100);
}
int main(void)
{
init_UART0();
sei();
while(1)
{
//只保留GPRMC
Send_Command_To_GPS(disgga);//取消GGA
Send_Command_To_GPS(disgll);//取消GLL
Send_Command_To_GPS(disgsa);//取消GSA
Send_Command_To_GPS(disgsv);//取消GSV
Send_Command_To_GPS(disvtg);//取消VTG
Send_Command_To_GPS(diszda);//取消ZDA
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -