Re: wie kann ich Interrupte unterbinden? Kategorie: Programmierung (von André H. - 12.06.2004 18:26) | ||
Als Antwort auf Re: wie kann ich Interrupte unterbinden? von Holger - 9.05.2004 18:37 | ||
| ||
Hallo Holger, > >.... > > > Mit dem Auschalten der Interrupts über das PSW-Register werden auch wirkliche > > alle Interrupts unterbunden. > > kannst du das näher beschreiben, was da in welches Register per ASM reingeschrieben > werden mu� zum Sperren und Freigeben ? Die Interrupts werden global durch das Bit 11 des PSW-Registers aktiviert bzw. deaktiviert (IEN). (siehe Manual zum C164) Allerdings sollte man beachten, da� beim deaktivieren der Interrupts u.a. die RTC und der 1ms-Timer in dieser Zeit stehen. Deshalb sollte die Interrupts nur so lang wie wirklich nötig deaktiviert werden. > Das würde mich interessieren, da ich in ASM über Schleifen kurze Zeiten zwischen Impulsen > überbrücken mu� und ich ich glaube, dass mir die Interrupts immer mal dazwischen hauen. Du solltest dann die Interrupts erst deaktivieren, unmittelbar nachdem der erste Impuls erfasst wurde. Um sicherzustellen, da� ab dem erkennen, bis zum deaktivieren der Interrupts kein Interrupts die Routine unterbricht, kannst Du bis zu 4 Intruktionen als ATOMIC definieren. (siehe Manual C164 Kap. System-Programming»Unseparable Instruction Sequences) MfG André H. Antworten bitte nur ins Forum! Fragen per EMail auf Forum-Postings werden nicht beantwortet! Das macht meine Heizung gerade | ||
Antwort schreiben Antworten: |