最近接触到关于基于hal库写的代码,为了便于读懂理解乃至运用到学习和项目开发上,我就简单入门学习了一下。为了帮助0基础,想要了解和学习hal库的同学们快速入门,我特意整合了集成下载安装到最后编译项目的一套流程:
1、下载
首先进入到st官网的CubeMX下载界面
https://www.st.com/content/st_com/en/stm32cubemx.htmlhttps://www.st.com/content/st_com/en/stm32cubemx.html首先进入后先点击这个download;
然后会跳转到这里,根据自己在使用的操作系统选择合适的版本。(我这里以windows举例,其他版本应该大差不差,可放心食用)
选择版本之后,这里会弹出来要你选择登录账户和创建账户。
如果你已经登录或者有账户,那你就直接选择左边的选项登入即可,随后直接跳转到后面的操作。
如果你是没有帐户,要进行注册的,我会带你们走一遍流程。
(这里强烈建议还是注册一个账号,因为以后要学习其他关于st公司的板子,都需要登录并去下载资料)
注册账户:
点进去注册账户:
按照正确信息来填写,尤其是邮箱/国家/电话。
提交申请后,然后会发到你的邮箱进行验证。
这个时候去点开接收到的邮件,他会让你设置密码。
要求如下:
按顺序翻译即为:
12个字符长度,没有空格,包含大写字母(A-Z),
包含小写字母(a-z),有0-9数字,至少有一个这些字符(如上);
至此,密码设置完成后重新跳转回到st官网就应该能下载了。如果不行的话重新登陆账户进行下载就好。
2、安装:
记得安装路径必须为全英文!下载后,要用管理员身份打开,不然正常双击打开后再进行选择就是这样:
接下来选择第二项:
然后接下来继续进行勾选同意不断进行下一步操作:
这里选择全英文路径:
再选择创建快捷方式:
最后安装成功。
3.新建工程:
点开来是这样的:
这里选择file来点击new project 或者选择 ACCESS TO MCU SELECTOR都可以。
进来后,先在左上角commerical part number(商业零件号)先填写型号搜寻,再点击对应型号(这里以stm32f103c8t6举例),再按右上角的start project
进去后就进行图形化配置界面了。
我们这里做的第一个现象就是点亮led,没错,成为嵌入式大师之前必须要先成为一名点灯大师。我们看这stm32f103c8t6上面有一个led灯,其对应的引脚位置是PC13。
既然要点亮led,那就要gpio输出高低电平去控制灯的亮灭,那我们就在这个对应引脚上选择输出模式。
然后点击左边的system core选择里面的GPIO,(列表下面还有诸多如ADC,定时器等之后可以自己夺多去学习了解。)然后对应配置好输出电平为低电平(因为该系统板是低电平触发),再改成推挽模式,再把输出速度调至最快。
然后点击左边列表的sys,选择仿真器,这里我用的是stlink,我就直接选择第二个了。
notice:这里一定要使能仿真器接口。不使能的话,首次烧写程序后下次无法连接!
在project manager选项卡中 project选项编辑工程名,工程位置,在toolchain/IDE中选择手使用的IDE工具,此处选择MDK。使用固件版本可以选择也可以使用默认最新版本。
在code generator选项中选择copy only the necessary library files,选择generated files中选项,如图所示。
选择勾选的选项
点击生成代码,会弹出弹窗,点击open project会自动打卡MDK软件,至此完成了使用CUBEMX到MDK5的移植。
怎么样?是不是超级简单?!
这个时候我们再点进open project,让他进入keil里看看:
这些就是hal库生成的代码,
点进MX_GPIO_Init()函数进去看看,发现和标准库写的代码一样。
进行编译运行代码,灯亮。
至此,入门教程结束,HAL库可以帮你节省大量初始化和配置各种模式的过程,我这上面所用的是stm32CubeMX生成和MDK编译。
另外还有STM32CubeIDE集成了STM32CubeMX的STM32配置与项目创建功能,以便提供一体化工具体验,并节省安装与开发时间。
这里附上STM32CubeIDE下载地址,前面的用户注册过程如果走完后,直接登录下载就好了。(要注意安装包不能放在中文路径下,不然下载不了。)
https://www.stmicroelectronics.com.cn/en/development-tools/stm32cubeide.html
以上是针对stm32cubemx的入门教程,stm32cubeide也大差不差,主要是多一个workspace,可以看生成的代码和进行编译。
谢谢你的观看,希望能帮助到你。