【问题标题】:i2c in NodeJS on raspberry pi. "wire.readByte(function(err,res)" returns 255 regardless of value on pins树莓派上 NodeJS 中的 i2c。 “wire.readByte(function(err,res)”无论引脚上的值如何,都返回 255
【发布时间】:2017-02-16 00:24:27
【问题描述】:

我有一个树莓派连接到 AB Electronics 的 IO Pi Plus。我有两个 MCP23017 芯片中的一个仅作为输出,另一个仅作为输入。它们分别可通过 0x20 和 0x21 单独寻址。

输出很好,我可以使用该功能轻松控制 LED:

wire.write([0x00, 0x00], function(err){}); //Set wire(0x20) data direction resister(0x00) to output only (0x00). 

但是,尝试使用wire.readByte 读取时,除了255(或-256,当我尝试反转位时,它不会返回任何值。这本身就很奇怪)。 wire1 = 0x21(仅输入)

wire1.readByte(function(err,res){ //Res is a buffer to hold the byte that is read
                    //res = ~res  This returns -256 instead of 0 when enabled. Not sure why.
                    console.log(res); // Output res
                    });
            });

我使用的所有文档都在这里https://www.npmjs.com/package/i2c,芯片组的数据表是http://ww1.microchip.com/downloads/en/DeviceDoc/21952b.pdf

【问题讨论】:

    标签: javascript node.js raspberry-pi buffer i2c


    【解决方案1】:

    我在使用温度读取器时遇到了类似的问题。我在更改 I2C 波特率和 CPU 调节器时运气不佳。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-29
      • 1970-01-01
      • 1970-01-01
      • 2016-03-07
      相关资源
      最近更新 更多