stm32 定时器 预加载寄存器与影子寄存器

1、什么是预加载寄存器与影子寄存器?

在stm32定时器框图中,有部分寄存器下有黑色影子(下图绿色框)

如自动重装载寄存器,对此的解释是:

此寄存器实际上有2个寄存器:预加载寄存器+影子寄存器

其中预加载寄存器为用户用来配置的寄存器(用户用来读写值),而影子寄存器是真正起作  用的寄存器(即上图红框所说)


上图红框文字有一个重点:根据控制位的设定

解释:

如自动重加载寄存器,有一个寄存器为ARPE(自动装载预装载使能位),若此寄存器未使能,则在修改自动重加载寄存器的值后(实际上修改的是预加载寄存器),预加载寄存器的值立即更新到影子寄存器(即工作寄存器)。

反之,若ARPE寄存器使能,用户在修改自动重加载寄存器的值后(实际上修改的是预加载寄存器),预加载寄存器的值会等到本次计数周期结束后(即计数器产生溢出,触发更新事件),才将值更新到影子寄存器(即工作寄存器)

2、cubemx相关配置

在使能auto-reload preload后,修改ARR寄存器的值后(即修改自动重加载寄存器的预装载寄存器),不会立即更新到相关影子寄存器(工作寄存器),而是在本次PWM周期结束后(即计数器产生溢出,触发更新事件)更新到相关影子寄存器(工作寄存器),反之,立即更新相关影子寄存器(工作寄存器)。

扫描二维码关注公众号,回复: 16780443 查看本文章

在使能output compare preload后,修改CCR寄存器的值后(即修改自动重加载寄存器的预装载寄存器),不会立即更新到相关影子寄存器(工作寄存器),而是在本次PWM周期结束后(即计数器产生溢出,触发更新事件)更新到相关影子寄存器(工作寄存器),反之,立即更新相关影子寄存器(工作寄存器)。

其中:

ARR-->pwm周期

CCR-->占空比

不严谨,粗略的理解

猜你喜欢

转载自blog.csdn.net/qq_62573253/article/details/131217073