arduino提示找不到编译器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了arduino提示找不到编译器相关的知识,希望对你有一定的参考价值。

最近好多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编译,避免当程序过大时,若出现太多编译错误,会变得很难除错!
参考技术A arduino编译时,可能会产生如下问题截图,有的方案是利用某些文件的复制粘贴解决,通过修改后,问题可能会解决,但是还有一种情况,导致问题依旧不能解决。
2
/4
观察后发现上图中的报错信息,问题位于D盘,是下载时所用的文件夹,因此这种情况,按照上一步的说明,问题可以解决,但是,如果显示的是C盘,问题就不能解决。
3
/4
复制报错信息中的路径:C:\Users\Rachel\AppData\Local\Arduino15
发现此处还有一个arduino文件,并且编译时都使用的这里面的文件。
4
/4
解决方案就是删除这个文件夹Arduino15,删除时记得关闭arduino IDE。然后重新编译。重新编译时,文件夹依旧会被重新建立,但是多余的文件不会被创建。问题解决

Eclipse 无法编译,提示“错误: 找不到或无法加载主类”

jar包问题

1.项目的Java Build Path中的Libraries中有个jar包的Source attachment指为了一个不可用的jar包,

解决办法是:将这个不可用的jar包remove掉。

2.项目的Java Build Path中的Libraries中有个jar包是不可用的,显示红色叉叉。这说明系统找不到这个这个jar文件。

解决办法:把这个jar删除即可。

3.eclipse: Eclipse处于打开状态,而这时更新SVN代码,再在Eclipse中运行Java程序时也可能会提示“错误: 找不到或无法加载主类……”。

解决办法是:在Eclipse工程文件夹上点右键-Refresh,重新编译,一功OK。

4.做项目过程中,更新了一下SVN,把自己机器上代码更新成了最新版本,可是在运行程序时发现Eclipse提示:“错误: 找不到或无法加载主类……”。发现根本就没有生成.class文件,也即没有时行编译。后来连错误提示也没有了,点击“build project"后一点反应都没有,不能编译。最后才发现自己犯的错误好低级:工程中的src文件夹不是”源文件包“形式了,显示的是普通文件夹的样式。

解决办法是:在src文件夹上点右键-Build Path-Use as Source Folder,重新进行编译,一切正常了。

以上是关于arduino提示找不到编译器的主要内容,如果未能解决你的问题,请参考以下文章

maven编译时候提示找不到符号怎么办

编译java文件时提示找不到包

写了一段java程序,编译时提示找不到符号,请问该怎么修改

依赖项目中引入aar包,编译时提示找不到引入的aar包

Visual Studio 编译项目失败,提示找不到文件

javac编译不同目录的源码提示找不到符号