Forum: Mikrocontroller und Digitale Elektronik Interrupts beim stm32f107


von Ma B. (drumstick)


Lesenswert?

Hallo Zusammen

Ich bin kürtzlich auf den ARM stm32f107 in c umgestiegen (vorher PIC in 
Assembler). Aber ich komme bei den Interrupts einfach nicht weiter. Im 
Reference Manual ist fast alles ausser den Interrupts beschrieben. Gibt 
es irgend wo eine Anleitung dazu. Möchte mich da gründlich Einarbeiten.

Vielen Dank und Gruss!

M.B.

von Simon H. (simi)


Lesenswert?

Das Stichwort, nach dem Du suchen musst, ist NVIC, das ist eine 
Komponente des ARM Cortex-M3. Und deswegen auch in den Cortex-Manuals 
ausführlich beschrieben.

Kleiner Hint vorweg: Ein wesentlicher Unterschied zu anderen Prozis ist, 
dass die Interrupt-Tabelle keine Befehle (Branches) enthält, sondern die 
eigentlichen Vektoren. Das kann anfangs ein bisschen verwirren, wenn man 
z.B. crt0 studiert.

Gruäss
Simon

von geb (Gast)


Lesenswert?

Ziemlich satter Umstieg. Bei ST gibt es für den STM32 tonnenweise 
Beispiele für interrupts. Mal auf der Seite 
nachschauen,runterladen,compilieren und spielen...
Wenn du lange genug gespielt hast, wirst du das alles ganz leicht 
verstehen.

Grüße Gebhard

von Simon H. (simi)


Lesenswert?


von Ma B. (drumstick)


Lesenswert?

Hallo!

Danke für die Antworten!

Ich habe erreicht, dass ich mit externen Interrupts arbeiten kann. ich 
habe aber etwas noch nicht verstanden und zwar:

Welchen Wert muss ich dem Register EXTI_IMR zuweisen??

z.B. möchte ich ja mit am PortA Pin 0 einen externen Interrupt auslösen 
(EXTI0_IRQHandler). Da habe ich EXTI_IMR den Wert 1 zugewiesen.

Wie sieht der Wert aus, wenn ich mit dem PortD Pin13 einen Externen 
Interrupt auslösen möchte??


Vielen Dank und Grüsse!

M.B.

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.