Keil编辑和STM32cubemx配置STM32控制步进电机 二维码
363
关联知识使用Keil ARM V5 IDE编程和STM32CUBEMX代码配置实现STM32F103和步进电机驱动器模块A4988控制步进电机 Keil和Stm32cubemx安装安装Keil IDE非常简单。 下载包含Keil IDE的MDK ARM套件,不需要单独安装它的想法。 只需从链接下载文件并安装IDE。 http://www2.keil.com/mdk5。 Arm mdk在许多版本中可用,最新版本是mdk5。 我在项目中使用的是mdk5,本教程也基于mdk5和keil uvision-5 ide。 安装StmCubeMx也很简单。从链接下载StmCube。您可能会弹出来登录。登录后,您就是他们的人。 一旦安装了StmCubeMx,您现在必须为每个stm32系列或您要使用的系列安装软件包。 StmCubeMx和stm32系列软件包是两个不同的东西。 每个stm32系列的软件包都必须单独安装。 在安装系列软件包的StmCubeMx软件中,它们也是一个选项。 在“帮助”>“安装新库”下。 由于我们开始使用stm32f103,因此我们需要安装stm32f1系列的软件包。 下图很好地说明了软件包的安装。 图略 图.为StmCubeMx安装stm32f1驱动程序/软件包 下面给出了板外引脚。 图略 图.STM32F103廉价开发板引脚和提供的功能 闪烁项目上部模块的LED连接到端口c的针脚#13。 在开始时,我们将使其闪烁。 Stm32微控制器引脚在单个引脚上提供多种功能。 选择一个选项并禁用其他选项应谨慎处理。 STM32微控制器的I / O引脚可用于五种模式:
为了我们的目的,我们将使用端口c引脚13作为输出。 几乎所有的stm32引脚都具有内部上拉和下拉电阻。 由于我们没有在输入模式下使用gpio,因此我们没有使用上拉和下拉电阻。 Stm32引脚可以在不同的频率下工作,我们将在低频下操作该引脚。 引导后,Stm32引脚也可以初始化为低电平或高电平。 我使用了引脚13的低电平。 注意:我将使用微控制器的内部8Mhz RC振荡器。上板有一个外部8Mhz晶体,但我不会使用它。 在STM32CubeMx中创建新项目闪烁LED代码上传到STM32微控制器控制步进电机硬件步进电机对于这个项目,我将使用双极步进电机。 电机的名称为NEMA17。它通常在3D打印机中使用,并且在DIY电路制造商中很流行。 它是2相4线步进电机。 它消耗1安培至1.5安培的电流。 电压要求最低为2.4伏。 步距角为1.8度。 完整360度旋转需要(360 / 1.8 = 200)200步。 A4988步进电机驱动器正常运行期间,步进电机会吸收1安培的电流。 因此,我们需要一个可以提供1安培连续电流的电源。 旧技术是使用晶体管或mosfet构建H桥电路,该电路可以提供足够的功率并可以轻松驱动电动机。 制作H桥电路既费时又费力。 幸运的是,现在已经有市场上可以买到的预组装H桥驱动器了,它们不仅价格便宜,而且易于控制。 因此,我决定在此项目中使用预组装的H桥电路。 A4988双极步进电机驱动器最适合我们的项目。 A4988可以在8至35伏的电压下提供1安培至2安培的连续电流。 它需要3到5伏的电压才能运行。 引脚排列和产品的等效电路如下。 图略 图.A4988步进电动机驱动器的等效电路 在A4988电机驱动器的VDD和Gnd引脚上施加3至5伏电压。 1A,1B,2A和2B是输出引脚。 这些引脚必须正确连接到双极步进电机的2相。 VMOT和GND是电源引脚,用于将电源与其连接。 您可以在VMOT和GND之间提供8至35伏特的电压。 只要将数字方波信号施加在STEP引脚上,步进电机的输出就会迈出一步。 DIR引脚控制步进电机的方向。 DIR处的高信号沿一个方向旋转电机轴,DIR处的低信号使方向反转。 SLEEP引脚使模块进入睡眠模式,并停止工作。 RESET销将电动机带回到其起始位置。 使能引脚激活模块。 MS1,MS2和MS3是步进模式选择引脚。 通过该模块,我们可以以5种模式移动电动机的轴。 具有设置的分辨率模式如下。 图略 电路图源代码 |