现在有STM32用户要实现下面的需求。
上面时序图中的1号波形来自某视频处理相关器件,现在要根据1号时序产生2号时序波形。2号波形相比1号波形有90°的相移,二者频率一样。如何利用STM32TIMER实现2号输出波形呢?
我们这里可以考虑使用TIMER的单脉冲模式来实现【当然完全可能有其它方式,此处不表】。下面我使用STM32L476Nucleo板【用哪个系列STM32开发板不重要,都能实现】来演示一下实现过程,重点在配置。
我用TIM3的CH1输出PMW脉冲模拟上图中1号波形,然后将其与TIM4的CH1相连,作为TIM4的触发信号,触发极性为上升沿。TIM4配置在触发从模式,基于内部时钟进行计数并工作在PWM单脉冲模式,使TIM4-CH2输出的信号成为我们期望的2号波形。这个地方涉及的工作原理及细节颇多,如PWM输出单脉冲模式、PWM1与PWM2的区别、重装的特性等,这里我就不一一解释、介绍了,真要啰嗦起来也会长篇大论。这么热的天,即使我有耐心写,你们未必有耐心看。我在下面把重点配置都清晰地释放出来,真正关注的人结合这里的配置及实现结果,反过来消化原理或许更好。
TIM3、TIM4基于主从模式连接,TIM3的CH1输出上沿启动TIM4的工作。TIM4的CH2输出是我们期望的输出信号。
基于STM32L476Nucleo板的硬件连接关系图:
上图中PA6与PB6相连,PB7为TIM4-CH2的输出脚。
下面分别是有关TIM3TIM4的参数配置:
上面就是全部TIMER配置,用户代码就超级简单了。
HAL_TIM_PWM_Start(&htim4,TIM_CHANNEL_2); //output signal
HAL_TIM_PWM_Start(&htim3,TIM_CHANNEL_1); //Act as trigger signal
最后,我们就可以验证实际结果了。下图中,红色波形为来自TIM3的触发信号,对应开篇时序图中的1号时序图。下图中的黑色波形为基于触发信号的移相输出,对应开篇时序图中的2号线。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
相关推荐
1 单脉冲输出 定时器单脉冲输出是比较输出应用中的一种模式,所谓的
发表于 12-01 18:51
•2302次阅读
在RM0016文档177页,以下是不是多余: Map IC2 on TI2 by writing CC2S = 01 in the TIM1_CCMR2 register。这是输入捕获功能(对于单脉冲模式不需要捕获输入信号TI2),如果不是多余这个设置有什么用?
发表于 03-14 07:59
`能不能讲下下面的PWM生成(边缘或中间对齐模式)和单脉冲模式输出这两个是不是是定时器的其中两种功能?我不是很懂,希望有人可以讲下,谢谢了.`
发表于 03-30 16:09
我试图在STM32L1系列上使用COMP2的输出触发定时器的单脉冲模式(在我的示例中为TIM4,但如果它需要更改为另一个定时器则非常灵活)。在参考手册中,单脉冲模式的说明使用TI2FP2作为定时器
发表于 10-23 13:43
请问如何配置TIM为单脉冲模式,TI输入怎样设置?有没有指定是那个引脚,还是可以自己设置的?
发表于 03-05 05:56
STM32的定时器可以配置为单脉冲模式,所谓的单脉冲就是通过配置定时器使其在一个可控延时后,产生一个脉宽可控的脉冲。使用STM32CubeMX工具配置起来非常方便。硬件环境
发表于 12-08 06:05
先看看官方资料对单脉冲模式的介绍下面看C代码的实现void PWM_GPIO_Init( void ){ PC_DDR_DDR6 = 1; //输出管脚PC6TIM1_CH1 PC_CR1_C16 = 1;//推挽输出 PC_.
发表于 01-13 07:08
我希望在一定的延迟后生成脉冲。我已经生成了两个相移的非对称 PWM 波形。现在我想在单脉冲模式下触发另一个定时器。我怎样才能做到这一点?我不知道如何设置或触发定时器的单脉冲模式。我是 STM 控制器中定时器编程的新手。
发表于 12-26 07:23
大家好,我阅读了论坛上的许多帖子,但找不到这个问题的答案:除了通过外部刺激之外,还有什么方法可以在一种脉冲模式下启动定时器吗?也就是说,只能通过软件?怎么做到的?我正在寻找一种控制三相全波整流器
发表于 02-08 08:19
本章教程主要进行单脉冲输出演示:在单脉冲模式下,TIM2_CH2(PA1)引脚检测到一个上升沿,则在TIM2_CH1(PA0) 输出正脉冲。
发表于 04-27 16:53
在RM0016文档177页,以下是不是多余: Map IC2 on TI2 by writing CC2S = 01 in the TIM1_CCMR2 register。这是输入捕获功能(对于单脉冲模式不需要捕获输入信号TI2),如果不是多余这个设置有什么用?
发表于 08-08 08:11
介绍了一种具有单脉冲和双脉冲模式,并具有缺相保护功能和三相全数字移相触发电路的设计方案,该
发表于 04-23 17:18
•62次下载
单脉冲输出模式是定时器比较输出应用中的一种特殊情况或者特殊应用,是一种特殊的PWM输出模式。既然
发表于 02-14 15:54
•1.6w次阅读
STM32的定时器可以配置为单脉冲模式,所谓的单脉冲就是通过配置定时器使其在一个可控延时后,产生一个脉宽可控的脉冲。使用STM32CubeMX工具配置起来非常方便。硬件环境
发表于 11-25 11:06
•64次下载
STM32定时器单脉冲输出模式
发表于 12-08 20:51
•48次下载
评论