又开始玩PWM, 先试了一下PWM的两个引脚输出相反极性, 但是分析仪上看到, 两个脚是一样一样的.

写是这么写的:

...

TIM_OCInitStructure.TIM_OCMode=TIM_OCMode_PWM2;
      TIM_OCInitStructure.TIM_OutputState=TIM_OutputState_Enable;
        
      TIM_OCInitStructure.TIM_OCPolarity=TIM_OCPolarity_High;      
      TIM_OC2Init(TIM3,&TIM_OCInitStructure);    //TIM3_CH2        
        
      TIM_OCInitStructure.TIM_OCPolarity=TIM_OCPolarity_Low;   //TIM3_CH1
      TIM_OC1Init(TIM3,&TIM_OCInitStructure);

...

我以为区别仅仅是输出电平一个高一个地,就可以.

因为我听原子哥说, PWM1模式跟2的区别是, CNT的值是大于CCR还是小于时候起作用.

这里有一个啪啪打脸:

http://www.openedv.com/thread-46264-1-1.html

引用如下:

------------------------------------------

如果是PWM1模式

如果设置TIM_OCPolarity_High     TIMx_CNT<TIMx_CCR输出为高电平   TIMx_CNT>TIMx_CCR输出为低电平

                                  

如果设置TIM_OCPolarity_Low      TIMx_CNT<TIMx_CCR输出就为低电平  TIMx_CNT><TIMx_CCR输出就为高电平

如果是PWM2模式

如果设置TIM_OCPolarity_High     TIMx_CNT>TIMx_CCR输出为低电平   TIMx_CNT>TIMx_CCR输出为高电平

如果设置TIM_OCPolarity_Low      TIMx_CNT>TIMx_CCR输出就为高电平  TIMx_CNT<TIMx_CCR输出就为低电平

解果发现直接用PWM1, 搞定.

还可以参考这个例子:

http://www.cnblogs.com/zyqgold/archive/2013/05/26/3100377.html

发现有些引脚是天生的反向, 牛逼!

STM32的PWM输出极性的问题的更多相关文章

  1. STM32 TIM3 PWM输出 4路

    一.设置TIM3的GPIO为推挽输出 void TIM3_IOConfig(void) { GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClo ...

  2. STM32(7)——通用定时器PWM输出

    1.TIMER输出PWM基本概念         脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种 ...

  3. (五)转载:通用定时器PWM输出

    1.     TIMER输出PWM基本概念 脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有 ...

  4. stm32之PWM

    PWM是pulse width modulation的缩写,即脉冲宽度调制.其通过对一系列脉冲的宽度进行调制,来等效地获得所需要波形: 1.PWM是一种对模拟信号电平进行数字编码的方法.通过高分辨率计 ...

  5. 【转载】 stm32之PWM

    发现这位博主的博客被大量的转发,我也转载一篇,谁叫人家写的好呢. 原文地址:http://blog.sina.com.cn/s/blog_49cb42490100s6uh.html 脉冲宽度调制(PW ...

  6. STM32之PWM波形输出配置总结

    一.   TIMER分类: STM32中一共有11个定时器,其中TIM6.TIM7是基本定时器:TIM2.TIM3.TIM4.TIM5是通用定时器:TIM1和TIM8是高级定时器,以及2个看门狗定时器 ...

  7. STM32 PWM输出(映射)

    STM32 的定时器除了 TIM6 和 7.其他的定时器都可以用来产生 PWM 输出.其中高级定时器 TIM1 和 TIM8 可以同时产生多达 7 路的 PWM 输出.而通用定时器也能同时产生多达 4 ...

  8. stm32 PWM输出学习

    STM32 的定时器除了 TIM6 和 7,其他的定时器都可以用来产生 PWM 输出.其中高级定时器 TIM1 和 TIM8 可以同时产生多达 7 路的 PWM 输出.通用定时器也能同时产生多达 4路 ...

  9. STM32: TIMER门控模式控制PWM输出长度

    搞了两天单脉冲没搞定,无意中发现,这个利用主从模式的门控方式来控制一路PWM的输出长度很有效. //TIM2 PWM输出,由TIM4来控制其输出与停止 //frequency_tim2:TIM2 PW ...

随机推荐

  1. LeetCode Meeting Rooms

    原题链接在这里:https://leetcode.com/problems/meeting-rooms/ Given an array of meeting time intervals consis ...

  2. 移动端省际联动插件mobiscroll

    <link href="assets/css/mobiscroll.custom-2.17.0.min.css" rel="stylesheet" typ ...

  3. C语言:十进制进制转换为其他进制(思想:查表法)

    // //  main.c //  Hex conversion // //  Created by ma c on 15/7/22. //  Copyright (c) 2015年 bjsxt. A ...

  4. linux多个python版本下导致no request报错

    解决办法: sudo apt-get install uwsgi uwsgi-core uwsgi-plugin-python sudo apt-get install uwsgi-plugin-py ...

  5. Inside Flask - flask.__init__.py 和核心组件

    Inside Flask - flask.__init__.py 和核心组件 简单的示例 首先看看一个简单的示例.使用 Flask ,通常是从 flask 模块导入 Flask . request 等 ...

  6. MFC和Direct3D9一起使用

    第一步:新建MFC单文档项目,向导如下: 第二步:添加引用,在项目属性的VC++目录中修改Include和lib文件夹. 第三步:在stdafx.h文件Include部分的最后添加如下引用. #inc ...

  7. python matplotlib 绘图

    饼图 import matplotlib.pyplot as plt # The slices will be ordered and plotted counter-clockwise. label ...

  8. Jquery点击表格单位时选中其中的Radio的三个方法

    HTML: <table> <tr> <td> 1<br> <input type="radio" name="ch ...

  9. 数据库调优过程(二):找到IO不存在问题,而是sqlserver单表写入IO瓶颈

    物理机上测试IO是否为瓶颈: 使用一个死循环insert into测试数据库最大写入速度: use [iTest]; declare @index int; ; begin ; INSERT into ...

  10. application 统计网站访问人数

    参考书<JSP Web 开发案例教程> index.jsp welcome.jsp 显示