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.

MSP432 P401R 设置.enableParking = true 后 进入LPM3 后 GPIO P6_1 不能唤醒MCU,更改管脚后现象不同,为什么?



MSP432进行休眠测试时,进入LPM3,
如果
PowerMSP432_config中的元素
.enableParking = true,

1.

设置的外部中断管脚 GPIOMSP432_P6_1 在MCU 进入休眠后不能唤醒MCU,
如果设置成false, 则 GPIOMSP432_P6_1 中断能唤醒MCU,但是进入休眠后功耗较高;

2.

如果更改使用其他管脚 GPIOMSP432_P4_1 ,则 .enableParking = true , 进入休眠后上升/下降沿都能唤醒 MCU ,而且低功耗值也正常

两个管脚外部电路相同,怎么解释上面这种差异?

查看源码注释,理解为:

1,设置的外部按键中断管脚 GPIOMSP432_P6_1 正常模式下为低电平,按键按下需要将此管脚拉高触发中断,
由于 MCU 的 enableParking 功能设置成true,在MCU 进入休眠时此管脚默认低,休眠后拉低,
MCU策略是将浮动态管脚进行上拉或下拉以降低功耗,
此管脚被MCU依策略操作,会导致按下按键时外部上拉无效,不能唤醒MCU,
2,如果不设置 .enableParking = true 策略,又会多出60uA 左右的功耗,
且所有输入管脚都尝试 pulldown 了,
没有定位到哪个输入管脚,而且看现象port 4 和port 6 策略不同?

怎么处理这个问题?