Hallo,
mich interessiert es µC zu Programmieren und lese mich zurzeit ein wenig
ein. Ich habe mir hierfür den ARM Cortex M0 XMC1100 zugelegt. Die
Programmiersprache C beherrsche ich bereits ein wenig.
Ich verwende hierfür die IDE Dave von Infineon. Ich finde im Netz nur
sehr wenig Informationen zu dieser Software.
Ich habe auf YouTube folgendes Video gefunden:
https://www.youtube.com/watch?v=s9qgiaxKZrM&t=3202s
Dort werden einige Sachen ein wenig erklärt. Ich habe allerdings noch
etwas Grundlegendes nicht verstanden:
Um die LED vom Board blinken zu lassen wird folgender Code im Video
verwendet, ab min 51:00 :
1 | int main(void)
|
2 | {
|
3 | DAVE_STATUS_t status;
|
4 |
|
5 | status = DAVE_Init();
|
6 |
|
7 | if(status==DAVE_STATUS_FAILURE)
|
8 | {
|
9 | XMC_DEBUG("DAVE APPs initialisation failed\n");
|
10 |
|
11 |
|
12 | while(1u)
|
13 | {
|
14 | }
|
15 |
|
16 | }
|
17 |
|
18 | while(1u)
|
19 | {
|
20 | }
|
21 |
|
22 | }
|
23 |
|
24 | void PWM_Compare_ISR (void)
|
25 | {
|
26 | DIGITAL_IO_SetOutputLow(&LED_P1_3);
|
27 | DIGITAL_IO_SetOutputLow(&LED_P1_4);
|
28 | }
|
29 |
|
30 | void PWM_Period_ISR (void)
|
31 | {
|
32 | DIGITAL_IO_SetOutputHigh(&LED_P1_3);
|
33 | DIGITAL_IO_SetOutputHigh(&LED_P1_4)
|
34 | }
|
Ich verstehe nicht warum die Funktionen PWM_Compare_ISR() und
PWM_Period_ISR() nicht in der main Funktion aufgerufen werden müssen.
Kann mir jemand dies kurz erklären also warum diese Funktionen nicht in
der main aufgerufen werden müssen, denn laut Video blinkt die LED vom
Board. Nach meinem Verständnis der Programmiersprache in C müssten die
Funktionen ja in der main aufgerufen werden. Ansonsten werden diese ja
nie ausgeführt.
Danke