下面的代码使用SerialPort模块监听来自蓝牙连接的数据.

我希望看到控制台中以十六进制格式打印的数据流.但控制台只是显示了一些奇怪的幻觉.我想知道如何在控制台中解码和显示数据.

var serialPort = new SerialPort("/dev/tty.EV3-SerialPort", {
  parser: SP.parsers.raw
}, false); // this is the openImmediately flag [default is true]

serialPort.open(function () {
 console.log('open');
 serialPort.on('data', function(data) {
   var buff = new Buffer(data, 'utf8'); //no sure about this
  console.log('data received: ' + buff.toString());
 });  
});

推荐答案

此代码将数据缓冲区显示为十六进制字符串:

buff.toString('hex');

Node.js相关问答推荐

为什么请求正文未定义?

Axios TypeError:将循环 struct 转换为 JSON

仅在 vue 脚本未退出的情况下使用 docker 时出现错误

suppress AWS SDK v2 弃用消息

如何通过node下载zip并直接解压zip?

当我try 从本地主机发布新产品时收到错误消息

带有事件网格的 Azure 函数在没有 ngrok 的情况下在本地运行

即使部署成功,也不会触发 Firebase 函数来填充 Firestore 集合.为什么?

配额超出了每分钟的 Sheets API 写入请求数. node .js

如何在 node.js 环境中从 WebAssembly (Rust) 调用异步 JavaScript 导入函数?

Handlebars:访问已被拒绝解析来自的属性,因为它不是其父级的自己的属性

Node.js 变量声明和范围

等价于 Node.js 的 Rails 控制台

Base64 编码一个 javascript 对象

错误:大多数中间件(如 bodyParser)不再与 Express Bundle

在 express 中添加故意延迟

将变量传递给nodemailer中的html模板

Express js 阻止 GET /favicon.ico

如何创建安全(TLS/SSL)Websocket 服务器

webpack-dev-server 找不到模块webpack