Hallo,
ich möchte einen Interrupt bekommen, wenn ein USB-Kabel eingesteckt
wird. Dazu habe ich einen Spannungsteiler: Ganz oben die 5V von USB,
Mittenabgriff geht an PA19 (FIQ). Wenn kein USB angeschlossen ist, ist
PA19 LOW, wenn 5V vom USB anliegen, dann ist PA19 HIGH. Und dies möchte
ich mit dem FIQ mitgeteilt bekommen.
Mein bisheriger Code ist:
1 | AT91C_BASE_PIOA->PIO_PPUDR = USB_SELECT; // intern Pullup disable
|
2 |
|
3 | AT91F_AIC_ConfigureIt ( AT91C_BASE_AIC, AT91C_ID_FIQ, FIQ_INTERRUPT_LEVEL, AT91C_AIC_SRCTYPE_POSITIVE_EDGE, FIQ_handler_usb_conn);
|
4 |
|
5 | AT91F_AIC_EnableIt (AT91C_BASE_AIC, AT91C_ID_FIQ);
|
So, und wie man sich bestimmt denken kann, funktioniert es nicht (sonst
hätte ich das Ganze ja nicht in das Forum geschrieben). Wenn ich ein
USB-Kabel anschließe bekomme ich den Interrupt nicht, obwohl eindeutig
HIGH am Kontroller anliegt.
Irgendwelche Tipps?
Schönen Gruß,
Johannes