应广单片机吧 关注:140贴子:458
  • 1回复贴,共1

PA6+STOPSYS休眠唤醒示例

只看楼主收藏回复

Q :休眠唤醒脚,因为设计原因不能开内部上拉。会有影响吗?
A:有电平变化 才会唤醒,,比如休眠前是高,那边只有高变低之后才能唤醒。 如果不能开内部上拉,那么要保证有这样的电平变化,如果是半电压,比如0.3VDD-0.7VDD之间的电压,是无法唤醒的,因为MCU无法判断电平.
void FPPA0(void)
{
...
pa = 0b_0000_0000;
pac = 0b_0000_0000; //PA6 设输入
paph = 0b_0100_0000;
$padier 0b_1100_0000;;//开启PA6数字输入 开启PA7数字输入
...
while(1)
{
if(PA.6)
{
NOP;
}
else
{
NOP;
}
// 如果休眠不要PA6唤醒,那么得找另外一个唤醒源,假设是PA7,那么要设置padier 0b_1100_0000;
$ padier 0b_1000_0000; //关闭PA6的唤醒功能,此时也不能做数字输入
stopsys;
//醒来后
$ padier 0b_1100_0000;//重新开启PA6的数字输入功能。
}


IP属地:广东1楼2023-07-31 09:36回复
    边沿中断


    IP属地:北京来自Android客户端2楼2024-05-04 06:34
    回复