打印
[蓝牙芯片]

CH573睡眠模式唤醒后ADC不正常

[复制链接]
20740|15
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
linguanghua|  楼主 | 2021-6-4 14:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
发现CH573睡眠模式唤醒后ADC不正常,数值偏大很多。如果不使用睡眠模式,可以正常使用。
还有就是睡眠唤醒后,调整HSE偏置电流会导致复位。
不一般啊。

使用特权

评论回复
沙发
guijial511| | 2021-6-7 20:51 | 只看该作者
纳尼,这么奇怪?

使用特权

评论回复
板凳
huquanz711| | 2021-6-8 07:29 | 只看该作者
睡眠唤醒后,重新初始化一下ADC试试。

使用特权

评论回复
地板
linguanghua|  楼主 | 2021-6-8 13:42 | 只看该作者
最后发现原因是:唤醒后,有些寄存器没有保持,需要重新设置。
到底哪些寄存器保持,哪些不保存,手册也是一句带过,只能自己慢慢体会。

使用特权

评论回复
5
yangxiaor520| | 2021-6-10 21:15 | 只看该作者
唤醒后重新对外设初始化一下。

使用特权

评论回复
6
chenqianqian| | 2021-6-11 08:01 | 只看该作者
可以按照楼上说的,唤醒后重新初始化一下。

使用特权

评论回复
7
zhamatu| | 2021-6-11 10:36 | 只看该作者
唤醒后都对外设进行初始化是必须的工作。因为在睡眠之前有些外设就会被关闭。

使用特权

评论回复
8
linguanghua|  楼主 | 2021-6-15 16:27 | 只看该作者
zhamatu 发表于 2021-6-11 10:36
唤醒后都对外设进行初始化是必须的工作。因为在睡眠之前有些外设就会被关闭。 ...

唤醒后,要是全部重新初始化,那不如直接软复位。实际上有些寄存器维持,有些没有,只需要初始化需要寄存器即可。到底哪些维持?厂商不放出来,手册一句话带过,留给客户自己想。很多国产MCU都喜欢这样。

使用特权

评论回复
9
天意无罪| | 2021-6-17 12:31 | 只看该作者
唤醒后,重新初始化ADC外设,如果应用允许,也可以唤醒后直接软复位一下。

使用特权

评论回复
10
单片小菜| | 2021-7-14 14:51 | 只看该作者
如果从深度睡眠中进行唤醒的话,需要重新对ADC进行初始化的。

使用特权

评论回复
11
自己造声卡| | 2021-7-14 16:28 | 只看该作者
怎么会有这样的情况,一直没有遇到过,不知道怎么回事。

使用特权

评论回复
12
里面有晴雨| | 2021-7-16 09:11 | 只看该作者
还有这样的事情发生吗?不理解。

使用特权

评论回复
评论
linguanghua 2021-7-16 15:04 回复TA
是因为MCU唤醒后,ADC需要重新设置。这个原来没搞清楚。 
13
单片小菜| | 2021-8-6 16:20 | 只看该作者
你是将模块作为单片机使用吗?

使用特权

评论回复
14
yangxiaor520| | 2021-8-7 17:55 | 只看该作者
唤醒后重新初始化一下ADC外设

使用特权

评论回复
15
tec2| | 2021-9-18 13:08 | 只看该作者
睡眠模式下,AD的电源是关闭的,如果有的寄存器还保留值,那不是应该保留值,只是可能有余电。你看这个电源系统图(573规格书,24页)就知道,睡眠时DC/DC是关闭的。
从睡眠的函数里也能看到,睡眠管理寄存器R16_POWER_PLAN里的位就是对应电源系统图上的开关,所以看了这两个就知道那些在唤醒后要重新初始化。
    R16_POWER_PLAN = RB_PWR_PLAN_EN       \
                    |RB_PWR_MUST_0010   \
                    |RB_PWR_CORE            \
                    |rm;

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

25

主题

214

帖子

4

粉丝