解析为第二补码形式的 16 位值

Parsing to 16-bit value in second complement form

datasheet 给我一个 2 byte 的数据,定义为:

"These two byte is a 16-bit value in 2's complement form, whose range is from 0xF800 (-4096) to 0x07FF (4095)"

我不太明白如何在 javascript 中解析这些数据。

目前所有主流浏览器都支持DataView class.

鉴于您的 Uint8Array 包含例如[0xf8, 0x00]:

var a = new Uint8Array([0xf8, 0x00])

您可以将其视为 Int16 个值的数组:

var view = new DataView(a.buffer)
var val = view.getInt16(0, false);   // false for big-endian
> -2048

如果数组中的数据是相反的(小端),请为 .getInt16().

的第二个参数提供 true