打印
[STM32L4]

STM32学习--定时器(高级定时器)

[复制链接]
392|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
t61000|  楼主 | 2022-3-31 16:23 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
高级定时器
1、功能增加


由上图可了解到高级定时器在通用定时器上增加了三个功能部分:
① 时基部分:增加重复次数计数器和RCR寄存器。允许在指定数量的计数周期后产生更新事件,更新相应寄存器,其实际用处暂不了解,减少中断或DMA处理的资源占用?
②输入部分:增加刹车输入,可产生刹车事件。其源可为外部BKIN口和CCS事件,可控制输的。主要用在安全方面,如遇到紧急事件或系统异常时关闭输出口。
③输出部分:这部分增加功能较多,特别在1~3通道增加死区控制、互补输出、刹车响应及几种输出模式控制。


使用特权

评论回复
沙发
t61000|  楼主 | 2022-3-31 16:25 | 只看该作者
2、重复次计数器

增加重复次数计数器和RCR寄存器,当RCR寄存器为0时实际和通用定时器一样用。当其不为0时,重复次计数器会随下列事件,当递减至0时才会产生更新事件,在其不为0时计数器溢出或下溢均不产生更新事件。
重复计数器在下述任一条件成立时递减:
● 向上计数模式下每次计数器溢出时,
● 向下计数模式下每次计数器下溢时,
● 中央对齐模式下每次上溢和每次下溢时。
TIMx_RCR:重复计数寄存器
只有低8位有效,每次向下计数器REP_CNT达到0,会产生一个更新事件并且计数器REP_CNT重新从REP值开始计数。TIMx_RCR寄存器写入的新值只在下次周期更新事件发生时才起作用。
在PWM模式中, (REP+1)对应着:
- 在边沿对齐模式下, PWM周期的数目;
- 在中心对称模式下, PWM半周期的数目。

使用特权

评论回复
板凳
t61000|  楼主 | 2022-3-31 16:27 | 只看该作者
3、互补输出、死区插入、刹车功能
个人理解这个也主要用于电机控制,死区是避免直通烧坏外围器件。互补输出,有利于用于控制不同的驱动电路。
也可只使用CCxN输出,而不使能CCx输出,对于管脚选择也更有选择余地。
死区DTG用来设置死区时间,可根据外围器件的特性如电平转换延时、电源开关延时等进行设置。
刹车功能其源可为外部BKIN口和CCS事件,由BKE选择使能,极性由BKP设置。

使用特权

评论回复
地板
t61000|  楼主 | 2022-3-31 16:28 | 只看该作者
相关寄存器:
CCxN输出电平依赖于MOE、 OSSI、 OSSR、OISx、 OISxN和CCxE位的值。

与通用定时器不同,TIMx_CCER寄存器中1~3通道每个通道多2个控制位CC1NE和CC1NP,分别用来使能反向输出和设定反向极性。
TIMx_CR2 中增加OISx和OISxN确定输出空闲状态状态。

TIMx_BDTR 刹车和死区寄存器
MOE: 主输出使能;
AOE: 自动输出使能
BKP: 刹车输入极性
BKE: 刹车功能使能
OSSR: 运行模式下“关闭状态”选择
OSSI: 空闲模式下“关闭状态”选择
LOOK[1:0]:

使用特权

评论回复
5
t61000|  楼主 | 2022-3-31 16:29 | 只看该作者
锁定设置 (Lock configuration)
该位为防止软件错误而提供写保护。
00:锁定关闭,寄存器无写保护;
01:锁定级别1,不能写入TIMx_BDTR寄存器的DTG、 BKE、 BKP、 AOE位和TIMx_CR2寄存
器的OISx/OISxN位;
10:锁定级别2,不能写入锁定级别1中的各位,也不能写入CC极性位(一旦相关通道通过
CCxS位设为输出, CC极性位是TIMx_CCER寄存器的CCxP/CCNxP位)以及OSSR/OSSI位;
11:锁定级别3,不能写入锁定级别2中的各位,也不能写入CC控制位(一旦相关通道通过
CCxS位设为输出, CC控制位是TIMx_CCMRx寄存器的OCxM/OCxPE位);
注:在系统复位后,只能写一次LOCK位,一旦写入TIMx_BDTR寄存器,则其内容冻结直至复
UTG[7:0]: 死区发生器时间设置

使用特权

评论回复
6
Jacquetry| | 2022-10-5 21:20 | 只看该作者
这个不可以直接调用库函数吗

使用特权

评论回复
7
Uriah| | 2022-10-8 11:30 | 只看该作者

不要根据不同的参数类型走不同的代码逻辑

使用特权

评论回复
8
Wordsworth| | 2023-7-1 07:28 | 只看该作者

脚本的功能很强大,可以做很多事情,虽然不是最好的方式

使用特权

评论回复
9
Clyde011| | 2023-7-1 08:31 | 只看该作者

STM32CUBEMX配置生成初始化代码

使用特权

评论回复
10
万图| | 2023-7-1 10:27 | 只看该作者

Git 是一种分布式版本控制系统

使用特权

评论回复
11
Uriah| | 2023-7-1 11:30 | 只看该作者

光绘出零件间联机的PCB设计布线

使用特权

评论回复
12
帛灿灿| | 2023-7-1 13:26 | 只看该作者

它导致设计复杂,代码可读性差

使用特权

评论回复
13
Bblythe| | 2023-7-1 14:29 | 只看该作者

二值化就是让图像的像素点矩阵中的每个像素点的灰度值为0(黑色)或者255(白色

使用特权

评论回复
14
周半梅| | 2023-7-1 16:25 | 只看该作者

让该端口输出低电平的语句

使用特权

评论回复
15
Pulitzer| | 2023-7-1 17:28 | 只看该作者

CPU 是能够让你的计算机叫计算机的核心组件,但是它却不能代表你的电脑,CPU 与计算机的关系就相当于大脑和人的关系

使用特权

评论回复
16
周半梅| | 2023-7-1 18:31 | 只看该作者

但是如果不懂程序设计的思想的话,会给你做项目的过程中带来很多很多的困惑。

使用特权

评论回复
17
童雨竹| | 2023-7-1 19:24 | 只看该作者

AD功能禁用掉,再配置切换为带下降沿触发的外部中断触发脚

使用特权

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

本版积分规则

10

主题

115

帖子

0

粉丝