DEV Community

kisorge
kisorge

Posted on

【电机控制器】FM33LF015芯片——PWM输出

【电机控制器】FM33LF015芯片——PWM输出


@TOC

前言

使用工具:
1.ARM仿真器/J-OBV2仿真器


提示:以下是本篇文章正文内容,下面案例可供参考

一、接线

VCC——3.3
GND——GND
SWDIO——SWDIO
SWCLK——SWCLK

二、32 位低功耗定时器(LPTIM32)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、代码

 #include "mf_config.h" /** * @brief LPTIM32_TimerBase Initialization function * @param void * @retval None */ /* 占空比:CRR/ARR=1-500/1000=50% */ /* PWM周期:ARR*PSC/PCLK=1000*8/8M=0.001s=1ms */ void MF_LPTIM32_TimerBase_Init(void) { FL_LPTIM32_InitTypeDef TimerBase_InitStruct; TimerBase_InitStruct.clockSource = FL_CMU_LPTIM32_CLK_SOURCE_APBCLK; TimerBase_InitStruct.prescalerClockSource = FL_LPTIM32_CLK_SOURCE_INTERNAL; /* PSC=8 */ TimerBase_InitStruct.prescaler = FL_LPTIM32_PSC_DIV8;//FL_LPTIM32_PSC_DIV8 TimerBase_InitStruct.autoReload = 999; TimerBase_InitStruct.mode = FL_LPTIM32_OPERATION_MODE_NORMAL; TimerBase_InitStruct.onePulseMode = FL_LPTIM32_ONE_PULSE_MODE_CONTINUOUS; TimerBase_InitStruct.triggerEdge = FL_LPTIM32_ETR_TRIGGER_EDGE_RISING; TimerBase_InitStruct.countEdge = FL_LPTIM32_ETR_COUNT_EDGE_RISING; FL_LPTIM32_Init(LPTIM32, &TimerBase_InitStruct); } /** * @brief LPTIM32_Channel1 Initialization function * @param void * @retval None */ void MF_LPTIM32_Channel1_Init(void) { FL_GPIO_InitTypeDef GPIO_InitStruct; FL_LPTIM32_OC_InitTypeDef LPTIM32_InitStruct; GPIO_InitStruct.pin = FL_GPIO_PIN_8; GPIO_InitStruct.mode = FL_GPIO_MODE_DIGITAL; GPIO_InitStruct.outputType = FL_GPIO_OUTPUT_PUSHPULL; GPIO_InitStruct.pull = FL_DISABLE; GPIO_InitStruct.remapPin = FL_ENABLE; GPIO_InitStruct.analogSwitch = FL_DISABLE; FL_GPIO_Init(GPIOA, &GPIO_InitStruct); LPTIM32_InitStruct.compareValue = 799;//499 LPTIM32_InitStruct.OCPolarity = FL_LPTIM32_OC_POLARITY_NORMAL; FL_LPTIM32_OC_Init(LPTIM32, FL_LPTIM32_CHANNEL_1, &LPTIM32_InitStruct); } void LPTIM32_Setup(void) { FL_LPTIM32_Enable(LPTIM32); } void LPTIM32_Loop(void) { } 
Enter fullscreen mode Exit fullscreen mode

四、PWM周期、占空比理论计算

/* 占空比:1-CRR/ARR=1-500/1000=50% /
/
PWM周期:ARR*PSC/PCLK=1000*8/8M=0.001s=1ms */
Enter fullscreen mode Exit fullscreen mode




五、实验

1ms20%

在这里插入图片描述
在这里插入图片描述

1ms50%

在这里插入图片描述

2ms 50%

在这里插入图片描述

六、参考资料

PWM原理 PWM频率与占空比详解
STM32 PWM占空比和信号周期的控制因素分析

总结

本文仅仅简单介绍了【电机控制器】FM33LF015芯片——PWM输出,评论区欢迎讨论。

Top comments (0)