用stm32输出pwm波使无刷电机转起来

本文介绍了如何使用STM32通过修改野火教程的PWM程序,仅用TIM4的一个通道来控制无刷电机的转速。通过调整PWM波的占空比,实现了电机转速的变化。在实际操作中,发现需要添加延时函数以确保电调的正确初始化。
摘要由CSDN通过智能技术生成

现阶段使用stm32,基本处于模仿阶段,用野火的教程以及程序,修改一些IO口,然后烧到自己的开发板上,实现一些功能。

第二个实验室了解pwm波这个东西,脉宽调制,调节占空比可以改变电机转速,原理可以看刘洋老师的基础视频,讲的很详细。

修改野火的pwm程序,野火用了四个通道,我只用了TIM4的第一通道,程序如下:

#include "pwm_output.h"
void pwm_value(void)
{
TIM4->CCR1=1300;
}
/*
 * 函数名:TIM3_GPIO_Config
 * 描述  :配置TIM3复用输出PWM时用到的I/O
 * 输入  :无
 * 输出  :无
 * 调用  :内部调用
 */
static void TIM4_GPIO_Config(void) 
{
  GPIO_InitTypeDef GPIO_InitStructure;

	/* TIM4 clock enable */
	//PCLK1经过2倍频后作为TIM3的时钟源等于72MHz
  RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4, ENABLE); 
  /*GPIOB clock enable */
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE); 
  GPIO_InitStructure.GPIO_Pin =  GPIO_Pin_6;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;		    // 复用推挽输出
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz; 

  GPIO_Init(GPIOB, &GPIO_
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值