你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

2.STM32电机培训之基于ST电机软件包6步换向算法程序评测

[复制链接]
巅峰残狼 发布时间:2017-8-26 14:53
本帖最后由 巅峰残狼 于 2017-8-26 15:00 编辑

目的:学习ST的电机6步换向算法控制方法

学前准备:
软件:ST电机软件包en.X-CUBE-SPN7(X-CUBE-SPN7
硬件:P-NUCLEO-IHM002套件(含控制板+电机驱动板+电源适配器)

一、下载ST电机软件包en.X-CUBE-SPN7
二、解压后,按照路径C:\Users\111\Desktop\ST社区电机资料下载\硬件\en.X-CUBE-SPN7\STM32CubeExpansion_SPN7_V1.1.0\Projects\Multi\Examples\MotorControl\MDK-ARM\STM32F302R8-Nucleo,这个路径下的工程就是基于STM32F302R8的6步换向算法的工程文件,打开工程结构如下:
FM}JKOZH3DV}[Q7T$AO%H0F.png
三、打开User下拉文件,即可看到此工程的main函数,我们即将在main函数中实现我们电机的简单控制
四、先定义一个全局变量num,用来记录按键的次数,在main函数的用户代码区,写入如下代码:
                switch(num)
                {
                        case 0:
                                MC_StopMotor();//电机停止
                        break;
                        case 1:
                                MC_StartMotor();//电机启动
                        break;
                        case 2:
                                MC_Set_Speed(3000);//设置电机速度值为3000转每分钟
                        break;
                        case 3:
                                MC_Set_Speed(6000);//设置电机速度值为6000转每分钟
                        break;
                        case 4:
                                MC_Set_Speed(9000);//设置电机速度值为9000转每分钟
                        break;
                        default:break;
                }        

在外部中断函数EXTI15_10_IRQHandler(void)中按照如下编辑

void EXTI15_10_IRQHandler(void)
{
  /* USER CODE BEGIN EXTI15_10_IRQn 0 */
        
  /* USER CODE END EXTI15_10_IRQn 0 */
  HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_13);//清除中断标志位
  /* USER CODE BEGIN EXTI15_10_IRQn 1 */
        num++;//每次中断加一,即没按下一次用户按键加一
        if(num > 5)//当累加次数为5次时,记录值清零
        {
                num=0;
        }
        
  /* USER CODE END EXTI15_10_IRQn 1 */
}

五、上述程序编译后,下载到我们的控制板,给电机驱动板上电,电机连接好后,即可实验我们所要的功能,即
第一次按下:启动电机
第二次按下:电机速度设置为3000转/分钟
第三次按下:电机速度设置为6000转/分钟
第四次按下:电机速度设置为9000转/分钟
第五次按下:电机停止六、电机控制库,提供了关于电机的大部分控制函数,方便用户调用,即使对电机不甚熟悉,像我这种小白,也是很快就可以实现电机的转动控制,是不是相当方便?




STM32F302R8-Nucleo.rar

下载

6.29 MB, 下载次数: 836

收藏 1 评论15 发布时间:2017-8-26 14:53

举报

15个回答
anny 回答时间:2017-8-26 16:09:23
多谢分享!
青春的痕迹1 回答时间:2018-2-3 18:58:05
!!!!!!!!!!!!!!!!
szduan 回答时间:2018-2-5 15:47:32
谢谢分享
奋斗与坚持 回答时间:2018-6-5 10:39:43
请问   HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_13);//清除中断标志位  这个函数是在哪里定义的呢?
heyv11 回答时间:2018-6-7 22:04:42
谢谢分享
690805492 回答时间:2018-8-28 16:23:09
谢谢楼主分享。谢谢
zhouhao11 回答时间:2018-9-5 17:06:09
谢谢
GXGD-FYC 回答时间:2018-11-26 15:17:54
mark
zccdyfw 回答时间:2018-12-14 17:00:31
12下一页

所属标签

STM32团队

意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器


最新内容

相似技术帖

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版