Forum: Mikrocontroller und Digitale Elektronik Rpi i2c mit der bcm2835.h Fehler


von Felix (Gast)


Lesenswert?

Hallo zusammen,

ich bin aktuell dabei mit der Entwicklungsumgebung QT einen RPI zu 
Programmieren. Als Hilfe zur Ansteuerung der Hardware benutze ich die 
bcm2835 libary. Nun ergibt sich folgender Fehler wenn ich den I2C 
ansteuern will.

Mein Code (natürlich nur ein Ausschnitt):
bcm2835_i2c_begin();
bcm2835_i2c_setSlaveAddress(0x45);
bcm2835_i2c_write(0x08, 1);
bcm2835_i2c_end();

Fehler:
invalid conversion from 'int' to 'const char*' [-fpermissive]

Hat da jemand Erfahrung oder schon mal den Selben Fehler in dem 
Zusammenhang gehabt?

Schon mal Danke im voraus.
Felix

von JoJo (Gast)


Lesenswert?

Steht doch in der Fehlermeldung drin.
Musst eben mal die Funktion in der Doku nachlesen.
Die finde ich beim ersten Googeln:
uint8_t   bcm2835_i2c_write (const char *buf, uint32_t len)

So, und?
const char *buf ist eben kein "0x81".

Gruß
(Da fällt mir gerade eine andere Diskussion ein, wo es eben um das 
"Zusammenklicken fertiger Sachen" geht :-)

von Felix (Gast)


Lesenswert?

hey,

gut also die "const char*buf" ist also eine nicht veränderbare 
variable?!

aber was trage ich dann an der Stelle ein? (sry das ich so blöd frage 
aber ich verstehe es gerade nicht).

von Mick (Gast)


Lesenswert?

Hier ein Beispiel
1
char regaddr[2];
2
    
3
regaddr[0] = 107;
4
regaddr[1] = 0;
5
6
bcm2835_i2c_write(regaddr, 2);

von Felix (Gast)


Lesenswert?

ok danke :)

von Ralf (Gast)


Lesenswert?

Weißt du wofür der Stern steht? Dann ließ das mal in einem Tutorial 
nach.

Mit dem Codeschnipsel lernt er nähmlich nichts ausser abschreiben.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.