零基础使用STM32CubeMX配置PWM输出控制步进电机
创作时间:
作者:
@小白创作中心
零基础使用STM32CubeMX配置PWM输出控制步进电机
引用
CSDN
1.
https://blog.csdn.net/weixin_54221349/article/details/137514758
本文将详细介绍如何使用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控制步进电机转动
热门推荐
Cell:全癌种微生物组分析:揭示转移性癌症中的微生物多样性与免疫治疗反应
简单动作,深情传递:探索拥抱的力量
《尼尔斯骑鹅旅行记》深度体验与价值解析
浅谈功能医学之食物过敏、敏感与不耐受
聚脲防水材料,解决隧道漏水难题的利器!
绩效考核评语中应该包含哪些内容?
食管裂孔疝是什么意思?症状表现及日常护理方法
CT发现肺磨玻璃结节,怎么办?
葱病虫害防治方法与技术措施(有效防范葱叶枯萎病、蚜虫等危害)
虫害侵扰,如何高效防治与预防?
科举制度的起源与发展
驾驶证实习期是多长时间?
发酵牧草养殖技术:提升鸡肉品质与经济效益的新选择
针灸的原理是什么?其操作方法和适应症有哪些?
如何准确评估黄金的价格与纯度?AU物黄金的保管费用如何影响其价值?
精酿啤酒风味描述指南:从外观到整体印象的全面解析
一探凤梨的成熟奥秘:如何精准判断凤梨熟没熟
冬天来啦,带孩子了解这10个防寒保暖小知识
猴头菇被誉为餐桌上的“养胃之王”,但3类人别随便吃,早做了解
翡翠:自然精华的汇聚、文化脉络的延续与情感承载的象征
AI崛起下的计算机专业:就业前景的机遇与挑战并存
谁在「影响」视频清晰度?我们尝试从编码发展史说起
当你感到身心疲惫时,如何有效缓解疲劳?
小米洗衣机常见故障代码解析与解决方法
科普|夜深人静脑边总有声音回响?可能是某种疾病的征兆
均田令与均田制的演变与影响
一勺白糖怎么变成超大的棉花糖
孕妇发烧对胎儿的影响及应对措施
新春走基层丨苗服岁月笺 年味绵延长
李白诗词《静夜思》的诗意赏析