STM32CubeMX的TIM1互补PWM输出,HAL库(2路,带死区)

芯片为STM32F407ZG,使用的是高级定时器TIM1的PWM互补PWM输出。
效果:

整体的:(通道0~3分别是CH1、CH1N、CH2、CH2N。)在这里插入图片描述
细节:
在这里插入图片描述

CH1和CH1N的死区时间是0.375us(公式算出来应该是公式0.3us左右,跟逻辑分析仪的采样频率有关系)
CH1和CH2、CH1N和CH2N是同步的,以前做H桥的话就需要这种吧(对角同时导通),有相位差的后面再研究。(补充:后面发现这个问题F3系列的芯片比较好实现,用非对称PWM,F4可以用TIM1和TIM8配合实现,原理利用TIM1去触发TIM8)

STM32CubeMX配置:
在这里插入图片描述
main函数

 /* USER CODE BEGIN 2 */
	/****普通定时器***/
	HAL_TIM_PWM_Start(&htim2,TIM_CHANNEL_1);
	/****高级定时器互补输出***/
	HAL_TIM_PWM_Start(&htim1,TIM_CHANNEL_1);
	HAL_TIM_PWM_Start(&htim1,TIM_CHANNEL_2);
	HAL_TIMEx_PWMN_Start(&htim1,TIM_CHANNEL_1);
	HAL_TIMEx_PWMN_Start(&htim1,TIM_CHANNEL_2);
	/****寄存器方法修改比较寄存器的值,ARR的值cube配置为1000***/
	TIM1->CCR1=249;
	TIM1->CCR2=249;
  /* USER CODE END 2 */

说明:
代码中普通定时器只是为了测试!
高级定时器与普通定时器用法有微笑区别,网上查资料总是误导

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值