Hello,我在程序中配置了一个IO(P0_4)用于中断唤醒,配置为下降沿触发。在进入睡眠前需要将不需要的IO配置为下拉输入,通过配置P2INP将P0端口配置为PullDown,但是操作这个寄存器会导致该IO发生中断。
user4976959:
回复 YiKai Chen:
这些引脚是一些外设的引脚,唤醒时需要重新初始化为正常状态
user4976959:
回复 YiKai Chen:
我想请问下串口在睡眠时初始化为什么状态比较好
YiKai Chen:
回复 user4976959:
設置成tristate就好
Susan Yang:
回复 user4976959:
您可以尝试在设备睡眠之前将串口接收器禁用,并将IO口设置成普通IO模式,之后将RX对应的脚设置成上拉输入,下降沿中断,之后进入睡眠。当接收到串口数据时,通过IO中断唤醒,之后在中断处理函数内将IO口重新设置成UART模式,并将串口接收器使能。
user4976959:
回复 Susan Yang:
你好,这个方法之前单低功耗芯片时用过,是可行的。但是由于现在是两个低功耗芯片进行通信,所以这个方案不是很好用,需要添加多一个IO用于通信前的唤醒
YiKai Chen:
回复 user4976959:
你两个低功耗芯片进行通信是用UART?
user4976959:
回复 YiKai Chen:
是的,发数据前把唤醒IO拉低,唤醒对方,然后再发数据
YiKai Chen:
回复 user4976959:
這不需要設置P2INP吧
user4976959:
回复 YiKai Chen:
主要是之前想睡眠之前把使用过的一些外设IO初始化为下拉输入,所以需要用到P2INP