Teil 6 des Rasberry Pi I2C Projektes

Communication mit dem PCF8574

Die Kommunikation mit dem PCF8574 geht jetzt. Die Installation des Logig Analyzers hat sich gelohnt. Ein Blick auf den BUS zeigte was hier an Aktivitäten zu Gange waren und nachdem das bereinigt war, war auch das Problem erst einmal behoben. 😉 Das folgende Bild zeigt die 3 wesentlichen Kanäle. SDA, SCL und der Ausgang P0

Übersicht, mehere Sequenzen

Nachfolgende Bilder zeigen den Trace zum LED ausschalten und einschlaten.

LED ausschalten
LED einschalten

Hier ist noch das verwendete Codeschnipsel dazu.

int main(int argc, char **argv)
{
    char buf[1];

    if (!bcm2835_init())return 1;
    bcm2835_i2c_begin();                //Start I2C operations.
    bcm2835_i2c_setSlaveAddress(0x20);  //I2C address
    //bcm2835_i2c_set_baudrate(10000);    //1M baudrate

    while(1)
    {
        buf[0] = 0x00;    //LED ON
        bcm2835_i2c_write(buf,1);
        bcm2835_delay(50);
        buf[0] = 0x01;     //LED OFF
        bcm2835_i2c_write(buf,1);
        bcm2835_delay(50);
    }
    bcm2835_i2c_end();
    bcm2835_close();
    return 0;
}