Re: IRQs P1H0-P1H3 abschaltbar machen Kategorie: Programmierung (von Walter Ospelt - 6.11.2007 15:44) | ||
Als Antwort auf Re: IRQs P1H0-P1H3 abschaltbar machen von TManiac - 4.11.2007 22:23 | ||
| ||
Hallo Tmaniac, 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: man kann eigene Routinen vor oder auch nach dem OS-IRQ-Geschehen laufen lassen. 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. Gru� Walter > Hallo und willkommen, > > Mal ein paar Gegenfragen zum verstehen des Problems: > wieso willst du die abschalten? Und was erhoffst du dir von "dem Abschalten"? > Sorry ich programmier nicht mir in C2 was meinst du mit "RETI". Dies ist in Assembler der Begriff > oder besser der Code für eine Rückkehr aus einer Interruptroutine. > > Was du als IRQ bezeichnest sind nur Möglichkeiten um in sehr kurzer Zeit auf eine Pegeländerung an > den Ports P1Ho-H3 zu reagieren. Die schnelle Reaktion wird mit Hilfe eine speziellen Routine, einer > Interruptroutine (mei�t kurz mit IRQ bezeichnet, aber besser ISR). Die wird aber nur ausgeführt wenn > der betreffende Port (Pin) als Eingang definiert ist.Und wenn du nicht zwingend notwendig so schnell > reagieren willst, dann stört es aber auch nicht. Im Normalzustand ist diese Routine meines Wissens > leer (zumindest spürbar). Und du kannst ganz normal in deinem C2 Programm darauf reagieren. > [Oder gibt es schon eine möglichkeit eine ISR in C2 zu definieren] > > es bringt nichts irgend welchen Programmcode in das Segment 3 zu schreiben. Dieser Programmschnipsel > muss auch ausgeführt werden. Und das wird er nur wenn du das explizit in deinem Programm machst, > oder eben durch einen Interupt wie er bei den Ports P1H0-H3 möglich ist. > > Ich verstehe auch nicht was du mit deinem Programm erreichen willst. > > :02 0000 04 0003 F7 > diese Zeile sagt dem Downloadtool wo die folgenden Bytes hin sollen, nämlich ins Seg. 3 > > > :04 E6A0 00 FB88 EF > Diese hat nur den RETI Befehl und zwar in dem 4. Stück > das erste Stück gibt die Länge des Inhalts an, hier sollte eine 02 stehen (hast du glaub ich schon erkannt) > das Zweite gibt den Offset nach der Segmentgrenze an > das Dritte sagt das es sich um Programmbytes handelt > > > :00000001FF > das ist einfach das Ende das Files. > > Also macht diese Routine absolut nix produktives. > > Hoffe etwas Aufklärungsarbeit geleistet zu haben > Gru� TManiac | ||
Antwort schreiben Antworten: Re: IRQs P1H0-P1H3 abschaltbar machen (von TManiac - 13.11.2007 18:13) |