然而,无论我尝试了什么,中断只发生在下降边缘,一旦设备释放引脚。这是一个时间关键的应用程序,所以我需要中断尽快启动。
如果您有任何建议,将不胜感激,代码和逻辑分析仪图像随附。< / p > < p >祝福,< / p > < p >汤姆< / p > < p > SetWord16 (P29_MODE_REG 0 x20);//设置为下拉
SetWord16(GPIO_IRQ2_IN_SEL_REG, 24);// P2.9被选中,第二个参数是pin - check datasheet
SetWord16(GPIO_RESET_IRQ_REG, 4);//重置IRQ_2reg
SetBits16(GPIO_INT_LEVEL_CTRL_REG, EDGE_LEVELn2, 0); //重置IRQ_2reg
SetBits16(GPIO_INT_LEVEL_CTRL_REG, EDGE_LEVELn2, 0); // 0: do not wait for key release after interrupt was reset for GPIO IRQ2
SetBits16(GPIO_INT_LEVEL_CTRL_REG, INPUT_LEVEL2, 0); // select rising edge
SetBits16(GPIO_DEBOUNCE_REG, DEB_ENABLE2, 0); // debounce enable
SetBits16(GPIO_DEBOUNCE_REG, DEB_VALUE, 0); // debounce time n * 0.63 ms
NVIC_SetPriority(GPIO2_IRQn,0);
NVIC_EnableIRQ(GPIO2_IRQn);
SetWord16(GPIO_RESET_IRQ_REG, 4); // Reset IRQ_2reg