最近在做一个简单的红外对管检测,如上图,整个芯片就用到这2个脚,其他都没用,都没接外界器件,PA2脚就用来输出控制发射管,PA1用来输入检测判断高低电平。
程序开始就把PA2拉高发射,PA1检测判断到有障碍,有障碍PA1就会出现一个短暂低电平的变化,然后就进入sleep模式,在用WDT溢出唤醒,再把PA2拉高,再检测。。。(如此循环下去),,进入sleep前就把没用的管脚和PA2都设置为弱上拉输出拉低,PA1就保持弱上拉输入。
现在就出现问题,测试过完全休眠可以达到6uA,但运行上面所述的就会出现一个跳变的电流,从6uA~160uA,硬件上是没问题的,别人就能做到6uA~60uA左右。
现在就是软件上的问题,是不是我的管脚设置出现问题还是其他的问题,纠结了几天,一直没找到问题。求高手指点啊!!
下面是芯片的管脚内部结构图
|