一.STM32开发环境
- KEIL系列
(1)KEIL公司目前有四款独立的嵌入式软件开发工具,即MDK、KEIL C51、KEIL C166、KEIL C251,它们都是KEIL公司品牌下的产品,都基于uVision集成开发环境,其中MDK是RealView系列中的一员。
我们在做STM32程序开发编译的时候,基本上都是用keil5这个软件。
Keil5和Keil5 MDK(Microcontroller Development Kit)是同一个软件的不同版本。
Keil5提供了一个完整的开发环境,包括编辑器、编译器、调试器等。
Keil5 MDK包含了Keil5的所有功能,同时还支持ARM Cortex-M系列微控制器的编程、调试和仿真,以及相应的软件库和工具。
(2)keil软件有付费版本和免费版本,但免费版本有限制。
Keil MDK有四种版本:
MDK-Lite(免费版)
MDK-Essential(基础版)
MDK-Plus(增强版)
MDK-Professional(专业版)
MDK-Lite(免费版):
代码大小限制32KB。
支持极少的MCU,比如:STM32F0、 L0、 G0等Cortex-M0内核的处理器。
大部分中间组件都不能使用,比如:IPv4 网络、USB、文件系统等组件都不能使用。
(3)keil支持的芯片种类非常多,不局限于stm32系列。
2.STM32CubeIDE
STM32CubeIDE是ST于2019年新推出的一款多功能的集成开发工具,它集成了TrueSTUDIO和STM32CubeMX插件,并基于GDB进行调试,它允许集成数百个现有插件,这些插件完成Eclipse的功能。但是STM32CubeIDE只是ST公司芯片的开发环境,MDK所支持的芯片就要广的多了。
这个软件是免费的。
3.EWARM
EWARM,全称为IAR Embedded Workbench for ARM(IAR EWARM),是由IAR Systems公司开发的一款集成开发环境(IDE),专为ARM架构的微控制器设计。它提供了一个综合性的开发环境,用于编译、调试和优化基于ARM架构的嵌入式应用程序,适用于STM32等ARM Cortex-M系列微控制器的开发。
这个软件是付费的。
4.总结
如果不考虑商业应用keil的比较好,如果考虑商业付费用STM32CubeIDE更好一些,毕竟是免费的。
二.keil软件生成文件介绍
- keil软件默认生成axf文件和hex文件
2.bin文件生成设置
配置 - Options for Target → Output
点击魔术棒"Options for Target" → 单击" Output " → 按下面截图所示配置
不指定路径 - 默认文件夹“Objects”
点击魔术棒"Options for Target" → 单击“User” → 按下面截图所示配置,配置完成后→ 点击"Build"编译 → 生成Bin / Hex文件
复制并输入以下内容:
fromelf --bin -o "$L@L.bin" "#L
参考文章:Keil生成并指定Bin和Hex文件的存放路径 - 附详细操作图文_keil生成bin文件-CSDN博客
三.STM32CubeIDE
- STM32CubeIDE默认是生成elf文件,类似keil生成的axf文件,都会比较大
- 编译生成 bin / hex 文件方法
如果想要bin或hex格式的固件可以在IDE左侧项目资源管理器(Project Explorer)中选择:项目右键 Prorerties 在弹出窗口的 C/C++ Build > Settings > Tool Settings > MCU Postbuild outputs 中选中生成bin和hex文件即可: