如何在Arduino IDE(macOS/Windows)中获取程序汇编代码?
获取Arduino程序汇编代码的傻瓜式方法(macOS/Windows)
macOS 操作步骤
- 确保已安装Arduino IDE,打开并加载你的程序,点击右上角的对勾编译一次。
- 打开Arduino IDE偏好设置(顶部菜单栏
Arduino > Settings),勾选「Show verbose output during」下的compilation,再次编译程序。 - 在底部输出日志中,找到类似
/var/folders/xx/xxxxxx/T/arduino_build_xxxxxx的临时编译路径,复制该路径。 - 打开「终端」应用,执行
cd 复制的路径进入编译临时目录。 - 在目录中找到与你的程序同名的
.elf文件(例如MySketch.elf)。 - 执行以下命令生成带C代码对照的汇编文件:
/Applications/Arduino.app/Contents/Java/hardware/tools/avr/bin/avr-objdump -S MySketch.elf > assembly_output.txt - 打开当前目录下的
assembly_output.txt,即可查看汇编代码(C代码与汇编代码一一对应)。
Windows 操作步骤
- 确保已安装Arduino IDE,打开并加载你的程序,点击右上角的对勾编译一次。
- 打开Arduino IDE首选项(顶部菜单栏
文件 > 首选项),勾选「显示详细输出」下的编译,再次编译程序。 - 在底部输出日志中,找到类似
C:\Users\你的用户名\AppData\Local\Temp\arduino_build_xxxxxx的临时编译路径,复制该路径。 - 打开「命令提示符(CMD)」,执行
cd 复制的路径进入编译临时目录。 - 在目录中找到与你的程序同名的
.elf文件(例如MySketch.elf)。 - 执行以下命令生成带C代码对照的汇编文件(注意路径有空格需加双引号):
"C:\Program Files (x86)\Arduino\hardware\tools\avr\bin\avr-objdump.exe" -S MySketch.elf > assembly_output.txt - 打开当前目录下的
assembly_output.txt,即可查看汇编代码(C代码与汇编代码一一对应)。
补充说明
- 上述方法适用于AVR架构的Arduino(如Uno、Nano),若使用ESP32等其他架构,只需找到对应架构的
objdump工具路径(通常在Arduino IDE的packages目录下),替换命令中的工具路径即可,核心步骤一致。
内容的提问来源于stack exchange,提问作者Trev347
相关产品推荐
相关产品推荐

