我正在尝试创建可能包含任意字符串的NMEA兼容专有句子。NMEA值可以包含'*'(星号)吗?
用于与校验NMEA语句通常格式是:
$GPxxx,val1,val2,...,valn*ck<cr><lf>
其中*
标志着一个2位的校验和的开始。
我的问题是:任何值字段都可以包含一个*
字符吗?
解析器似乎有可能等待最后的<cr><lf>
,然后回头看前面的3个字符来查找校验和(如果存在的话)(而不是仅仅等待句子中的第一个*
)。但是我不知道标准是否允许。
是否还有其他可能导致问题的字符?
谢谢,非常翔实!我猜“NMEA兼容”我的意思是它遵循NMEA的句子结构。我想我会避免(或翻译)'*'。 – squelart 2011-01-07 04:18:48