📄 gps.cpp
字号:
#include "class.h"
#include "extern.h"
void CGps::initial(INT8U portno)
{
myportno = portno; //set current port no
tbbz = 0;
}
void CGps::deal()
{
char * sp;
char sp_buf[3];
sclock clk;
sp_buf[2]=0;sp=&sp_buf[0];
INT16U rece_len = get_com_rece_num(myportno);
if (tbbz == 0) {
if (rece_len < 4) return;
get_com_rece_nbytes(recbuf, 4, myportno);
if (recbuf[0] == 'B' && recbuf[1] == 'J' &&
recbuf[2] == 'T' && recbuf[3] == ',') {
tbbz = 1;
}
else del_com_rece_one(myportno);
}
else {
if (rece_len >= 17) {
read_com_rece_nbytes(recbuf, 17, myportno);
draw_rece_message(myportno, recbuf, 17, POLL_RECE_COLOR);
sp_buf[0] = recbuf[4];
sp_buf[1] = recbuf[5];
clk.year = (INT8U)atoi(sp) + 2000;
sp_buf[0] = recbuf[6];
sp_buf[1] = recbuf[7];
clk.month = (INT8U)atoi(sp);
sp_buf[0] = recbuf[8];
sp_buf[1] = recbuf[9];
clk.day = (INT8U)atoi(sp);
sp_buf[0] = recbuf[11];
sp_buf[1] = recbuf[12];
clk.hour = (INT8U)atoi(sp);
sp_buf[0] = recbuf[13];
sp_buf[1] = recbuf[14];
clk.minute = (INT8U)atoi(sp);
sp_buf[0] = recbuf[15];
sp_buf[1] = recbuf[16];
clk.second = (INT8U)atoi(sp);
clk.msecond = 5;
SetClock(&clk);
tbbz = 0;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -