ich hab jetzt das hier gemacht:
hier kann ich immerhin die "3F" ausdrucken, also ist eine übertragung in eine variable auch kein problem. Die LCD initislierung erwartet aber ein"0x3F" - wie mache ich das?Code:#include <Wire.h> byte I2CAdd; byte I2CAdd_hex; byte fehler; boolean done = false; //0x3F = 63 //0x27 = 39 void setup() { Serial.begin(115200); Wire.begin(); } void loop() { if (!done) { I2c_suche(); } //weiterer code } void I2c_suche() { Wire.setClock(100000L); for (I2CAdd = 28; I2CAdd < 64; I2CAdd++) { Wire.beginTransmission(I2CAdd); fehler = Wire.endTransmission(); if (fehler == 0) { Serial.print("Baustein mit Adresse 0x"); Serial.print(I2CAdd, HEX); Serial.println(" gefunden!"); I2CAdd_hex = (I2CAdd); Serial.println(I2CAdd_hex, HEX); done = true; } } }
EDIT: es funktioniert auch mit "0x27"







Zitieren


Lesezeichen