2017-02-16 6 views
0

J'ai une framboise pi connectée à un IO Pi Plus d'AB Electronics, j'ai l'une des deux puces MCP23017 en sortie seulement, la . autres comme entrée seulement ils sont adressables individuellement par 0x20 et 0x21 respectivementi2c dans NodeJS sur framboise pi. "wire.readByte (function (err, res)" renvoie 255 indépendamment de la valeur sur les broches

est bien Émission et je peux facilement contrôler les LED en utilisant la fonction:.

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

Cependant essayer de lire dans l'utilisation wire.readByte ne renvoie jamais rien d'autre que 255 (ou -256 quand j'essaie d'inverser des bits.) Ce qui est bizarre dans son propre droit.) wire1 = 0x21 (entrée seulement)

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 
        }); 
      }); 

Tous les documents que je utilise est ici https://www.npmjs.com/package/i2c et la fiche technique du chipset est http://ww1.microchip.com/downloads/en/DeviceDoc/21952b.pdf

Répondre

0

Je suis confronté à des problèmes similaires avec un lecteur de température. J'ai eu peu de chance de changer le débit en bauds I2C et le gouverneur du CPU.