
STM32、51等单片机程序经过编译后,生成的hex文件、bin文件,它们都是单片机烧写文件,本文介绍它们的区别与应用。! c7 [6 Q5 {: ? % k) G$ g( i% D; p% U2 ^9 N Hex文件 Keil5中生成hex文件的配置 ![]() STM32CubeIDE中生成hex文件的配置 ![]() 如上图,先用鼠标点击选中项目名,之后点击菜单栏“File”-“Properties”。 ![]() 如上图红框处,依次点击“C/C++ Build”-“MCU Post build outputs”,勾选“Convert to Intel Hex file”,应用并关闭窗口。 hex烧写 用ISP方式烧写程序,首先找来ISP烧写软件,之后进行如下步骤:
![]() BIN文件 Keil5中生成Bin文件配置 ![]() 在后面“User Command”一栏中填写如下用户自定义命令: fromelf.exe --bin -o .\lcd1602a\lcd1602a.bin .\lcd1602a\lcd1602a.axf 这个自定义命令在编译生成Hex文件之后执行,通过“formelf.exe”工具生成基于.axf文件的.bin文件。如下图,按修改时间排序也可以知道.bin文件是在.axf文件之后生成的。Hex文件是用ASCII来表示数据,而且附加了地址信息,相对Bin文件要大一些。 ![]() ![]() - Y8 b! p- A4 O' o( o1 t 0 g, v( P' K; ?% G) U ' R$ z7 h- s) m, q, G1 p : K3 v* c& @# y . y; _7 }$ i$ Q% H' Y9 V/ b- ` * Y% z; O9 s$ j/ H. F) `8 D' J6 @ |