STM32F407 基本定时器配置输出PWM方波

news/2025/1/11 19:46:53/

介绍STM32F407定时器PWM波形输出配置方式。 通过逻辑分析采集波形数据进行可视化显示对比。

【1】定时器PWM功能介绍

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

img

img

img

【2】PWM波形输出通道介绍

img

img

img

定时器3的硬件PWM通道:PA6 PA7 PB0 PB1

下面截图是介绍定时器3通道的复用IO口模式配置方式

img

img

【3】配置PWM波形输出代码示例

在工程中增加pwm.c文件,写入以下代码

#include "pwm.h"
/*
函数功能:定时器3-PWM波形输出配置硬件PWM通道:PA6 PA7 PB0 PB1
功能说明:配置定时器3的通道1输出PWM波形
*/
void Timer3_PWM_Init(u16 psc,u16 arr)
{/*1. 开时钟*/RCC->APB1ENR|=1<<1;    //开启定时器3的时钟RCC->APB1RSTR|=1<<1;   //开启复位时钟  RCC->APB1RSTR&=~(1<<1);//关闭  /*2. 配置定时器的核心寄存器*/TIM3->PSC=psc-1;     //预分频/*计数器的时钟频率CK_CNT等于fCK_PSC/(PSC[15:0]+1)*/TIM3->ARR=arr;       //重装载寄存器/*3.  配置PWM波形相关寄存器*/TIM3->CCMR1&=~(0x3<<0);TIM3->CCMR1|=0x0<<0;  //CC1通道被配置为输出TIM3->CCMR1&=~(0x7<<4);//TIM3->CCMR1|=0x6<<4; //模式1TIM3->CCMR1|=0x7<<4;   //模式2TIM3->CCER|=1<<0;      //OC1信号输出到对应的输出引脚TIM3->CCR1=arr/2;      //占空比 50%/*4. 配置PWM波形输出的GPIO口*/RCC->AHB1ENR|=1<<0;			   //使能PORTA时钟GPIOA->MODER&=~(0x3<<6*2); //清除模式GPIOA->MODER|=0x2<<6*2;    //配置复用功能模式GPIOA->OTYPER&=~(0x1<<6);  //0表示推挽输出GPIOA->OSPEEDR&=~(0x3<<6*2); //清除之前配置GPIOA->OSPEEDR|=0x2<<6*2;    //50MHZ输出速度GPIOA->AFR[0]&=~(0xF<<4*6); //清除PA6配置GPIOA->AFR[0]|=0x2<<4*6;    //配置PA6复用功能模式为定时器3的通道1/*5. 开启定时器*/TIM3->CR1|=1<<0;
}

Main.c文件代码示例

#include "stm32f4xx.h" // Device header
#include "led.h"
#include "delay.h"
#include "key.h"
#include "usart.h"
#include "sys.h"
#include "exti.h"
#include "timer.h"
#include "pwm.h"int main(void)
{LED_Init();KEY_Init();USART1_Init(84,115200);KEY_EXTI_Init();Timer3_PWM_Init(84,1000);TIM3->CCR1=500;while(1){}
}

img


http://www.ppmy.cn/news/689328.html

相关文章

dpc++(oneAPI)调用nvidiaGPU配置与验证

前提 1.安装Intel oneAPI Toolkits https://software.intel.com/content/www/us/en/develop/documentation/installation-guide-for-intel-oneapi-toolkits-linux/top.html 下载安装Base版&#xff0c;注意版本&#xff0c;尽量安装新版本 2.安装GPU驱动与CUDA https://devel…

3. Linux组件之内存池的实现

文章目录 一、为什么需要内存池二、内存池的工作流程三、内存池的实现3.1 数据结构3.2 接口设计3.2.1 创建内存池3.2.2 内存池销毁3.2.3 内存分配1. 分配小块内存2. 分配大块内存 3.2.4 内存池的释放3.2.5 内存池重置 3.3 完整代码 一、为什么需要内存池 应用程序使用内存&…

天锋w2019_三星W2019亲兄弟来袭!天锋W2019雷同的外观,更高端的性能

相信大家对山寨机的印象就是阉割版的原版机&#xff0c;然而山寨机的性能与质量有时候比原版机更强。在生活山寨机的覆盖人群相对广泛&#xff0c;有些学生为了攀比之心就会入手&#xff1b;有些是为了商业用途而入手相似外观的手机。当然&#xff0c;山寨机并不是在原版机上做…

天锋w2019_购买天锋W2019体验记,才知道没购买万元三星W2019是对的

原标题&#xff1a;购买天锋W2019体验记&#xff0c;才知道没购买万元三星W2019是对的 手机已经成为现代人不可或缺的重要设备&#xff0c;当然每个人对手机的定位都不同&#xff0c;有热衷于游戏拍照功能的&#xff0c;当然也有商务人士比较注重手机的外观颜值是否气派奢华等&…

天锋w2019_国产手机新选择:天锋W2019横空出世,体验感完全不输三星W2019

原标题&#xff1a;国产手机新选择&#xff1a;天锋W2019横空出世&#xff0c;体验感完全不输三星W2019 随着手机行业的快速发展&#xff0c;现在基本每个人都有一部自己的手机。相信很多人都和小编一样&#xff0c;觉得现在的手机都显得千篇一律&#xff0c;没有办法展示出自己…

天锋w2019_不知道为什么那么多人喜欢三星W2019,直到入手这款天锋W2019手机

原标题&#xff1a;不知道为什么那么多人喜欢三星W2019&#xff0c;直到入手这款天锋W2019手机 一直以来&#xff0c;三星的多款手机都被定义为成功人士的标配&#xff0c;起初在并未接触三星W2019手机之前&#xff0c;已早有耳闻其旗舰售价配旗舰配置&#xff0c;搭载高通骁龙…

心系天下三星W2019 更懂精英,更懂生活

春节临&#xff0c;万物归&#xff0c;华夏大陆又迎来了年底的压轴节目——“春节”。对于所有在外奔波的游子来说&#xff0c;这是一年中难得的团圆日。而对于大多数人来说&#xff0c;回家过年&#xff0c;总避免不了各种聚会&#xff0c;同学相见、老友叙旧、亲戚走动&#…

淬匠心技艺,谱折叠华章:心系天下三星W22 5G发布

10月13日&#xff0c;中国电信携手三星电子在杭州举办心系天下三星W22 5G发布会。当晚&#xff0c;一场美轮美奂的灯光秀&#xff0c;照亮了这座未来科技之城&#xff0c;也让超高端折叠屏手机心系天下三星W22 5G的登场&#xff0c;如踏星河而至&#xff0c;璀璨绮丽。万众瞩目…