一文掌握STM32CubeMX配置PWM控制步进电机
创作时间:
2025-01-22 08:32:26
作者:
@小白创作中心
一文掌握STM32CubeMX配置PWM控制步进电机
STM32CubeMX是ST公司推出的一款图形化配置工具,可以帮助开发者快速配置STM32微控制器的外设和时钟。本文将详细介绍如何使用STM32CubeMX配置PWM输出以控制步进电机,包括系统时钟配置、定时器配置、引脚配置等具体操作,并提供完整的代码示例。
CubeMX配置步骤
打开CubeMX并选择自己的芯片版本
系统时钟(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控制步进电机转动
热门推荐
自贡恐龙博物馆:揭秘侏罗纪的秘密
自贡盐矿:千年盐都的地下宝藏
自贡麻辣烫:一座城市的麻辣传奇
A股震荡,企业如何稳住阵脚?
A股暴跌考验下,中国经济韧性凸显
淄博冬季打卡圣地:潭溪山&颜神古镇
淄博冬游必打卡:潭溪山冰瀑、颜神古镇、天鹅湖慢城
淄博冬季旅游热推:潭溪山、颜神古镇、天鹅湖国际慢城
冬游淄博全攻略:冰雪、温泉、花灯、美食和民俗,总有一款打动你!
不好好吃饭 胃癌就有可能找上你
隧道行车全指南:新手司机必知的驾驶技巧
南京隧道事故敲警钟,这份安全驾驶指南请收好
口腔修复技术详解:从瓷贴面到种植牙,各类缺牙方案全解析
冬季出游首选:哈尔滨直飞上海全攻略
陈山聪新剧《廉政行动2024》引爆热议,反贪主题赢得观众好评
个人所得税预扣率表,你真的会用吗?
除夕夜给闺蜜的暖心祝福
化疗后如何吃?中医视角下的肺癌饮食策略
侯之镜头下的上海:街头艺术与城市公共性的探索
TrollStore使用教程:iOS 14-17系统安装第三方应用详解
《我是霸王龙》创意教学:让孩子秒变“小暖男”
离婚案件撤诉后再次起诉,法律这样规定时间限制
研究称适量饮用葡萄酒可降低心脏病风险,但癌症风险需警惕
一个人在家如何放松?10个实用方法助你缓解压力
闫妮“微醺”惹热议:心理学揭示犯错反而更迷人
巴黎刀削面传奇:小李和孙胜林的美食创业之路
山西刀削面:从和面到浇头,最正宗的家常做法详解
高筋面粉教你做正宗刀削面
大同刀削面:寒冬里的暖心美味
傣味烧烤与竹筒饭:西双版纳的热带雨林美食名片