zoukankan      html  css  js  c++  java
  • stm32定时器输出移相PWM(非主从模式)

    背景:由于项目需要,需要stm32输出任意相角度的PWM

    前提知识:

                      1、stm32定时器的Tim,一般有多个OC。具体差别根据型号来定。

                      2、定时器的使能,理论上是多个通道同时使能

                     3、TIM_OCInitStructure.TIM_OCMode 的其中一个参数是 TIM_OCMode_Toggle。它的意思是计数达到比较值的时候,输出电平翻转

                     4、由第3点可知,移相占空比固定在了50%

                     5、定时器的计数方式只能为上升计数或者下降计数

                     6、下图为原理图

                          

                 (其实,只用设计每个OC的翻转点,就能转化为相应的移相角)

    关键代码:

        配置通道输出方式:

           

        配置ARR的值为2000,即一个周期计数值为2000:

             

       配置通道1翻转点:

          

       配置通道2翻转点:

        

      配置通道3翻转点:

           

  • 相关阅读:
    清空
    从一个例子看现代C++的威力
    C++11实现一个自动注册的工厂
    REST RPC架构思想
    thinking in object pool
    worksteal thread pool
    check member function
    C# string 常用功能的方法扩展
    C#设计模式总结
    JAVA过滤器和拦截器的区别
  • 原文地址:https://www.cnblogs.com/cjyc/p/10780547.html
Copyright © 2011-2022 走看看