打印
[方案相关]

什么是硬件自动置位全局缓存标志?

[复制链接]
1112|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
斧王FUWANG|  楼主 | 2025-4-29 11:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在高端MCU里,PWM模块通常内置:

Shadow Register(影子寄存器)

Update Trigger机制

而全局缓存标志(Global Update Flag / Buffer Transfer Complete Flag)是:

当PWM硬件检测到满足特定条件(如周期结束、计数到顶点BOTTOM/TOP),
自动置位一个更新完成的标志,表示缓存区数据已准备好,可以同步刷新到工作寄存器。

并且,硬件负责置位,不需要CPU干预!


使用特权

评论回复
沙发
原来是wjc| | 2025-5-31 17:23 | 只看该作者
当硬件完成缓存区数据传输到工作寄存器时,自动置位这个标志

使用特权

评论回复
板凳
l1uyn9b| | 2025-6-8 16:39 | 只看该作者
硬件自动置位全局缓存标志是HC32F334芯片在PWM(脉冲宽度调制)控制中用于确保寄存器同步更新与避免覆盖的一项硬件机制

使用特权

评论回复
地板
q1ngt12| | 2025-6-8 16:41 | 只看该作者
在锯齿波模式下,对OSTBTRU1位写1后,在其后遇到的第一个周期缓存传送点发生一次缓存

使用特权

评论回复
5
kaif2n9j| | 2025-6-8 16:42 | 只看该作者
在更新影子寄存器之前,先判断全局缓存完成标志(GBSFLR)。如果GBSFLR为1,则表示前面的比较值和周期值得到有效更新,此时可以更新新的比较值和周期值。

使用特权

评论回复
6
t1ngus4| | 2025-6-8 17:53 | 只看该作者
自动标记缓存完成状态:在单次缓存功能执行完毕后,硬件会自动将全局缓存完成标志位(GBSFLR)置1,表示缓存操作已完成。

使用特权

评论回复
7
p0gon9y| | 2025-6-8 18:54 | 只看该作者
在三角波模式下,对单元1单次缓存触发位(OSTBTRU1位)写1后,在其后遇到的第一个零点缓存传送点发生一次缓存。

使用特权

评论回复
8
lix1yr| | 2025-6-8 20:06 | 只看该作者
单次缓存完成以后,硬件会自动将GBSFLR置1。完成缓存以后,不会再发生缓存,除非软件重新触发单次缓存。

使用特权

评论回复
9
q1d0mnx| | 2025-6-9 09:14 | 只看该作者
更新完相关影子寄存器后,再触发单次缓存。

使用特权

评论回复
10
cen9ce| | 2025-6-9 09:31 | 只看该作者
如果GBSFLR不为1,则表示前续比较值和周期值未得到有效更新,需等下一控制周期再判断执行,以免覆盖。

使用特权

评论回复
11
d1ng2x| | 2025-6-9 11:16 | 只看该作者
通过硬件自动置位全局缓存标志,可以确保在更新PWM寄存器时,相关寄存器已经得到有效更新,避免了因寄存器更新不同步而导致的系统不稳定问题。

使用特权

评论回复
12
liu96jp| | 2025-6-9 13:09 | 只看该作者
简化软件设计,硬件自动置位全局缓存标志机制减少了软件中需要手动判断和处理的逻辑,简化了软件设计,提高了开发效率。

使用特权

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

本版积分规则

37

主题

275

帖子

0

粉丝