UC3B Externen Interrupt aktivieren

Gast #4737695
Lesenswert?

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.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren