SAM7X256 GCC Input interrupt
Hi to all, I’m new in the forum.
I have a simple question because I’m frustrated…
how to set up an interrupt input ???
On the internet i have found some example but nobody works!
Follow I post my simple code.
Thank you in advance and sorry for my bad english.
best regards,
Davide
INP1 is the PortA 21
This is in the main()
…
AT91F_PMC_EnablePeriphClock(AT91C_BASE_PMC, 1 << AT91C_ID_PIOA);
AT91F_PMC_EnablePeriphClock(AT91C_BASE_PMC, 1 << AT91C_ID_PIOB);
AT91F_PIO_CfgInput (AT91C_BASE_PIOA, AT91C_ID_PIOA);
AT91F_AIC_ConfigureItH (AT91C_BASE_AIC, AT91C_ID_PIOA, 5, AT91C_AIC_SRCTYPE_HIGH_LEVEL, InterruptOnInput);
AT91F_PIO_InterruptEnable (AT91C_BASE_PIOA, (1 << INP1));
AT91F_AIC_EnableIt (AT91C_BASE_AIC, AT91C_ID_PIOA);
…and the function InterruptOnInput
//***************************
void InterruptOnInput( void )
//***************************
{
int dummy;
//* enable the next PIO IRQ
dummy =AT91C_BASE_PIOA->PIO_ISR;
//* suppress the compilation warning
dummy = dummy;
AT91C_BASE_AIC->AIC_EOICR=0x00;
// Set the output for a visual verify
// OUT5 = Port B 23 = 55
AT91C_BASE_PIOB->PIO_CODR = 1 << OUT5;
}
SAM7X256 GCC Input interrupt
I think this question is more AT91 related than FreeRTOS related. You could post it to the AT91.com forum. There are examples in the FreeRTOS download though where the tick interrupt is set up and the ethernet interrupts are set up.