Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Re: Rückmeldung der i2c.start() Routine Kategorie: I²C-Bus (von André H. - 20.10.2002 0:45)
Als Antwort auf Rückmeldung der i2c.start() Routine von marcellus - 15.10.2002 0:33

Hallo marcellus,

Zuerst zu den Rückgabewerten bei i2c.c2:
Die Rückgabewerte bei i2c.start und i2c.write melden keine
Fehlermeldungen !!
Es wird lediglich der Zustand das Ackknowledge-Bit am I2C-Bus zurückgegeben.

Wenn Du mit Deiner untenstehenden Routine Bausteine ansprichst,
ist ein Fehler vorprogrammiert.

Wenn Du ein start sendest, muÃ?t Du auch ein stop senden, bevor Du
versuchst den nächsten Baustein anzusprechen!!
Also kurz:

if i2c.start(...)
  {
   // Baustein existiert
   i2c.stop();
  }
  else
  {
   i2c.stop(); // Dieses stop ist sehr wichtig !!
  }


MfG André H.


> hallo zusammen;
>
> Folgendes :
> betreibe den i2c-bus der CCII mit 13 slave's, (1x24C02; 6xPCF8574 u. 6xLM75CIM)
> habe , wenn alle am Bus liegen, keine Problem bei der Steuerung
> doch ist >>ein - alle<< Plätze nicht belegt läuft die die Routine " i2c.start ( device ) "
> in eine endlos Schleife. (Programm bleibt stehen).
> Laut Manual sollte sich die Rourine bei Fehler mit "0" zurückmelden.
> Für schnelle Hilfe bin ich jetzt schon dankbar.
>
> Beispiel (PCF8574):
>
> // schaue ob 1-6 da sind...
> Err = 0;
>
>   wait i2c.ready();
>   for i = 1 ... 6
>    {
>       if i2c.start( Addresse[i] + 1 )
>       {
>         Data = i2c.readlast();
>         i2c.stop();  
>       }
>       else
>       {
>          Err = i;  
>          break
>       }
>   }
>
>   if Err > 0  gehe_zu_fehlerroutine()
>
>


Antworten bitte nur ins Forum!
Fragen per EMail auf Forum-Postings werden nicht beantwortet!

Das macht meine Heizung gerade


    Antwort schreiben


Antworten:

Re: Rückmeldung der i2c.start() Routine (von marcellus - 1.11.2002 11:37)