如何在Atom编译Arduino程序和上传到单片机?

如何在Atom编译Arduino程序和上传到单片机?,第1张

如果编译和上传分离到不同的机器上执行,可以使用下面方式。

依赖

安装arduino环境

sudo apt-get install arduino

编译

在Arduino IDE环境下,写好源码程序(以.ino结尾的文件)。然后

Arduino ->Preferences ->”Show verbose output during”选择”compilation”。点击编译,在下方的输出框最后一行显示如下内容

/usr/share/arduino/hardware/tools/avr/bin/avr-objcopy -O ihex -R .eeprom /tmp/build355782919138539048.tmp/Blink.cpp.elf /tmp/build355782919138539048.tmp/Blink.cpp.hex

可以得知, 源码(.ino)编译后生成的二进制文件为/tmp/build355782919138539048.tmp/Blink.cpp.hex

上传

把上一步编译生成的二进制文件上传到arduino控制板上。

/usr/share/arduino/hardware/tools/avrdude -patmega2560 -cwiring -P/dev/ttyACM0 -b115200 -D -Uflash:w:/tmp/build355782919138539048.tmp/Blink.cpp.hex:i

最近好多Arduino爱好者在拿到Arduino控制器后通过Arduino IDE下载程序时出现了如下错误:”avrdude: stk500_getsync(): not in sync: resp=0x00“这个错误提示在Arduino IDE中是非常常见,这个错误代表着就是无法通过USB口与Arduino控制器进行通信。

下面我给大家总结下出现这个问题常见的几个原因

1、Arduino控制器或者COM口没有选对,这种问题最简单,看下手里的控制器是什么型号的如Arduino Duemilanove,之后再确认下Arduino控制器上芯片的型号,168、328、1280、2560等,确认好这些信息后就可以参照下图选择正确的板卡了

Arduino IDE板卡选择

Arduino IDE Processor型号选择

COM口的选择,接好设备后打开设备管理器,计算机(右键)--管理--设备管理器--端口,如下图

设备管理器查看

Arduino IDE COM口选择

2、下载的时候,Arduino控制器串口被占用,大多数时候是Arduino控制器上接了其他扩展板(占用数字口0,1口的基本都会出问题,这两个口是用来通信下载程序的)如果接了其他扩展板不能用,可以先拔占用其串口的设备再次尝试重新下载程序。

3、bootloader损坏,这种情况下需要重新刷bootloader,我们通常使用的设备是Processor型号,之后旋转对应的编程器开始烧录

Arduino IDE编程器的选择

选择完毕后,点击烧写Bootbloder稍等片刻就烧录完成。

4、驱动未安装好(目前遇到Ghost版本,或者精简版win7系统安装Arduino控制器驱动时,无法安装的问题。这种情况需要重装系统。ghost版或者精简版 *** 作系统,请谨慎安装,后患无穷。)

通过以上4种错误原因逐一排查,出现错误的问题就迎刃而解了,不过有些时候我们在编写代码时就是在一行程序尾端忘记加上分号“”,然后因为其下一行代码的不同而产生许多不同的错误信息,下面我给大家列举几个我们常见的错误。

Arduino IDE编写代码

在”digitalWrite(led, HIGH)“后面缺少分号!当我们编译的时候就出现了如下错误:

Arduino IDE错误提示

这种的错误提示是比较明确的,还有一种较不明确的错误信息:

expected unqualified-id before numeric constant

Arduino IDE错误提示

虽然造成的错误的原因相同,但若是在常数后面缺少分号,则会呈现另外的错误信息提示:

Arduino IDE错误提示

在”int led=13“后面缺少分号时在编译程序,出现了上述的错误!另外还有一种常见的程序错误就是拼写错误,其中包括大小写的问题,例如LedPin就不同于ledPin。

Arduino IDE错误提示

此外,在使用函数时,参数定义必须正确,例如下面程序代码:

Arduino IDE错误提示

而且在Arduino IDE光标中会自动指向发生错误的那一行程序代码。还有一个就是在撰写程序注解时,也要小心错误:

Arduino IDE错误提示

最后建议大家在编写程序时,可以写了一小段程序之后就检查是否能通过Arduino IDE编译,避免当程序过大时,若出现太多编译错误,会变得很难除错!

这个错误可能是由于文件路径问题导致的。你可以检查文件路径是否正确,或者在代码中添加正确的文件路径。如果问题仍然存在,你可以尝试在 Arduino IDE 中重新安装 ESP8266 库或在项目中手动添加 ESP8266 库。

此外,如果你使用的是 Windows 系统,你可以尝试重新配置 Arduino IDE,以便它可以在你的系统中找到所需的文件。

如果仍然无法解决问题,可以在 Arduino 社区寻求帮助,也可以在支持论坛或官方网站提交问题。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11667869.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存