Forum: Mikrocontroller und Digitale Elektronik PushButon - Interrupt


von Michael (Gast)


Lesenswert?

Hi,

Ich verwende den PhyCore LPC2294-Board und will, das der PushButton S3 
als externe Interruptquelle (FIQ) dient. Aber der Button löst kein 
Interrupt aus. Was ist falsch?:

Ich hab den Code aktualisiert. Aber der Button löst noch immer kein
Interrupt aus. Bin verzweifelt. Kann mir mal jemand bitte helfen?:

void FIQ_Handler (void) __fiq
{
  EXTINT = 0x00100000; // Clear the peripheral interrupt flag

  IOCLR0 = 0x00000100;
}


int main(void) {
  int var1 = 0;

  IODIR0 = 0x00000100;                  // Push-Button als Eingang
                                        // konfigurieren und D3 als
Ausgang
  PINSEL0 = 0x00000300;      // Push-Button als EINT3 einstellen
  EXTMODE = 0x00000008;            // Push-Button :edgesensitive-
                                        // Modus(Flankenmodus)
  EXTPOLAR = 0x0000008;      // Push-Button : Interrupt beim
                                        // Loslassen des Buttons
(Wechsel
                                        // zum Hochpegel)
  VICIntEnable = 0x00100000;    // Push-Button als externe
                                        // Interruptquelle konfigurieren
  VICIntSelect = 0x00100000;     // Push-Button-Interrupt führt zum
                                        // FIQ-Modus

  while(1) {
     IOCLR0 = 0x00000100;
  }

  return 0;
}

von Michael (Gast)


Lesenswert?

Der Mikrokontroller geht nach Auslösen des Interrupts schon in den 
richtigen Interrupt-Modus (Fast Interrupt Request), nur wird die ISR 
nicht ausgeführt, stattdessen landet es irgendwo anders im Speicher wo 
"SWI ?" steht.

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
Noch kein Account? Hier anmelden.