请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
部件号:MSP432P401R 您好,
我注意到,当我得到GPIO引脚中断(在我的情况下为WFP 3.5)并调用 MAP_GPIO中断边缘选择以更改边缘时, 它会再次为该引脚设置中断标志,并再次调用中断例程。 我可以看到,在改变边线时,销钉没有变化。 这是应该发生的,我怀疑这是一个错误吗? 所以检查一下:D
此致,
Ugljesa Popovic。
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好,
我注意到,当我得到GPIO引脚中断(在我的情况下为WFP 3.5)并调用 MAP_GPIO中断边缘选择以更改边缘时, 它会再次为该引脚设置中断标志,并再次调用中断例程。 我可以看到,在改变边线时,销钉没有变化。 这是应该发生的,我怀疑这是一个错误吗? 所以检查一下:D
此致,
Ugljesa Popovic。
Evan,
这是IRQ处理程序... 我不得不删除这个处理程序的某些部分,但我确信它与WFP 3.5 无关,它只是将一些全局变量设置为正确的状态。
void PORT3_IRQHandler (void)
{
UINT32_t状态;
状态= MAP_GPIO _getEnabledInterruptStatus(GPIO_PORT_P3);
//MAP_GPIO清除InterruptFlag (GPIO端口P3,状态);
P3->IFG &=~状态; //我使用此选项是因为在DriverLib文档中,它可能会导致您无法对Port3使用clearInterruptFlag函数... 虽然它起了作用,但只是为了确定。
IF (STATUS&GPI_PIN5){
IF (getConnectionStatus())){// 如果WFP 3.5 为LOW
MAP_GPIO_REBENTEdgeSelect(GPIO_PORT_PIN5, GPIO_PIN5, GPI_LLOW TO_HIGH Transition),则此函数返回TRUE;
//GPIO ->IFG &=~ P3_PIN5;//I 已修复此问题...
~{ MAP_GPIO_interruptEdgeSelect(GPIO_PORT_P3, GPIO _PIN5, GPIO _HIGH _TO_LLOW Transition);//P3->IFG &= GPIO PIN5; //同样的事情
}
}
MAP_Interrupt_DisableSleepOnIsrExit();
}
此致,
Ugljesa。