Re: Statusmeldung 0xF8 Kategorie: I²C-Bus (von JORE - 27.03.2013 8:06) | |
Als Antwort auf Re: Statusmeldung 0xF8 von Torsten - 26.03.2013 20:17
| |
> > > > Hallo zusammen, > > > > > > > > ich habe mit dem IIC Bus gelegentlich Probleme. Wenn das Problem auftritt kommt es beim Datenlesen > > > > zur Statusmeldung 0xF8 und dann stürzt der Prozessor praktisch ab. 0xF8 kann ich in der Statustabelle > > > > nicht finden. > > > > > > > > Vielleicht kann mir jeman helfen, was z. B.: 0xF8 bedeutet. > > > > > > Hallo... > > > > > > soweit mir bekannt ist, ist bei vielen I²C Erweiterungen der Default Wert des Statusregister > > > 0xf8... also der Standardwert. > > > > > > Wei� nicht ob es bei allem so ist, aber bei vielem Chips ist das so... > > > > > > z.Bsp.PCF8584 , PCA9564 > > > > > > Warum dann alles Abstürzt, würde ich auf eine schlechte Datenverbindung (Kabel, Entfernung, Störungen, > > > Steckverbindung ect.) schieben.... > > > > > > > > > Vielleicht hilft dir das ja weiter.... > > > > Danke für deine Antwort, > > > > mein Problem ist, ich habe um eine RS 232 zu wenig. Deshalb habe ich mir mit einem PIC 16F84 > > eine serielle Schnittstelle mit den notwendigen 3200 Baud gebaut. Dieser PIC liest zuerst > > die Daten von einer PV Anlage (RS 232) und gibt diese dann, wenn adressiert auf den > > IIC Bus. Auf dem IIC Bus befinden sich jedoch noch ein Farbtouchdisplay und 9 Stück Port- > > erweiterungen PCF 8574-diese funktionieren einwandfrei. > > ich lese vom PIC ca. alle 9 Sekunden die Daten von der Anlage ein. > > Beim Adressieren des PIC frage ich dann den IIC Bus Status ab ob das Ack vom PIC gekommen ist. > > Ist dies der Fall hole ich mir die Daten (6 Bytes). Dieses Datenlesen funktioniert über längere Zeit > > jedoch kommt es am Tag zu 5 bis 10 Abstürzen. > > Ich habe nun festgestellt, dass die Abstürze beim Lesen der 6 Bytes und zwar beim 3 oder 4 Byte > > erfolgen. Mit I2C_Status() frage ich nach jedem Byte den Status des Busses ab, und hier steht dann > > anstatt 0x58, 0xF8. Nur finde ich 0xF8 nicht in der Hilfedatei unter den Statusmeldungen. > > > > Hallo Jürgen, > > in der ATmega128 Dokumentation steht dazu > folgendes: > > >21.7.5 Miscellaneous States > > > >There are two status codes that do not correspond > >to a defined TWI state, see Table 21-6. > > > >Status $F8 indicates that no relevant information > >is available because the TWINT flag is not set. > >This occurs between other states, and when the TWI > >is not involved in a serial transfer. > > Was natürlich auch nur besagt da� deine Kommunikation > schon abgestüzt ist. > > Vieleicht hilft ein I²C-Bus Leitungstreiber? > Best.- Nr. 198280 > > Wenn du Threads verwendest dann Thread_Lock(X); > nicht vergessen aufzurufen. > > Gru� Torsten > > > > > Bis auf das Display befinden sich alle Busteilnehmer in einem Rack. PIC und C-Control sind auf einer > > Platine. Das Display wird mit einem Treiber angesteuert. > > > > Ich bin auch für andere Lösungen zur Erweiterung der RS 232 offen. Die Initialisierung der > > RS 232 Schnittstelle darf ich ja im Program nicht ändern? Sonst könnte ich mit einem Analogmux > > zwischen 2 Schnittstellen kontrolliert umschalten. Danke für deine Antwort, werde mal hier weitersuchen. | |
Antwort schreiben Antworten: |
Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum