基础生成步骤
打开Keil4软件。点击菜单栏Project选项。选择New Project创建新工程。指定项目保存目录并命名。在弹出对话框中选择目标CPU型号:展开左侧ATMEL目录,选中AT89C51并确认。提示添加启动文件时选择是。
工程创建后,点击工具栏Options for Target图标(或通过Project菜单进入)。切换至Output选项卡。勾选Create HEX File复选框。完成程序编写后,点击Rebuild All按钮编译工程。成功编译后,HEX文件默认生成在工程目录的Objects文件夹中。
输出位置设置
在Options for Target的Output选项卡中,点击Select Folder for Objects按钮。自定义HEX文件的存储路径。更改路径后,生成的HEX文件将保存至指定目录。
高级应用
时间戳HEX文件
创建批处理文件(如build_date_time.bat)并置于工程目录。在Keil的User配置页,勾选After Build/Rebuild中的Run #1。输入批处理文件名并附加参数@L(代表当前Target名称)。批处理文件内容需包含时间截取命令及文件复制指令:
- 提取系统日期与时间并格式化
- 使用复制命令生成带时间戳的新HEX文件(如
temp_20201210_193418.hex
)
CRC校验附加
下载srec_cat.exe工具置于工程目录。修改编译批处理文件(如CopyHex_Flash.bat),添加CRC计算命令:
- 裁剪指定地址范围(如
-crop 0x08000000 0x0801FFFC
) - 填充未使用空间(
-fill 0xFF
) - 计算CRC并附加到HEX文件末尾(
-STM32_Little_Endian 0x0801FFFC
)
程序中添加硬件CRC校验函数,比较存储值与实时计算值。
HEX文件下载方法
将目标HEX文件复制到工程输出目录(如OBJ文件夹)。在Options for Target的Output选项卡中,修改输出文件名称为目标HEX文件名。使用调试器(J-Link或ST-Link)连接目标设备。点击Keil的Download按钮直接烧录HEX文件至单片机。