0

我有一个使用ATmega168PV的定制板,我有一个 bin 文件,当我使用 Atmel Studio 6.0 时,我可以将它编程到我的板上。

我有二进制的源代码(草图格式),我想更改/编译代码并用它们对电路板进行编程。

我可以在 Arduino IDE 中打开我的 *.ino 文件,它正在验证它并说

Binary sketch size: 12,096 bytes (of a 32,256 byte maximum)

但我搜索了文件存在的文件夹,但找不到任何二进制文件。

如何使用 Arduino IDE 编译代码?

4

1 回答 1

1

构建过程

草图由 avr-gcc 编译。

包含路径包括草图的目录、目标目录(/hardware/core//)和 avr 包含目录(/hardware/tools/avr/avr/include/),以及任何库目录(在 /hardware/libraries /) 其中包含一个头文件,该头文件包含在主草图文件中。

当您验证草图时,它会构建在系统临时目录中的一个临时目录中(例如 Mac 上的 /tmp)。当您上传它时,它会构建在草图目录的 applet/ 子目录中(您可以通过“草图”菜单中的“显示草图文件夹”项访问)。

目标的 .c 和 .cpp 文件被编译并以 .o 扩展名输出到该目录,主草图文件和草图中的任何其他 .c 或 .cpp 文件以及任何中的任何 .c 或 .cpp 文件也是如此#include 在草图中的库。

然后将这些 .o 文件链接到一个静态库中,并将主草图文件链接到该库。只有草图所需的库部分包含在最终的 .hex 文件中,从而减小了大多数草图的大小。

.hex 文件是编译的最终输出,然后上传到开发板。在“验证”期间,.hex 文件被写入 /tmp(在 Mac 和 Linux 上)或 \Documents and Settings\\Local Settings\Temp(在 Windows 上)。在上传过程中,它被写入草图目录的小程序子目录(您可以使用草图菜单中的“显示草图文件夹”项打开)。

在您的临时文件夹中搜索 *.cpp.hex

于 2012-11-28T16:20:45.083 回答