极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2134|回复: 2

PMU库的一些问题及解决办法。

[复制链接]
发表于 2018-2-3 15:18:53 | 显示全部楼层 |阅读模式
本帖最后由 Damn_intuition 于 2018-2-3 15:20 编辑

8F328P下,LGT提供的PMU库目前存在一些问题,当使用模拟口之后,PMU.sleep将无法生效,针对这个问题,建议修改库包,在使用PMU之前先关闭AD相关功能。

  1.         adcsra_reg = ADCSRA;
  2.         ddrd_reg = DDRD;
  3.         portd_reg = PORTD;
  4.         ddrb_reg = DDRB;
  5.         portb_reg = PORTB;
  6.         didr0_reg = DIDR0;

  7.         DIDR0 = 0xff;
  8.         ADCSRA = 0;

  9.         DDRD &= 0xdf;
  10.         DDRB &= 0xf9;
  11.         PORTD |= 0x20;
  12.         PORTB |= 0x06;
复制代码




并在执行睡眠之后恢复

  1.         ADCSRA = adcsra_reg;
  2.         DIDR0 = didr0_reg;

  3.         // restore I/O
  4.         PORTD = portd_reg;
  5.         PORTB = portb_reg;
  6.         DDRD = ddrd_reg;
  7.         DDRB = ddrb_reg;
复制代码
回复

使用道具 举报

发表于 2018-2-4 14:14:10 | 显示全部楼层
好贴。。。好好学习下~~~
回复 支持 反对

使用道具 举报

发表于 2018-2-9 20:42:54 | 显示全部楼层
直接集成进去

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊 ( 浙ICP备09023225号 )

GMT+8, 2019-7-16 23:11 , Processed in 0.042593 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表