使用stm32控制驱动步进电机

本文介绍了如何使用STM32单片机控制步进电机,主要涉及TB6600控制器和28型步进电机的连接与配置。通过编写.C和.H文件设置定时器产生PWM波,调整电机转速。在接线方面采用共阴极接法,并提供代码示例说明PWM频率与电机转速的关系。在实际运行中,通过TIM_SetCompare2函数控制电机启停,强调了初始化设置中OC模式和计数模式的一致性对电机控制的重要性。
摘要由CSDN通过智能技术生成


使用stm32控制步进电机


简述:根据使用正点原子教程结合csdn资源改过来的,正点原子精英版,控制器选用的是TB6600,电机随便选用的是28的。

一共包括三个文件,.h  .c   main文件

.h头文件主要是做函数声明一样的东西,.c源文件是主要的配置文件,main文件是主程序,调用已经配置好的资源产生相应的功能。

 


主要是利用.c文件中的定时器产生pwm波,通过控制器来控制步进电机,在很多的博文和资料中,已经说明,电机转速关联于pwm波的频率,具体不详述。


关于控制器与电机和板子之间的接线,采用的是共阴极接法。P+连接于板子上面的pwm波的输出IO口(A7),控制器共阴极后阴极线连接于

板子的GND。其他接线按照控制器说明书来搞

 

代码
主要如下:.c文件(下面的代码中文注释乱码了,不知道为啥,不影响)

#include "pwm.h"
void TIM3_PWM_Init(u16 arr,u16 psc)
{
	GPIO_InitTypeDef GPIO_InitStruct;
	TIM_TimeBaseInitTypeDef TIM_TimeBaseInitStruct;
	TIM_OCInitTypeDef TIM_OCInitStruct;
	
	RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3,ENABLE);//使能
	RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_AFIO,ENABLE);//使能AFIO和A口
	
	GPIO_InitStruct.GPIO_M
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值