[Raspberry Pi] Status des I2C-Busses auslesen

OP #2976941
Lesenswert?

Hallo zusammen,

ich hab hier einen Raspberry Pi mit Arch-Linux drauf. Ich kann auch ohne 
Probleme auf dem I2C lesen und schreiben:

Erst initialisieren:
1
# modprobe i2c-dev

Dann als Root folgendes C-Programm ausführen:
1
#include <linux/i2c-dev.h>
2
#include <linux/i2c.h>
3
#include <unistd.h>
4
#include <sys/types.h>
5
#include <sys/stat.h>
6
#include <fcntl.h>
7
#include <sys/ioctl.h>
8
int main()
9
{
10
  int bus;
11
  bus = open( "/dev/i2c-0", O_RDWR );
12
  if ( bus == -1 )
13
  {
14
    // error
15
  }
16
  unsigned char slave_addr = 0x05;
17
  ioctl( bus, I2C_SLAVE, slave_addr );
18
  char buffer[] = {0, 6, 2};
19
  unsigned int bytes;
20
  bytes = write( bus, buffer, sizeof(buffer) );
21
  close (bus);
22
  return 0;
23
}

Allerdings müsste ich jetzt in meinem C Programm herausfinden, ob er 
schon fertig ist die "062" zu übertragen.

Ich hab zwar eine tolle Doku gefunden 
(http://www.mjmwired.net/kernel/Documentation/i2c/dev-interface), aber 
dort stehts leider nicht drin.

Weis jemand weiter?

Viele Grüße,
Simon

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren