STM32定时器同步功能2:用一个定时使能另外一个定时器

测试芯片:STM32L151C8T6

代码库:LL库

本例中,TIM3为主定时器,TIM2为从定时器,通过TIM3 的更新事件使能TIM2,TIM2 收到触发信号时,其 CEN 位会自动置 1,并且计数器开始计数,直到向 TIM2_CR1 寄

存器的 CEN 位写入“0”才停止计数。
使用注意事项:
1.使用LL库初始化TIM3时单独配置各个功能,建议不要使用LL_TIM_Init初始化函数,因为这个函数初始化配置后会软件产生一次更新事件,此时即使TIM3还未使能也会把TIM2给触发了。根据自己的应用情况去选择,我因为这个坑(也不能算坑吧),调试了好久。
参考代码:
/*** 说明 : 主定时器初始化,用来控制从定时器* 参数 : 无* 返回 : 无*/
void Master_Timer_Init(void)
{LL_TIM_InitTypeDef TIM_InitStruct = {0};LL_TIM_OC_InitTypeDef TIM_OC_InitStruct = {0};   LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_TIM3); /** 定时器时基配置(单独调用各个配置函数) */LL_TIM_SetAutoReload(TIM3, 1000);LL_TIM_SetPrescaler(TIM3, 31);LL_TIM_SetCounterMode(TIM3, LL_TIM_COUNTERMODE_UP);LL_TIM_EnableARRPreload(TIM3);LL_TIM_SetClockSource(TIM3, LL_TIM_CLOCKSOURCE_INTERNAL);/** 将定时器更新事件作为触发源输出 */LL_TIM_SetTriggerOutput(TIM3, LL_TIM_TRGO_UPDATE);LL_TIM_DisableMasterSlaveMode(TIM3);}/*** 说明 : 从定时器* 参数 : 无* 返回 : 无*/
void Slave_Timer_Init(void)
{LL_TIM_InitTypeDef TIM_InitStruct = {0};LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_TIM2);/** 定时器时基配置 */TIM_InitStruct.Prescaler = 31;TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP;TIM_InitStruct.Autoreload = 99;TIM_InitStruct.ClockDivision = LL_TIM_CLOCKDIVISION_DIV1;LL_TIM_Init(TIM2, &TIM_InitStruct);LL_TIM_EnableARRPreload(TIM2);LL_TIM_SetClockSource(TIM2, LL_TIM_CLOCKSOURCE_INTERNAL);/** 触发模式 */LL_TIM_SetSlaveMode(TIM2, LL_TIM_SLAVEMODE_TRIGGER);LL_TIM_SetTriggerInput(TIM2, LL_TIM_TS_ITR2);  /** 和主定时器绑定 */LL_TIM_EnableMasterSlaveMode(TIM2);   /** 从模式使能 *//** 配置中断 */LL_TIM_EnableIT_TRIG(TIM2);LL_TIM_EnableIT_UPDATE(TIM2);NVIC_EnableIRQ(TIM2_IRQn); NVIC_SetPriority(TIM2_IRQn, NVIC_EncodePriority(NVIC_GetPriorityGrouping(), 1, 0));}/*** 说明 : 使能定时器* 参数 : 无* 返回 : 无*/
void Start_Timer(void)
{LL_TIM_EnableCounter(TIM3);
}

实验结果:

初始化主从定时器后,此时TIM2, TIM3都没有运行,当调用函数Start_Timer后TIM3开始运行,当TIM3产生了更新中断后,TIM2开始运行。此时停止TIM3不会影响TIM2运行,要想停止TIM2必须向TIM2_CR1 寄

存器的 CEN 位写入“0”

