Für dieses Forum muß Javascript im Browser aktiviert werden!
Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C2 Quellcode formatieren: <code>Quellcode</code> ASM Quellcode formatieren: <asm>Quellcode</asm> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! > > Hallo Udo, > > > > Es gibt leider einen kleinen aber fatalen Bug in i2ccom.c2 V2.02 . > > Somit funktioniert die Funktion get() nicht. > > Mir war dies eine Zeit lang nicht aufgefallen, da ich hauptsächlich > > die funktion receive nutze, um den Bus(& die CC2) weniger zu belasten. > > > > Der Fehler liegt bei den Einsprungadressen. > > Sie sollten so lauten: > > <code>//--- Einsprungadressen (ASM-Treiber) ------------------------------------------ > > const _BAUDRATE = 0xD298; > > const _SETREG = 0xD2F0; > > const _GETREG = 0xD324; > > const _PUT = 0xD344; > > const _GET = 0xD3A8; > > const _RXD = 0xD3BC; > > const _READY = 0xD3DE; > > const _PRINT = 0xD402; > > const _SEND = 0xD46A; > > const _SENDA = 0xD480; > > const _RECEIVE = 0xD4E0; > > const _RECEIVEA = 0xD4FA; > > </code> > > > > Den Fehler habe ich vor ca. 4 Wochen gefunden. > > Für das finden der Ursache fast eine Woche. > > (Wer vermutet schon, daß man sich bei der Einsprungadresse vertippt.) > > > > > > MfG André H. > > > > > Hallo André, > > danke für die Antwort. > Allerdings vermute ich, dass Du mir aus Versehen die fehlerhaften Einsprungadressen gepostet hast. > Ich kann jedenfalls keinen Unterschied zu den von mir verwendeten feststellen. > Um sicherzugehen, dass ich nichts übersehen habe, habe ich trotzdem mal mit copy&paste die > obigen Adressen eingebaut, was am Fehlerbild aber nichts geändert hat. > Welche Adresse(n) sollte(n) sich denn geändert haben? > > Zwischenzeitlich habe ich auch mal alternativ die Funktion receive eingebaut. Ich habe zwar nur einen > kurzen Test gemacht, aber es sieht so aus, als ob damit alles so funktioniert wie es soll. Allerdings > kann ich diese Funktion nicht so elegant verwenden, da ich im Voraus nicht weiss, wie viele Bytes > zu empfangen sind (das Teil von dem ich Daten empfangen möchte, müllt mich in den Zeiten wo > es eigentlich nichts zu melden gibt, unregelmässig mit einer unbestimmten Menge an Füllbytes zu). > Daher muss ich die receive-Funktion so konfigurieren, dass sie immer nur 1 Byte empfängt und so > quasi zu einer get-Funktion degradieren. > > Viele Grüsse > > Udo