零基础使用STM32CubeMX配置PWM输出控制步进电机
创作时间:
作者:
@小白创作中心
零基础使用STM32CubeMX配置PWM输出控制步进电机
引用
CSDN
1.
https://blog.csdn.net/weixin_54221349/article/details/137514758
本文将详细介绍如何使用STM32CubeMX配置PWM输出以控制步进电机。从软件配置到硬件连接,再到代码实现,提供完整的步骤和具体参数设置,适合零基础的读者学习。
软件配置步骤
- 打开STM32CubeMX并选择自己的芯片版本
- 系统时钟RCC选择外部晶振Crystal/Ceramic Resonator
- 配置时钟
- 配置定时器为PWM输出模式,根据上一步配置的时钟频率72MHz设置预分频系数为18-1,设置计数周期为500-1。根据公式:PWM输出频率 = 定时器时钟频率 ÷ ((预分频系数+1) × (计数周期 + 1))计算得到,PWM输出频率为8kHz。
- 设置PWM输出引脚,此处使用默认的PA15引脚
- 电机转动方向引脚配置,此处配置为PF8,配置输出电平为高high,开漏输出Output Open Drain,上拉Pull-up(很重要!!!!!!)。
- 项目生成配置,注意保存路径不要有中文
- 设置只拷贝使用到的库,分离.c和.h文件,然后生成代码完成CubeMX的配置。
代码实现
打开main函数配置如下代码,实现三秒正转,三秒反转
/* Initialize all configured peripherals */
MX_GPIO_Init();
MX_TIM2_Init();
/* USER CODE BEGIN 2 */
__HAL_TIM_SetCompare(&htim2, TIM_CHANNEL_1, 50); //修改占空比=50/计数周期(499)+1
HAL_TIM_PWM_Start(&htim2,TIM_CHANNEL_1); //使能TIM2的PWM CHANNEL_1输出
/* USER CODE END 2 */
/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{
/* USER CODE END WHILE */
/* USER CODE BEGIN 3 */
HAL_GPIO_WritePin(GPIOF, GPIO_PIN_8, 1); //电机正转
HAL_Delay(3000);
HAL_GPIO_WritePin(GPIOF, GPIO_PIN_8, 0); //电机反转
HAL_Delay(3000);
}
/* USER CODE END 3 */
硬件连接注意事项
实验发现直接使用PF8引脚输出3.3V信号无法控制电机正反转(因为控制器需要5V信号驱动电机),采用外部上拉实现5V输出,此时需配置引脚为开漏输出且查看datasheet芯片手册tIO口号是否带有FT标识。必须带有FT标识才能通过开漏输出加外部上拉输出5V电平。外部上拉原理如下图所示。
实物连接图及运行视频
stm32控制步进电机转动
热门推荐
玉米的管理方法,生长过程中需科学施肥
4P营销策略:经典理论在现代营销中的应用与创新
可转债交易的风险控制方法 | 做好风险管理,稳健可转债投资
鲜活水产品配送方式(活海鲜运输和保存方法)
智能设备电池寿命延长指南:充电技巧与温度控制诀窍
大便一天3次和三天1次,哪个更危险?几天排便一次才健康?
房屋朝向的判断与风水影响分析
临汾美食排行榜前十名
考研数学怎么做题比较有效
LED灯具在中国市场的CCC认证流程和要求是什么?
华西预约挂号流程(华西预约挂号流程及费用)
鸡胸肉:营养与美味的完美平衡
鸡胸肉在健身饮食中的应用与选择
资本成本是什么
合同户主名变更的法律实务与操作指南
养生小指南:开启健康生活的正确方式
汽车DPF的含义及其处理方法是什么?
如何提升租房销售的效果?这些销售策略有哪些具体的应用场景?
庄子的文章有哪些?探秘庄子:那些令人沉思的经典文章!
电动汽车电池更换费用过高的原因分析
高级技工学校学历层次如何划分
鼻炎感冒鼻塞怎么破?试试中医鼻塞速通法
各地马拉松陆续开跑!如何提高极限、如何补充体能,你知道吗?
肢体语言在合唱表演艺术中的深度训练与融合
《云顶之弈》攻略:提升游戏水平与胜率的关键技巧分享
哪些职业影响女性怀孕生育
大棚西红柿栽培及管理技术
心自由教育指导效果显著,引导孩子进行日常反思,促进个人成长
如何维持情侣之间的关系
75%酒精湿巾可以擦车内饰吗?宝马740车型详解