如何在不使用arduino IDE的情况下将十六进制文件固件上传到目标板?


8

我是否可以创建一种运行安装程序的安装程序,该安装程序运行Shell脚本以将固件更新上传到不涉及使用IDE的arduino?我做的一件事情有时需要固件更新,而有时将应用固件更新的人将无法从IDE应用更新。我猜这与avrdude有关,但是请尝试尝试学习方法,我只是没有运气。

我可以处理“创建运行Shell脚本的安装程序”部分。


是否有兴趣通过USB上传草图/固件?(而不是使用ICSP)
2013年

Answers:


5

我相信可以通过以下命令行完成此操作(因此可以轻松地将其转换为脚本)。这不是一个经过全面测试的答案,我将通过测试或其他人的验证随着进度的进行更新。

首先获取avrdude(最小文件:avrdude.conf,avrdude.exe和libusb0.dll)。

然后从命令行运行一些命令,以达到以下效果:

avrdude -U flash:w:[在此处放置十六进制文件路径]:i -C avrdude.conf -v -p atmega328 -b 115200 -c stk500v2 -P [在此处放置设备路径]


7

如果在IDE的首选项中打开详细输出,则可以看到IDE用于运行avrdude的完整命令行。

详细的输出还将使您可以看到hex文件使用的是哪个临时目录,因此可以进行抓取。


这半回答了问题。我相信发问者对如何将十六进制文件上传到开发板感兴趣(没有Arduino IDE,并且大概没有ICSP)。
boardbite 2013年

它提供了获得完整答案所必需的步骤。一旦看到IDE使用的命令行并且有了hex文件,就不再需要IDE。由于avrdude不需要基于ICSP的程序员,因此我不确定我是否理解您对ICSP的评论。
baldengineer

1
我刚刚指出,IDE的详细输出确实提供了必要的全部信息;我的评论现在被撤销!我提到ICSP与avrdude无关,而是与它是芯片编程的一种常见方式有关。
boardbite 2013年

3

您可能正在寻找inotool实用程序。


Windows替代品?基于命令行的?
boardbite 2013年

该页面未说明有关十六进制文件的任何内容。
Elmue '16

3

您可以使用AX Loader,这是Sourceforge上的开源软件。


是否有相同的32位Windows版本?
2013年

该链接已死。我只能在xloader.russemotto.com上找到XLoader,但是没有可用的源代码。
Elmue '16
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.