Forum: Mikrocontroller und Digitale Elektronik µC interrupt in C


von Petra Puschel (Gast)


Lesenswert?

Hallo,

kann mir jemand sagen was hier die Null bedeutet?

void ex0_isr() interrupt 0


Wie kann ich eigentlich unterscheiden ob ein Interrupt bei steigender 
oder fallender Flanke ausgelöst wird?

Vielen Dank für die Hilfe.

von STK500-Besitzer (Gast)


Lesenswert?

Petra Puschel schrieb:
> kann mir jemand sagen was hier die Null bedeutet?

Die Dokumentation zu deinem Compiler.

von Cyblord -. (cyblord)


Lesenswert?

Petra Puschel schrieb:

>
> Wie kann ich eigentlich unterscheiden ob ein Interrupt bei steigender
> oder fallender Flanke ausgelöst wird?

Das Datenblatt deines Controllers gibt dir gerne darüber Auskunft.

von Hanns (Gast)


Lesenswert?

Das ist eine fortlaufende Nummer für die verschiedenen Interrupts mit 
der Zuordung zur Einsprungadresse.

Z.B

Interrupt Nr. 0  Timer0   Adresse 0x0003
Interrupt Nr. 1  Timer1   Adresse 0x0006
Interrupt Nr. 1  UART0    Adresse 0x0009

Das muss in der Compiler Doku des jeweilig verwendeten Systems stehen.

z.B für 8051 Keil/uVision:
http://www.keil.com/support/man/docs/c51/c51_le_interruptfuncs.htm

mfg
Hanns

von Wilhelm F. (Gast)


Lesenswert?

Petra Puschel schrieb:
> Hallo,
>
> kann mir jemand sagen was hier die Null bedeutet?
>
> void ex0_isr() interrupt 0

Die Funktionsbezeichnung ex0_isr kann man beliebig wählen, aber daraus 
sollte dem Benutzer durch den Namen die Funktion klar sein. Man könnte 
sie beispielsweise auch int_ext_0 nennen.

Die Null gibt dem Compiler wohl die Vektoradresse für einen externen 
Interrupt 0 an.

> Wie kann ich eigentlich unterscheiden ob ein Interrupt bei steigender
> oder fallender Flanke ausgelöst wird?

Das macht man in den entsprechenden Registern bei der Initialisierung.

> Vielen Dank für die Hilfe.

Bitte.

von Petra Puschel (Gast)


Lesenswert?

Danke für die schnellen Antworten.

Ich habt wohl alle auch mich gewartet :)

Gruß

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.