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

Re: Interrupt, CAN Kategorie: Progr. Assembler, TaskingTools, OS (von Eltman - 10.10.2005 17:26)
Als Antwort auf Re: Interrupt, CAN von André H. - 9.10.2005 12:06
Ich nutze:
C-Control II Unit, CC2-Application-Board, original OS
Hi

hab ich gemacht und funktioniert auch. Nu habe ich halt ein paar Probleme das mir die ISR
nun meine Displayausgabe hin und wieder mal ein anders Zeichen schreibt.

Eltman

> Halo Eltman,
>
> > Ic hab mir einen CAN Treiber mit 29BIT ID in ASM geschrieben.
> > Will aber noch das in Interrupt ausgelöst wird wenn ich eine
> > MSG empfangen wurde.
> > Die Sprungadresse muss ich ja im Interruptvektor eintragen,
> > aber wie mach ich das ?
> > Hat jemand schon mal was ähnliches gemacht.
> > Beispiel währe super.
>
> Dazu mu�t Du das OS abändern. Die Interruptvektoren stehen am Anfang des OS.
> Der Vektor befindet sich an Offset 0x100 und führt derzeit zu einer Interruptroutine an 0x85F6.
> Dort sollte "FA00F685" stehen.
> Steht Deine Interruptroutine beispielsweise in Segment 1 an Offset 0xabcd, muÃ?t Du
> den Eintrag in "FA01CDAB" ändern.
>
> Die Zeile in der HEX von OSOPT V3.x sieht so aus:
> :20010000FA00F685FA000401FA000801FA00AA1EFA001001FA001401FA001801FA001C0162
> und müsste dann folgenderma�en geänder werden:
> :20010000FA01CDABFA000401FA000801FA00AA1EFA001001FA001401FA001801FA001C0162
> Die Prüfsumme am Ende jeder HEX-Zeile mu� nicht geändert werden,
> da diese von meinem Download-Tool nicht geprüft wird.
>
> Wichtig ist, daÃ? sich an dieser Stelle wirklich eine Routine befindet, da
> es sonst einen Fehler gibt, wenn ein CAN-Interrupt erfolgt.
> Also am besten zuerst die eigene Routine laden, bevor Du das gepatchte OS lädst.
>
> MfG André H.
>


    Antwort schreiben


Antworten: