Sida 1 av 1

interrupt i interrupt?

Postat: 10 maj 2004, 22:15:02
av gvs
har börjat bygga på mitt ekolod och har det som följer:
sänder ut en puls, väntar på att interrupt på capture, dvs när jag får en falling edge på en pinne sparar jag undan timer1-värdet för att veta hur länge det tog för ljudet att studsa och återvända. I den rutinen vill jag ha ett timer1-overflow interrupt för att kunna börja om ifall det tar för länge att få tillbaka pulsen. går det att nästla interrupt på det sättet?

Postat: 10 maj 2004, 22:32:06
av mrmike
Beror på vad du har för controller men du har pysslat med PIC förut så jag antar det är det du använder. I PIC18 kan du för för de flesta interrupt välja om de ska vara hög- eller lågprioriterade. Ett hög- kan bryta ett lågprio för att sedan återgå till det låga.
Fast behöver du använda detta? När du får ett captureinterrupt så läser du och resettar timern och får du ett timerinterrupt så skickar du ut en ny puls, eller tänker jag knasigt?

Postat: 10 maj 2004, 22:43:15
av gvs
hm... förstår inte din första mening. det är en 16f629.
kom just på att du har rätt... står ju utanför interruptrutinen och väntar på vad som ska hända. tack för påminnelsen :)

Postat: 10 maj 2004, 22:49:14
av matseng
"hm... förstår inte din första mening. det är en 16f629."

Jag håller upp ett antal fingrar nu. Hur många är det? :-) Vi är inte tankeläsare... Läs ditt inlägg högst upp i tråden igen.

Postat: 10 maj 2004, 23:04:58
av gvs
oki.... :) knas....

Nu har jag klurat lite mer och inset vad jag verkligen vill göra...
Visst är det så att alla interrupt är disablade då man är i ett interrupt ( tyckte jag läste det nyss...) isf så borde jag klara mig utan krångel över huvud taget. Tricket är att då jag sänder en puls med ultraljud så kommer ju mottagaren att reagera, men om jag bara clearar biten som indikerar att ett interrupt har inträffat ( så jag inte får ett nytt interrupt direkt efter retfie) så spelar det ju ingen roll eftersom det gamla värdet skriver över det nya vid en ny capture, eller nollas timer1 vid capture?

Postat: 10 maj 2004, 23:07:06
av mrmike
gvs: gå å lägg dig :) det jag ville få fram med meningen var nåt sånt här: "Ja, det går, beroende på vilken enchipsdator du använder, att 'nästla' interrupt på det sättet" OCH "Jag antar att du vill använda en PIC"

[edit] nu blev det konstig ordning...

Postat: 10 maj 2004, 23:20:22
av gvs
Jo börjar bli dags för det, kommer bara undra vad jag skrivit när jag tittar på det imorrn

Postat: 10 maj 2004, 23:33:04
av mrmike
Ja, interrupten är disablade
Det verkar inte som att timern resettas efter en capture så det ska nog fungera