Hallo zusammen. Ich möchte mit dem AT32UC3B einen externen Interrupt aktivieren. Dazu habe ich den PORT PIN PA23 entsprechend verdrahtet und laut Datenblatt kann ich die Funktion des EXTINT[3] mit diesem PIN nutzen. Ich habe folgendes gemacht: void InitGPIO(void) { volatile avr32_gpio_port_t *gpio_port; gpio_port = &AVR32_GPIO.port[PORTA]; // !INT, tristate gpio_port->gperc = (1<<PA23); //Peripherie gpio_port->oderc = (1<<PA23); gpio_port->puerc = (1<<PA23); } Meine ISR soll so aussehen: __attribute__((interrupt)) static void PA23() { volatile avr32_gpio_port_t *gpio_port; gpio_port = &AVR32_GPIO.port[PORTA]; gpio_port->ovrc = (1<<PA22); //Kill auf LOW } Die globale Interruptfreigabe habe ich bereits aktiviert. Was muss ich jetzt noch machen, um dem Controller mitzuteilen, dass der EXTINT[3] auch die entsprechende ISR ausführt? Könnt ihr mir hier weiterhelfen? Muss ich hier noch die Zuordnung zu einer Interrupt Gruppe vornehmen? Danke für Eure Hilfe.
Den Glichfilter habe ich auch gesetzt: gpio_port->gfers = (1<<PA23);
Also ich mach es immer so, dass ich mir ein passendes Beispielprojekt aus über das ATMEL Studio ziehe um dann die Dinge zu studieren.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.