查了很多文章,讲的都不是特别懂,自己接线也是一知半解,现在通过查找资料,自己初步完成了一些内容,分享给大家。
所用元器件和基础准备
使用的是stm32f103c8t6,TB6600驱动器,57步进电机,24v开关电源,电源线、杜邦线若干。
以江科大stm32教程6-4 PWM驱动舵机,进行更改。
预期实验现象
按下按键1,步进电机可以左转;按下按键2,步进电机可以右转,按下案件3,步进电机会停止。整个状态通过OLED显示。
接线及引脚
上方为细分,下方为电流,57电机电流为3A
TB6600使用共阴极接法,与开关电源接单片机共地端。
A1作为pwm脉冲输出,连接PUL引脚。
A2接RID引脚,控制步进电机旋转方向。
A3接ENA引脚,使能步进电机,可以不接,但是为了暂停步进电机,所以我接了。
B11、B12、B13分别接按键1、2、3。
步进电机57,4线为红黄蓝绿,红接A+,绿接A-,黄接B+,蓝接B-。
OLED不再赘述
程序
我在学习的过程中很多模块做了很多标注,相信大家也都能看懂,我就讲一下我在主函数中,遇到的一些问题,我是一名初学者,思维还没有转变过来,写的屎山代码大家不要在意,可以自己进行继续完善。
按键配置,我选择LED源文件,进行配置,GPIO_Mode_Out_PP想输出1就输出1,想输出0就输出0,操作起来比较方便。下面定义几个函数,实现左移,右移,使能置位和失能。
至于主程序比较简单不做介绍,想要更改步进电机转速的地方有标注
实验现象
实验现象
程序源码,百度云资源
链接: https://pan.baidu.com/s/1BLRYFwxMMJ59hpJ79mfIMQ 提取码: 3232