Sorry, ja, danke. Zu Beginn dieser Litanei, den ich nicht zitiert hatte, hab ich es ja noch richtig:... Du mußt den Returnwert von "i2c_start (Sadd + I2C_WRITE)" auswerten ... if(i2c_start(Adresse und Write) == 0) { ...Und danach - hat das dauernde Ändern zu Schlamperei geführt. Hast ja Recht.Code:// Messung starten auf Sensor Sadd // - - - - - - - - - - - - - - - if (!(i2c_start (Sadd + I2C_WRITE))) // Slave bereit zum schreiben? { // dann Werte schreiben i2cdmy = i2c_write ( 00 ); // Buffer Startadresse setzen i2cdmy = i2c_write ( 0x51 ); // Startbefehl SRF02 i2c_stop(); // Zugriff beenden } // else // Weiter mit if (!(i2c_start( Sadd + I2C_WRITE ))) { // uputs0("\r\t## SRF_rdat\r"); wms ( 10); return 9901; // Return mit Fehlercode } // Ende if (!(i2c_start( Sadd + I2C_WRITE )))
Bascom sind Beispiele aus dem RN Wi ki, das kann ich nicht. Die C-Sequenzen sind von mir - sicher mehr schlecht als recht :-/ . Die I²C-Bibliothek ist von PFleury.... Wer schreibt eigentlich den Code, den du da so postest, z.B. den Bascom Code ...







Zitieren

Lesezeichen