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库开发环境包括代码编辑&编译器(Keil MDK,IAR等)
下载器驱动(JLink&STLink)
STM32CubeMX
开发环境下载地址keil mdk5安装全家桶
链接:https://pan.baidu.com/s/1o3znMYT_c_GfCc0abGqmYw
提取码:c957
cubemx安装全家桶
链接:https://pan.baidu.com/s/1-aiZpfv_dczfQBQFHCdApA
提取码:1sfe
下载完以上两个压缩包之后再阅读后续内容!!!
安装步骤如下——
Keil安装
JLink,STLink驱动安装
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或者别的杀毒软件当成病毒删掉,如果被删了就去对应的软件下面选择还原