Я настроил GPIO PR4 для работы в качестве внешнего триггера прерывания на переднем фронте. Но ISR прерывания не запускается. Тот же код хорошо работает с GPIO PC5.Мой платформой является Cortex M3 (TI F28M36x).
GPIO PC5 имеет то же использование, что и PR4 (другой источник прерываний).
Я должен был проверить внешнюю волну в PR4 (высокий уровень более 3,0 В).
Я обнаружил, что PR4 использует шину AHP, но PC5 использует шину APB, интересно, эта разница дает другой результат?
Мой код настройки выглядит так:
SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOR);
GPIOPinTypeGPIOInput(GPIO_PORTR_BASE, GPIO_PIN_4);
GPIOPinIntClear(GPIO_PORTR_BASE,GPIO_PIN_4);
GPIOIntTypeSet(GPIO_PORTR_BASE, GPIO_PIN_4, GPIO_BOTH_EDGES);
IntRegister(INT_GPIOR, IntGPIORHandler);
IntEnable(INT_GPIOR);
GPIOPinIntEnable(GPIO_PORTR_BASE, GPIO_PIN_4);
ISR (IntGPIORHandler) никогда не вводился при отладке в инструментах CCS.