Hey, ich mache gerade meine ersten Gehversuche mit meinem STM32. Kann mir jemand mit Interrupts helfen? Ich möchte gerne einen Interrupt auf den Pin PC13 legen. So das bei Tastendruck NVIC-EnableIRQ(EXTI15_10_IRQn) {} //activate interrupt und die Funktion: void EXTI15_10_IRQHandler(void) {} Kann mir jemand sagen was da noch fehlt??? Danke
Gast
#2551191
NVIC-EnableIRQ(EXTI15_10_IRQn) {} //activate interrupt
Das wird wohl lustige Compilermeldungen geben.
Zieh dir die Firmware Library für deinen STM32
bei ST. Da sind haufenweise Beispiele dabei.
Durch die Eile passieren Fehler ;) Das sollte natürlich ganz anders lauten... Ich würde mich bei der Programmierung gerne auf CMSIS beschränken. Gibt es hierfür auch Beispiele??? Könnte mir jemand ein GPIO Interrupt Beispiel, welches sich nur auf CMSIS beschränkt posten?
Gast
#2551237
>Ich würde mich bei der Programmierung gerne auf CMSIS beschränken. Gibt >es hierfür auch Beispiele??? >Könnte mir jemand ein GPIO Interrupt Beispiel, welches sich nur auf >CMSIS beschränkt posten? Das kann niemand. CMSIS Cortex-M3 Core Peripheral Access Layer Source File CMSIS bezieht sich nur auf den reinen CPU Core und dessen Register. Sagen wir einfach mal CPU Register und Systick. Die Peripherie ist für jeden Hersteller anders.
mimi momo schrieb: > Kann mir jemand sagen was da noch fehlt??? Kenne den F2 nicht, aber beim F1 musst du noch im AFIO_EXTICRx das mapping von den Ports zu den EXTIx lines einstellen. Px0 geht auf EXTI0, Px1 auf EXTI1, usw. Beim STM32F1 wären also im AFIO_EXTICR4 die Bits 7:4 auf '0010' zu setzen, damit PC13 auf EXTI13 reroutet wird. mfg
Hier mal was für GPIO C , Pin 3 . benutzt allerdings die FW library, ymmv . Vllt. hilfts ja trotzdem:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
23 | |
24 | |
25 | |
26 | |
27 | |
28 | |
Und dann:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.