当前位置: 首页 > article >正文

STM32进阶 定时器4 高级定时器 + 高级定时器实验输出有限个周期的PWM波

两个        TIM1 和TIM8

功能除了拥有通用定时器的所有功能外+

(1)死区时间可编程的互补输出。

(2)断路输入信号(刹车输入信号)。

(3)重复计数器。

框图相比通用定时器

时基单元多了一个重复计数器

  • REP寄存器

  • 计数器每溢出1次,会产生一个信号,让重复计数器的值-1,直到重复计数器的值减到0,计数器再溢出,才会产生更新事件。

  • 增加了计数范围。就像之前系统定时器定时1s不够,然后用全局变量来拓展,这个就像当时的全局变量

输出通道多了一个功能CHxN

  • 高级定时器的通道1/2/3可以分别输出2路互补信号

  • 互补信号:频率周期相等,相位相差180°。

  • 死区时间:让两个通道不要同时是高电平,加了一个延迟,这延迟就是死区时间,可以配置。

输入通道多了一个刹车输入信号

  • 断路输入信号

  • 提供一个高低电平然后直接触发这个引脚,然后硬件会直接执行。更加快捷。

案例:高级定时器实验输出有限个周期的PWM波

需求描述

用寄存器实现。输出5个周期的PWM波,频率2Hz,观察发光二极管闪烁5次,或者用示波器观察波形。

需求实现思路:

使用高级定时器的重复计数器,当计数器溢出时,在溢出中断中停止定时器工作。重复计数器寄存器的值设置为4,即可输出5个周期的PWM波,发光二极管会闪烁5次。

采用STM1,因为再原型图中,它连接时PA8,并且它连接LED3。

编写代码如果右击没有新建txt文件,那么可以通过在当前目录cmd->写入COPY nul haha.txt  指令。


http://www.kler.cn/a/427546.html

相关文章:

  • 01、SpirngMVC快速入门
  • 四十一:掩码及其所针对的代理污染攻击
  • JWT 在 SaaS 系统中的作用与分布式 SaaS 系统设计的最佳实践
  • 【SpringMVC】应用分层
  • 敏捷开发之路
  • 使用VScode 和 Keil搭建STM32的开发环境
  • PyQT可视化开发-最详细教程
  • RK3568笔记2:NOR_Flash和NAND_Flash与SDMMC和eMMC
  • 222222
  • day08 接口测试(4)知识点完结!!
  • 阻塞队列详解
  • 【NIPS2024】Unique3D:从单张图像高效生成高质量的3D网格
  • GraphQL学习路线图
  • 【opencv入门教程】12. 矩阵初始化
  • mac电脑多个ssh keys共存
  • Linux内核中断机制详解
  • stable diffusion Controlnet常用控制类型解析与实战课程 3
  • 基于java+SpringBoot+Vue的社团管理系统设计与实现
  • Codeforces Round 991 (Div. 3)(A~F)
  • 网络练级宝典-> UDP传输层协议