Ai8051U掉电唤醒定时器计数寄存器问题
WKTEN位必须与WKTCH低7位同时写入,否则低7位会被清零,导致唤醒时间异常这个在手册中没有提到必须同时写入,而且头文件有WKTEN的sbit
这是否是bug,如果不是bug本来就是这样的,建议数据手册中增加描述(必须先写低8位,再同时写高7位和EN位),头文件取消sbit定义(避免用户单独写该位)
<p>这是32位头文件上定义的么0.0</p>
Ai8051U系列单片机的WKTCH和WKTCL寄存器的读操作和写操作为不同的功能
写WKTCH和WKTCL寄存器,设置的是下次进入STOP后,等待的掉电唤醒定时器的时钟数
读WKTCH和WKTCL寄存器,读取的是上一次STOP唤醒前的掉电唤醒定时器的计数值,首次读取的值为0
由于对WKTCH和WKTCL寄存器的读和写并不是芯片内部的相同的reg寄存器,
所以对WKTCH和WKTCL寄存器不能够使用与/或/异或等读-修改-写指令进行修改,只能使用直接赋值语句 zhp 发表于 2024-12-30 18:58
Ai8051U系列单片机的WKTCH和WKTCL寄存器的读操作和写操作为不同的功能
写WKTCH和WKTCL寄存器,设置的是下次 ...
学习,建议手册注明 看来其他需要直接赋值的寄存器,其读和写并不是芯片内部的相同的reg寄存器。 zhp 发表于 2024-12-30 18:58
Ai8051U系列单片机的WKTCH和WKTCL寄存器的读操作和写操作为不同的功能
写WKTCH和WKTCL寄存器,设置的是下次 ...
建议:
论坛中有人认为唤醒就必须要进中断,还有人认为读出掉电唤醒定时器的频率就必须是准确的,介绍不详细会引起误解
这句应该放省电模式介绍里:
在新型号MCU中,该时钟并非掉电唤醒定时器专用,LCD和RTC等也可使用该时钟,这样描述比较准确
<p>一直比较疑惑的是,如果使用的是内部的低速32KRC时钟,,,RTC在用的时候还要注意先开启再等待稳定等等操作,,这个掉电唤醒定时器就不需要这样设置,,,不知道为什么会这样,,一直以来都是推测掉电唤醒定时器用的可能是这个低速时钟。。</p>
页:
[1]