当前位置: 首页 > news >正文

IAR Embedded Workbench 常用宏变量(Argument Variables)备忘录

IAR Embedded Workbench 常用宏变量(Argument Variables)备忘录

在 IAR 开发过程中,配置 Pre/Post-build command(预/后构建命令行)或 External Tools(外部工具)时,经常需要使用动态路径。IAR 提供了一套类似环境变量的 Argument Variables,熟练使用它们可以让工程配置更灵活,不受绝对路径限制。

1. 核心路径类 (Project & Workspace)

这是最常用的变量,用于定位工程和工作空间的位置。

变量名 说明 示例 (假设工程在 C:\Project)
$PROJ_DIR$ 项目目录 (.ewp 文件所在目录) C:\Project
$PROJ_FNAME$ 项目名称 (不带扩展名) MyProject
$PROJ_PATH$ 项目文件全路径 C:\Project\MyProject.ewp
$WS_DIR$ 工作空间目录 (.eww 文件所在目录) C:\Project (通常同项目目录)
$WS_FNAME$ 工作空间名称 (不带扩展名) MyWorkspace

2. 构建配置与输出类 (Configuration & Output)

用于区分 Debug/Release 版本以及定位编译生成的二进制文件。

变量名 说明 示例
$CONFIG_NAME$ 当前配置名称 (Debug / Release) Debug
$TARGET_DIR$ 输出目标目录 (生成 .out/.hex 的文件夹) C:\Project\Debug\Exe
$TARGET_BNAME$ 输出文件名 (带扩展名) MyProject.out
$TARGET_BPATH$ 输出文件全路径 C:\Project\Debug\Exe\MyProject.out
$OBJ_DIR$ 中间对象目录 (生成 .o 文件的文件夹) C:\Project\Debug\Obj
$LIST_DIR$ 列表文件目录 (生成 .map/.lst 的文件夹) C:\Project\Debug\List

3. 环境变量与工具类 (Environment & Tools)

用于引用 IAR 安装目录或编译器路径。

变量名 说明 示例
$EW_DIR$ IAR 安装根目录 C:\Program Files\IAR Systems\Embedded Workbench 9.0
$TOOLKIT_DIR$ 特定架构工具链目录 C:\...\Embedded Workbench 9.0\arm
$DATE$ 当前系统日期 Oct 25 2023
$TIME$ 当前系统时间 09:30:00

4. 当前处理文件类 (Current File)

注意:这类变量通常只在“自定义构建规则”或对单个文件执行操作时有效。

变量名 说明
$FILE_DIR$ 当前正在处理文件的目录
$FILE_FNAME$ 当前文件名 (不带扩展名)
$FILE_PATH$ 当前文件的绝对路径

💡 实战使用技巧

1. 永远记得加引号!

Windows 路径中经常包含空格(例如 Program FilesMy Documents)。如果不加引号,命令行会把空格视为参数分隔符,导致报错。

  • ❌ 错误:$PROJ_DIR$\output.bin
  • ✅ 正确:"$PROJ_DIR$\output.bin"

2. 经典应用:Post-build 自动复制文件

Options -> Build Actions -> Post-build command line 中:

将生成的固件重命名并复制到项目根目录下的 Firmware 文件夹:

cmd /c copy "$TARGET_BPATH$" "$PROJ_DIR$\Firmware\App_$CONFIG_NAME$.hex"

效果: 编译 Release 版时,自动生成 App_Release.hex

3. 经典应用:将配置传递给 C 代码

想在代码里知道当前是 Debug 还是 Release?
Options -> C/C++ Compiler -> Preprocessor -> Defined symbols 中添加:

BUILD_CONFIG="$CONFIG_NAME$"

在 C 代码中:

#include <stdio.h>
#define XSTR(x) STR(x)
#define STR(x) #xvoid main() {printf("Build Config: %s\n", XSTR(BUILD_CONFIG));
}

4. 经典应用:调用 Python 脚本处理 Bin 文件

python "$PROJ_DIR$\script\checksum.py" "$TARGET_BPATH$"

http://www.rkmt.cn/news/126929.html

相关文章:

  • 最新AI换脸软件,全面升级可直播,Mirage下载介绍(支持cpu)
  • 2025年装修设计企业客户首选品牌TOP5,别墅装修/豪宅设计/家居装修/家居设计品牌哪个好 - 品牌推荐师
  • Open-AutoGLM模式匹配加速实战(从毫秒到微秒的跨越)
  • 还在为显存溢出崩溃?Open-AutoGLM内存压缩5步极速瘦身法
  • 2025年12月理发店会员,美发会员,理发店会员厂家品牌推荐榜,彰显美发会员服务国产技术实力 - 品牌鉴赏师
  • 从选题到框架:8个 AI 工具,把开题报告的 “难” 变成 “顺”
  • 从入门到精通:掌握Open-AutoGLM推理优化的7个关键步骤
  • 2025年12月喜糖伴手礼批发,喜糖伴手礼购买,喜糖伴手礼进货厂家品牌推荐榜,彰显国产供应链实力 - 品牌鉴赏师
  • 压接 + 焊接(最好)铜丝
  • vue3+springboot基于微信小程序的校园课程资料学习作业提交系统(编号:66245746)
  • 如何 为 Linux centos7 Minimal系统 配置国内镜像
  • 【大模型推理性能跃升关键】:Open-AutoGLM CPU资源调度的7个核心技巧
  • ChatGPT功能调整:AI人格回归与成人内容监管
  • 2025年12月床上用品批发,结婚床上用品购买,结婚床上用品进货厂家权威推荐,婚庆家纺品质红榜发布 - 品牌鉴赏师
  • 2025年12月床上用品,结婚床上用品购买,结婚床上用品进货厂家推荐榜,优选家纺企业实力解析 - 品牌鉴赏师
  • 2025年12月婚庆用品,婚庆用品一站式推荐,婚庆用品加盟厂家推荐:行业权威盘点与品质红榜发布 - 品牌鉴赏师
  • 2025年杭州美术艺考机构权威推荐榜单:艺考培训/艺考专业培训/美术集训班源头机构精选 - 品牌推荐官
  • Open-AutoGLM特征提取黑科技(90%工程师尚未掌握的加速技巧)
  • Open-AutoGLM延迟优化黄金法则:20年专家总结的8条不可忽略细节
  • 揭秘Open-AutoGLM底层优化机制:90%工程师忽略的3个性能瓶颈
  • Open-AutoGLM最后冲刺阶段,为什么高手都在刷这3类题型?
  • 当云原生遇见VMware—探讨容器化改造中vSphere的融合创新方案
  • Open-AutoGLM神经网络优化全解析(专家级调优技巧曝光)
  • (离线任务调度革命)Open-AutoGLM如何重构传统调度瓶颈
  • 智慧校园统一待办中心:让校园工作更高效的秘密武器
  • RAG技术揭秘:如何通过检索增强生成解决大模型知识过时与幻觉问题?
  • 【大模型轻量化革命】:Open-AutoGLM内存压缩的5大核心技术解析
  • 2025年12月铝水过滤网,纤维过滤网,帽式过滤网厂家品牌推荐榜,彰显国产技术实力 - 品牌鉴赏师
  • 2025-2026北京靠谱律师口碑排名白皮书:深度剖析优质法律解决方案 - 苏木2025
  • 2025网络安全入门保姆级教程:零基础小白的第一本终极指南