[STM8] 请教STM8L051 AD问题

[复制链接]
2056|7
 楼主| 北海326 发表于 2016-7-18 21:17 | 显示全部楼层 |阅读模式
AD, STM8, se, dc, TI
最近在调试STM8L051F3P6的低功耗模式和AD,进入halt模式下电流1ua以下,还不错。
现在的问题是:
进入halt之前把AD关闭,唤醒后,重新打开,发现转换得到的数据不对,后来查看datasheet,发现唤醒后需要等待一段时间,datasheet原文:
“When the
ADON bit is set, it wakes up the ADC from Power-down mode. Conversion should be
started only when the ADC power-up time (tWKUP) has elapsed and before the ADC
maximum idle delay (tIDLE) has elapsed.”,一直想找到这个tWKUP具体是多少,但是没有收获,请教各位大侠,谢谢!
 楼主| 北海326 发表于 2016-7-19 10:09 | 显示全部楼层
自己顶一个!
xmshao 发表于 2016-7-20 17:20 | 显示全部楼层
本帖最后由 xmshao 于 2016-7-20 17:22 编辑

这里你要考虑两个时间参数
1、从HALT到唤醒,如果使用HSI做系统时钟,这个时间最长大概7us;
2、还有个就是ADC启动稳定时间 这里最长大概3us;

也就是要想取得可靠AD值,该发生唤醒10us后。

天灵灵地灵灵 发表于 2016-7-20 23:13 | 显示全部楼层
唤醒后要重新运行初始化程序。
 楼主| 北海326 发表于 2016-7-22 09:30 | 显示全部楼层
天灵灵地灵灵 发表于 2016-7-20 23:13
唤醒后要重新运行初始化程序。

有尝试过,因为我用的是DMA,在睡眠前将AD和DMA的时钟都关闭了,AD也disable了,唤醒后重新初始化AD和DMA,依旧不行。

现在的解决办法是唤醒后,重新使能AD的DMA功能,也就是ADC_DMACmd(ADC1,ENABLE),这句话,就好了!
wzszzxj 发表于 2016-10-5 16:41 | 显示全部楼层
Tidle是20ms 到1S之间随温度而不定
wzszzxj 发表于 2016-10-5 16:42 | 显示全部楼层
我也是用AD,但一直在转换等待那里出不来
wzszzxj 发表于 2016-10-5 16:43 | 显示全部楼层
QQ:931334836
您需要登录后才可以回帖 登录 | 注册

本版积分规则

53

主题

323

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部