Hallo zusammen,
ich habe ein kleines Problem und zwar möchte ich meinen LPC1768 aus dem
Power Down Modus aufwachen lassen.
sobald ich dies über die externen Interrupt Eingänge realisiere
funktioniert auch alles prächtig, nun möchte ich, dass der Controller
ebenfalls über ein CAN activity Interrupt aufwacht.
Hierzu liefert Keil ein schönes Beispiel welches ich in mein Programm
eingebunden habe
1 | /***************************CAN ACTIVITY ************************************/
|
2 |
|
3 |
|
4 | void CANActivity_IRQHandler(void)
|
5 | {
|
6 | canactflag = 1;
|
7 | /* Restore CAN channel clocks */
|
8 | LPC_SC->CANSLEEPCLR = (1<<1) | (1<<2);
|
9 |
|
10 | /* Wakeup CAN controllers */
|
11 | LPC_CAN1->MOD =
|
12 | LPC_CAN2->MOD &= ~(1<<4);
|
13 |
|
14 | /* Clear CAN1 & CAN2 WAKE FLAG */
|
15 | LPC_SC->CANWAKEFLAGS = (1<<1) | (1<<2);
|
16 | return;
|
17 | }
|
Anschließend reinitialisiere ich den Controller im Hauptprogramm mit
Hilfe von canactflag.
Der CAN Betrieb funktioniert soweit (hab das vorher getestet)und das
Interrupt habe ich vorher freigeschaltet.
Ha tjemand eine Ahnung was ich vergesse?
Dankeschön