PIC测试在睡眠下的消耗电流

时间:2018-07-23
  测试条件:PIC16F676使用内部4MHzRC振荡,电源电压5V,测试在睡眠下的消耗电流
  单片机在外部IO口设置成输入并有固定电平的情况下,程序进入一个NOP指令和跳转指令的死循环后耗电约1.26mA
  1.SLEEP之后:WDT开并256分频,每2.3秒左右唤醒,所有IO口为数字输入口,直接接高电平或低电平。5V,0.159mA,主要配置:_INTRC_OSC_NOCLKOUT&_WDT_ON&_PWRTE_ON&_MCLRE_OFF&_BODEN
   2.上面的程序没动,只是配置&_BODEN_OFF,电流降为8.5μA,其它配置变化对电流消耗影响不大,WDT开与不开只差0.1μA,可见BROWNOUTDOWN功能是个耗电大户。
  3.上面的配置、程序没动,所有IO输入口悬空,结果电流变为0.8-1mA,以上均没开电平变化中断,而且手接近 单片机 电流变的更大。可见虽然IO口看似没有吸收电流,但干扰电平引起单片机内部比较器频繁翻转的电流可以说很惊人。
  4.以上配置,仅将WDT分频比改为1:1,各IO口仍然接固定电平,此时 单片机 WDT约每1.8mS唤醒,电流为8.8μA,可见RC的唤醒很省电。
  5.以上配置,WDT1:256分频,将所有IO口设置成输出,并输出低电平,IO口不接任何负载,结果电流为9.5μA,与输入相比多了1μA。可见IO口的驱动也是要能量的。
  6.以上配置,WDT1:256,各AD输入口设置成AD输入,其它设置成IO输入,均接固定电平,ADON置1,GO为零,此时AD模块开启,转换未开始,转换时钟采用系统时钟的1/8,电流8.8μA基本无变化,转换时钟采用AD独立RC振荡,电流仍为8.8μA,独立RC振荡,GO置1,转换完成后继续AD转换,电流为9.2μA,期间没有空余采样电容的充电时间,可见AD转换并不怎么耗电。
  7.关闭AD,开启RA口的弱上拉,有弱上拉的IO悬空,WDT1:1,电流8.8μA,将弱上拉的IO口其中一脚接地,电流猛增至212.4μA,换算下来一个弱上拉相当于一个24KΩ左右的电阻。
  综上所述,耗电大户有两个:大户是悬空的输入脚,第二大户为弱上拉时IO口接地。第三大户为BROWNOUTDOWNRESET(电压过低复位)。若要省电的话不妨以此参考。此次试验是 单片机 没有任何外围电路的情况下测得,当然外围电路比较复杂,设计省电模式其它电路的耗电也要考虑。若要非常省电,那么每个功能是否开启都是锱珠必较的。
上一篇:Keil C51使用教程---编程(四)
下一篇:一个关于USART传输标志TXE/TC 的话题

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料