Re: Alle Interrupts zeitweise sperren Kategorie: IDE (von UlliS - 7.07.2009 8:39) | ||
Als Antwort auf Re: Alle Interrupts zeitweise sperren von Dirk - 6.07.2009 17:54 | ||
| ||
> > > Hallo Leute, > > > > > > ich programmiere in CompactC (kein Multithreading!) und möchte zeitweise bei zeitkritischem Code > > > alle Interrupts sperren. > > > > > > Ich finde nur Befehle, um einzelne Interrupts zu sperren. > > > > > > Wie sperrt man alle Interrupts und gibt sie in CompactC wieder frei (in Assembler CLI, SEI)? > > > > > > Dirk > > > > Hallo Dirk, > > > > es gibt keinen Befehl um alle Interrupts zu sperren. Du müsstest schon für die Interrupts wo Du > > Interrupt Routinen definiert hast, die Interrupts einzeln sperren. Was willst Du denn > > zeitkritisches machen? > > > > Gruss Peter > > Ich habe einen Sender/Empfänger, der mit 3 I/O-Ports (Clock, Data, Ackn) mit einem eigenen seriellen > Protokoll angesteuert wird. Das ganze macht Probleme auf der untersten Ebene, d.h. beim Reinschieben > der 8 Bits jedes Bytes, wenn das Protokoll unterbrochen wird. In AVR-GCC hatte ich das auch schon > umgesetzt und mu�te da IRQs sperren. > Eigentlich mü�te ich ja nur Timer2 sperren (10ms Tick) oder sind (au�er dem Interpreter) noch andere > Interruptquellen aktiv? > > Dirk Hallo Dirk, hast du schon mal Timer disable ausprobiert? Timer_Disable(Timer Nummer) Timer_Disable(2) Grü�e Ulli | ||
Antwort schreiben Antworten: |
Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum