[En-Nut-Discussion] Hanging Interrupts on PIO

Pawel Czarnecki apcom at tlen.pl
Tue May 4 13:44:28 CEST 2010

> However I must also add, I'm 'simulating' the interrupts using a wire.
    You can also configure pin as output and (same pin) to generate 
So You can change state of this pin by software and this generate interrupt.
Wire generate many interrupt and shows problem but sometimes maybe you
need exactly one pulse :-)

> I tried Low Level triggering with no difference.
    PIO Controller is "internal interrupt source", so AIC can be set only
for "High level Sensitive" (low level is only for external interrupt 

> But I do vaguely remember reading somewhere that only certain pins on the 
> are capable of different trigger modes? In that case i'm probably still on 
> the
> default edge-triggering mode.
    When pins are controller by PIO Controller (and all are properly 
they generate interrupt (exactly: sets bits in PIO_ISR) on both edges. 
PIO Controller generate interrupt (if PIO_IMR is set) to AIC. You must check 
software if this is positive or negative edge and on which pin.

Maybe You must look to at91sam7 manual to chapter Advanced Interrupt
Controller (AIC) and Parallel Input/Output Controller (PIO). There is
many useful information ;-)

best regards

More information about the En-Nut-Discussion mailing list