STM32定时器同步功能2相关推荐

  1. STM32定时器同步功能1

    STM32定时器同步功能1:将一个定时器用作另一个定时器的预分频器 测试程序说明: 测试芯片为STM32L151C8T6, 程序库使用的是LL库 用TIM3为主定时器,产生更新事件,并产生触发输出(T ...

  2. STM32定时器间的同步 主TIM1产生PWM 从TIM4精确控制TIM1 PWM脉冲数量

    STM32 定时器间的同步 主TIM1产生PWM 从TIM4精确控制TIM1 PWM脉冲数量 文章目录 STM32 定时器间的同步 主TIM1产生PWM 从TIM4精确控制TIM1 PWM脉冲数量 编 ...

  3. 利用STM32的定时器中断功能编写线阵CCD(ILX554B)的驱动时序

    利用STM32的定时器中断功能编写线阵CCD(ILX554B)的驱动时序 1.利用定时器完成线阵CCDILX554B的驱动时序,采用两个管脚1个用于产生ROG信号,一个用于产生CLK信号 2.使用一个 ...

  4. STM32定时器功能概括

    定时器分类 不同的芯片定时器的个数也是不同的,以STM32F103ZE有8个定时器(定时器的具体个数查相关手册). 定时器的分类:高级定时器.通用定时器.基本定时器,这3类定时器的功能各不相同. 定时 ...

  5. STM32 - 定时器高级应用说明 - 多触波的实现 (N-pulse waveform generation using timer synchronization)- 01

    前言: 如何实现复杂的不同频率.相位.波形脉宽的波形就在这个章节: This application example is split into two parts describing two si ...

  6. 硬件课程设计:基于STM32的多功能播放器之小说阅读

    1 小说阅读功能 1.1 功能介绍 1.1.1 设计思路 在TFTLCD屏上显示中英文文本文件是本次硬件课程设计的基本要求,也是我设计的多功能播放器最重要的功能,要求能够读取事先存储在SD卡中的文本文 ...

  7. STM32定时器配置(TIM1、TIM2、TIM3、TIM4、TIM5、TIM8)高级定时器+普通定时器,定时计数模式下总结

    STM32定时器配置(TIM1.TIM2.TIM3.TIM4.TIM5.TIM8)高级定时器+普通定时器,定时计数模式下总结 文章结构: --> 一.定时器基本介绍 --> 二.普通定时器 ...

  8. STM32定时器实现5秒周期串口通信,2秒LED灯闪烁

    文章目录 前言 一.定时器Timer 1.定时器定义 2.定时器分类 3.计数器模式 4.时钟产生器和时基单元 5.工作原理 二.实验步骤 1.用STM32CubeMx创建项目 1.1 创建项目 1. ...

  9. STM32定时器-基本定时器

    STM32定时器-基本定时器 实验芯片:STM32F103 更新日期:2021年8月17日 声明:部分图文来自互联网公开资料,转载注明出处 一.基本定时器简介 TIM6和TIM7是一个16位向上递增的 ...

最新文章

  1. 自己建服务器 语音盒子_如何自己搭建一个服务器?
  2. c++邮递员投递经过特定点_厉害了斑马鱼,动物实验体天团C位
  3. 网络爬虫--13.数据提取之JSON与JsonPATH
  4. Slog29_支配vue框架初阶项目之博客网站-注册页面-单选按钮
  5. pytorch学习笔记(二十七):Batch-Norm
  6. 架构师到底是啥玩意?
  7. CentOS _ RHEL 防止Kernel升级
  8. python---之打印日志logging
  9. 台大李宏毅2017机器学习国语课程(更新)
  10. 测试用例设计方法-正交试验常用正交表
  11. ubuntu20 系统 Apache+花生壳(内网穿透)服务项目上线
  12. Android蓝牙自动配对和Pin码设置
  13. 个人征信要良好,申请信用卡需注意哪些事项?
  14. umail for linux,U-Mail邮件系统 for CentOS(6.X) x64
  15. 01-ECAM、发展史、JS值、编程语言、变量
  16. life: zz 关于爱情
  17. java生成二维码,全过程,不要积分
  18. 单个实体内部和三个实体内部之间的关系
  19. 初识对象,对象的创建以及方法的定义规则
  20. 港科百创|北京决赛成功举办!“香港科大-杰瑞集团”2022【人工智能】百万奖金国际创业大赛决赛成功举办!...

热门文章

  1. 阿拉伯语在网页中排版问题解决
  2. 可怜的中国程序员-我所知道的华为
  3. SIMCOM7600CE-T打开ADB口调试
  4. 首发OSU最新代shua系统SAF模板功能已测
  5. 一文实现yolov5实例分割(数据标注、标签转换、模型训练、模型推理)
  6. 万得信息技术Java开发面经
  7. 三层交换机DHCP服务器/DHCP中继互联配置详述
  8. 数据库连接池JNDI
  9. 磁场发生器之永久磁铁Permanent magnet
  10. 首次,第五轮学科评估结果不公开