Re: Alle Interrupts zeitweise sperren Kategorie: IDE (von Dirk - 8.07.2009 20:54) | ||
Als Antwort auf Re: Alle Interrupts zeitweise sperren von PeterS - 7.07.2009 13:31 | ||
| ||
> > > > 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? > > Ja, wenn man eine USB Verbindung zum Applicationboard hat, ist der SPI Interrupt aktiv. Sonst > vielleicht noch der serielle Interrupt, wenn man die entsprechenden Funktionen aufruft. > > Gruss Peter > > > > > Dirk So, Problem gelöst: Das Sperren von Timer2 reichte aus. Dirk | ||
Antwort schreiben Antworten: |
Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum