• Robomaster电控入门(1)STM32开发环境搭建


    STM32介绍

    开发方式介绍

    stm32是半导体厂商ST(意法半导体)生产的基于Arm Cortex的单片机系列,目前被广泛应用于工业,物联网,科创竞赛等。

    目前国内大学生机器人竞赛Robomaster和Robocon主要使用的是stm32f4系列单片机,该系列基于Cortex-M4内核,具有较高的性能,CPU工作频率可以达到168MHz,基本可以满足比赛中所有的控制需求。

    stm32的主流开发方式包括寄存器开发,标准库开发,HAL库(LL库)开发。

    寄存器开发即直接控制32的寄存器,工程运行效率高,但是开发难度大,可读性与可移植性差;

    标准库开发即使用ST官方开源的一套标准固件库进行开发,这套固件库对一系列寄存器操作进行了封装,降低了开发难度,提高了可读性和可移植性,但目前ST已经将推广的重心从标准库转移到了HAL库(LL库)上,虽然还是有许多工程在使用标准库进行开发,但无论是软件还是文档的更新速度,标准库都已经无法和后者比拟了;

    HAL库(LL库)开发是ST开源的又一套新的库,与标准固件库的最大区别是,HAL库(LL库)支持ST开发的一款图形化工程配置软件STM32CubeMX,使用该软件可以大大提升开发效率和工程移植性,尽管由于HAL库采用了更加复杂的封装,降低了工程的运行效率,但是由于stm32本身强大的性能,中小型的工程依然能够流畅的运行。目前越来越多的用户开始使用HAL库(LL库)进行开发;

    本系列教程采用的开发方式为HAL库(LL库)开发(以下简称HAL库开发),同时也是Robomaster中许多队伍选择的开发方式。

    HAL库开发环境包括

    1. 代码编辑&编译器(Keil MDK,IAR等)
    2. 下载器驱动(JLink&STLink)
    3. STM32CubeMX

    开发环境下载地址

    keil mdk5安装全家桶

    链接:https://pan.baidu.com/s/1o3znMYT_c_GfCc0abGqmYw
    提取码:c957

    cubemx安装全家桶

    链接:https://pan.baidu.com/s/1-aiZpfv_dczfQBQFHCdApA
    提取码:1sfe

    安装教程

    下载完以上两个压缩包之后再阅读后续内容!!!

    安装步骤如下——

    1. Keil安装
    2. JLink,STLink驱动安装
    3. STM32CubeMX安装

    1.Keil安装

    首先,解压keil mdk5安装全家桶压缩包,点开之后看到如下内容——

    首先点击MDK-523.exe进行MDK的安装,安装过程可以参考0-如何安装keil5.pdf

    需要注意的是在选择安装路径的页面,一定要保证自己的路径中不含有中文注意!!!!不要含有中文!!下文中的软件同理,这是一个常识,不要在安装路径中带有中文!!

    一直点击next,等待安装完成即可,跳出该页面可以直接关闭

    安装完成后可以在桌面或者是引导菜单中看到这个绿油油的图标,说明keil已经安装完成。

    安装完成之后,需要进行破解,首先以管理员方式打开keil(注意,管理员方式!!!

    点击File->License Management..

    复制Computer ID到剪贴板中

    然后打开keil mdk5安装全家桶中的破解软件文件夹,右键Keil_ARM_MDK_5.00_Keygen_serial_Crack.exe,以管理员方式运行,需要注意可能会被windows defender或者别的杀毒软件当成病毒删掉,如果被删了就去对应的软件下面选择还原

    将复制好的Computer ID复制到CID中,Target选择ARM,填完后点击Generate

    将生成的破解码粘贴到keil中

    点击Add LIC,如下图显示则破解成功

    完成keil的安装破解之后,我们开始安装stm32f1与f4的芯片包,依然是在keil mdk5安装全家桶下,找到

    直接双击安装即可,他们提供了f1和f4系列芯片的一些具体芯片信息,是下载和创建工程时必要的

    2. JLink,STLink驱动安装

    Jlink和STlink是常用的两种下载/调试器,一般我们使用jlink/stlink链接开发板与电脑,将电脑编译生成的可执行文件烧录到单片机上。

    这是常见的jlink下载器,烧录时遵守jtag协议

    这是stlink下载器,烧录时遵守swd协议

    也有小型且便宜的stlink下载器

    jtag可以兼容swd,也就是说使用jlink同样可以按照swd协议进行下载

    Robomaster的开发板都是swd下载接口

    我个人推荐使用jlink,因为jlink可以提供一些优秀的调试工具,比如jscope,这是一个功能强大的虚拟示波器,可以实时监视单片机中的变量

    下面我们开始安装这两个下载器所需要的驱动——

    keil mdk5安装全家桶下,找到Setup_JLink_V496.exe,双击运行,一路点击next,最后会弹出如下界面

    勾选mdk,点击OK即可

    成功安装后点击Finish

    接着安装stlink

    keil mdk5安装全家桶下,找到ST LINK驱动及教程文件夹,点击进入后找到ST-LINK驱动文件夹

    64位系统点击dpinst_amd64.exe进行安装,一路next即可,成功后显示

    STLINK调试补充教程.pdf下有更加详细的配置信息,以及升级stlink固件的方式,如果出现了不能下载的情况,可以参考该文档

    STM32CubeMX安装

    最后需要安装的是stm32cubemx,下载并解压cubemx安装全家桶,内容如下:

    首先双击安装jre-8u191-windows-x64.exe,点击安装之后等待即可,当然你的电脑上可能有更高版本的java,如果有的话,就不必再进行安装了,出现如下界面则安装完成

    然后双击安装SetupSTM32CubeMX-5.0.0.exe,如下界面说明安装完成

    完成cubemx的安装之后,我们还需要安装软件库。运行cube,点击Help->Manage embedded software packages,在弹出的界面中点击左下角的From local,在弹出的界面中找到cubemx安装全家桶下的两个压缩包STM32Cube_FW_F1_V1.6.0.zipSTM32Cube_FW_F4_V1.19.0.zip,等待自动安装完即可

    至此,cubemx所需要的环境也安装完毕了

    点灯实验

    为了检验自己安装的环境成功与否,参照如下视频进行点灯实验

    https://www.bilibili.com/video/av26331717

    需要注意的是,视频中使用的cubemx版本比较老,界面和此次安装的cube有所区别,但是两个版本cube的内容基本一致,大家可以慢慢摸索配置的方法,也可以等待下一次的视频更新,会有工程配置的过程。

  • 相关阅读:
    Pycharm2017应用小技巧
    浅谈哈希表
    攻克网页文字不可复制的难题
    Java中List的相关知识
    电脑实用小技巧
    Jme3涉及的eclipse知识
    Word2010撤销按钮失效,Ctrl+Z失效解决办法
    Word文档中怎么删除空白页?删除空白页的六种方法
    word中分栏后文字均匀的分布在了左右两栏,而不是填满左栏再填右栏,怎么办?
    visdom服务启动时提示Downloading scripts, this may take a little while解决办法
  • 原文地址:https://www.cnblogs.com/sasasatori/p/11599883.html
Copyright © 2020-2023  润新知