GPS"打开"不同的句子

时间:2014-10-04 02:53:10

标签: unix gps

如何在Unix中写入串口?我有一个通过USB连接的gps冰球,显示在/dev/ttyUSB0下的linux mint目录树中。我已经尝试了很多东西来写它没有太多运气。

我的最终目标是给它写一个gps句子并打开gps的GLL语句。 website(对于我的bu-353)说明了这一点:Enable GLL Output 1sec - $PSRF103,1,0,1,1*24,所以我可以做echo -e "$PSRF103,1,0,1,1*24\r" > /dev/ttyUSB0而这会打开它,但这不起作用。

有没有人知道怎么写gps冰球的串口并且如果你“传递”正确的字符串(如上面那个),它会打开一个特定的句子?这将非常有帮助。

例如,当我stty -F /dev/ttyUSB0 4800; echo -e "$PSRF103,1,0,1,1*24\r" > /dev/ttyUSB0; cat /dev/ttyUSB0 | grep -E "GLL|RMC";时,我只获得$ GPRMC。如何启用$ GPGLL或其他句子?

1 个答案:

答案 0 :(得分:2)

echo -e "$PSRF103,1,0,1,1*24\r" 

上面的问题是shell会认为$ PSRF103是一个shell变量,并尝试扩展它,导致“,1,0,1,1 * 24 \ r \ n”被发送到序列港口。使用单引号而不是双引号来保留字符串中每个字符的文字值,例如echo -e'$ PSRF103,1,0,1,1 * 24 \ r'