STM32 CubeMX PWM三种模式(HAL库)

STM32 CubeMX PWM两种模式(HAL库)


STM32 CubeMX



一、互补对称输出

STM32 CubeMX设置

开启互补,设置周期500us(频率2Khz);(1/周期=频率)

代码部分

c 复制代码
  HAL_TIM_PWM_Start(&htim1,TIM_CHANNEL_1);						//启动 PWM 通道1信号输出		
  HAL_TIM_PWM_Start(&htim1,TIM_CHANNEL_2);						//启动 PWM 通道2信号输出		


  HAL_TIMEx_PWMN_Start(&htim1, TIM_CHANNEL_1);				//启动 PWM 通道1 互补信号输出
  HAL_TIMEx_PWMN_Start(&htim1, TIM_CHANNEL_2);				//启动 PWM 通道2 互补信号输出
 
  __HAL_TIM_SET_COMPARE(&htim1,TIM_CHANNEL_1,100);		//设置 PWM 通道1 占空比
// __HAL_TIM_SET_COMPARE(&htim1,TIM_CHANNEL_2,100);		//设置 PWM 通道2 无效

实验现象:100/500=0.8;所以输出2Khz80%的占空比互补对称波形

二、带死区互补模式

STM32 CubeMX设置

设置死区时间1us

代码

c 复制代码
 
HAL_TIM_PWM_Start(&htim1,TIM_CHANNEL_1);						//启动 PWM 通道1信号输出		
  HAL_TIM_PWM_Start(&htim1,TIM_CHANNEL_2);						//启动 PWM 通道2信号输出		


  HAL_TIMEx_PWMN_Start(&htim1, TIM_CHANNEL_1);				//启动 PWM 通道1 互补信号输出
  HAL_TIMEx_PWMN_Start(&htim1, TIM_CHANNEL_2);				//启动 PWM 通道2 互补信号输出
 
  __HAL_TIM_SET_COMPARE(&htim1,TIM_CHANNEL_1,50);		//设置 PWM 通道1 占空比

三、普通模式

STM32 CubeMX设置

代码部分

c 复制代码
   HAL_TIM_PWM_Start(&htim1,TIM_CHANNEL_1);						//启动 PWM 通道1信号输出		

 
  __HAL_TIM_SET_COMPARE(&htim1,TIM_CHANNEL_1,100);		//设置 PWM 通道1 占空比

总结

以上就是今天要讲的内容,本文仅仅简单介绍了PWM的使用,而PWM提供了大量能使我们快速便捷地处理数据的函数和方法。

相关推荐
修船大队长37 分钟前
配置接受报文每个报文对应一个mailbox配置流程记录
网络·单片机·mcu
搁浅小泽2 小时前
二极管选型技术规范
单片机·嵌入式硬件·汽车
搁浅小泽3 小时前
电感选型技术规范
单片机·嵌入式硬件·汽车
..Dauntless..3 小时前
【stm32】串口——在MCU内部的工作过程
stm32·单片机·嵌入式硬件
lzqrzpt4 小时前
临沂LED驱动电源工程选型标准与工艺对比解析
python·单片机·嵌入式硬件·物联网
小黄蚁4 小时前
使用LVGL模拟示波器创建正弦函数波形
单片机·学习
hahaha60164 小时前
黑体轨迹和色温--光源白点
人工智能·嵌入式硬件·算法·计算机视觉
Code_Solitude7 小时前
开发板点灯实验源码
stm32·单片机·嵌入式硬件
Zw-awa17 小时前
编码器读到的到底是什么:从脉冲到速度
stm32
炸膛坦客17 小时前
单片机开发工具篇:(十四)配置输出 .map 文件及其本地路径
c语言·单片机·嵌入式硬件