Serialport nodejs奇怪的字符

时间:2016-07-31 20:39:27

标签: node.js node-serialport

我尝试接收celestron nexstar goto系统的goto固件版本。

我使用serialport库接收一些数据但是我收到一些奇怪的字符,白蚁是唯一显示好字符的软件。

以下是我收到的数据和白蚁显示的数据的示例。

来自node.js的串口:♦§#

白蚁:[04] [15]#

以下是连接到mount并显示接收数据的代码:

var telescope = new serial(port.comName, {
   baudRate: 9600,
   stopBits: 1,
   parity: 'none'
});

telescope.on('open', function () {

   telescope.on('data', function (data) {
      console.log('Data : ' + data);
   });

   telescope.write('V');

});

有没有办法显示好的数据?我搜索,我认为这是一个编码问题

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

这里发生的事情是,Termite以[xx]的形式显示控制字符(有一些例外),其中xx是控制字符的十六进制值。但是在节点中,您隐式将整个传入数据视为UTF-8。

可以通过检查每个字节值并在括号中打印十六进制值(如果它是控制字符或将字符写入stdout)来模拟白蚁的行为。