零基础使用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控制步进电机转动
热门推荐
餐后1小时、2小时、3小时的血糖值是多少
CrossFit运动员马特·弗雷泽分享超强全身锻炼秘籍
如何订立一份合法有效的遗嘱
常用降脂药的作用机制与配伍方案
智慧赋能、业态升级,上海徐汇打造示范性智慧菜市场
酸奶鸡蛋能一起吃吗
如何理解经济危机的影响?这些影响在宏观经济中有什么表现?
政府债务扩张与经济发展:应对危机与突发困难
日本古代女性地位探析:历史背景下的性别角色
保障通信安全的端到端加密技术
中山大学李淼新团队发表基于三代测序的结构变异(SV)检测流程综合评估结果
汽车刹车油多久换一次才是最合适的,别再被“固定里程”忽悠了!
民事执行案件国家赔偿的条件、程序是什么?
交通事故单方申请责任认定教程
安徽省巢湖市历史沿革及行政区划
陕西省十大旅游景点
哪些人需要做胃癌早期筛查?| 全国肿瘤防治宣传周
掌握这些技巧,Windows电脑上同时登录两个微信轻而易举!
新手必看!如何选择最适合你的鱼缸水草?
前景水草哪个最好养?适合初学者的水草推荐及养护技巧
学生如何培养阅读习惯
栾川抱犊寨景区介绍:人文景观与自然景观完美结合的综合性风景区
求职简历教育背景怎么写?10个实用范文示例
陕西师范大学是双一流大学吗?
中国最后的母系社会,只恋爱不结婚:23年前的纪录片,现在看仍然很震撼?
使用鲫鱼酒米野钓鲫鱼的5个要领
怎么准确理解和计算存货减值准备?这种计算方法对企业财务有什么作用?
2025年四川中级经济师报名指南:时间、条件与流程全解析
现金流ETF的优劣势,一文讲明白
早教室内灯光设计关注这些