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

Re: IRQs P1H0-P1H3 abschaltbar machen Kategorie: Programmierung (von TManiac - 13.11.2007 18:13)
Als Antwort auf Re: IRQs P1H0-P1H3 abschaltbar machen von Walter Ospelt - 6.11.2007 15:44
Ich nutze:
C-Control II Unit, eigenes Board
Hallo Walter,

ich will mal in deinem Text rumschmieren:
>
> im Manual und auch im MSR-Buch wird festgehalten, daÃ? die Ports P1H0-H3 interruptsensibel sind.
> Daraus ist zu schlieÃ?en, daÃ? das OS irgendwas gemeimnisvolles macht. Und dieses
> "Geheimnisvolle" kann über den Befehl hook beeinflu�t werden:
Es ist nicht zwingend notwendig das ein OS im allgemeinen auf einen Interrupt reagiert. Bei dem der CC2
muss ich dir Recht geben.

> man kann eigene Routinen vor oder auch nach dem OS-IRQ-Geschehen laufen lassen.
auch wenn du dich vor das geschehen der OS setzen kannst heiÃ?t das noch lange nicht das du wirklich
als Interruptroutine bedient wirst. Ich denke mal dass bei einem Interrupt immer an die gleiche Stelle
gesprungen wird. Und erst dort wird geschaut ob ein vom CC2-Programmierer definierter Code vorhanden.
Und wenn du nur ein Return schreibst, wirst du nach deinem Code genau wieder an dieser Stelle rauskommen.
Ich muss mal in ASM ausprobieren wie sich der C164 verhält, wenn du explizit ein RETI (Return from Interrupt)
schreibst, obwohl du zuvor mit einem CALL in ein Unterprogramm gesprungen bist. Das Problem ist das
normaler Wei�e unteranderem die Rücksprungaddressen und der aktuelle CPU-Status auf dem Stack
gespeichert werden. Also dürfte man mit einem unpassenden RETI den Controller ziemlich durcheinander
bringen. Wenn nicht, wie ich befürchte, ein ILLOP (unerlaubter Befehl) Interrupt ausgelöst wird. Und dieser
führt beim CC2-OS, zumindest bis V2, zu einem Stillstand der CC2.

> Nun, ich brauch und will den IRQ für einige der in Frage kommenden Ports nicht. Deshalb das RETI, das vor
> dem OS-IRQ eingeklinkt wird und ohne weiteres IRQ Geschehen in die Applikation zurückführen soll.
Gerade wenn du die nicht brauchst, stört es nicht wenn das OS mal nachschaut was die Pins machen.
Die Bearbeitungszeit ist gegenüber der normalen Code-Interpretationszeit zu vernachlässigen.

Viel Spa� weiterhin mit dem kleinen Käfer im gro�en Gehäuse
TManiac


    Antwort schreiben


Antworten: