Arduino编译错误

Posted

tags:

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

Arduino:1.6.3 (Windows 8.1), 板:"Arduino Uno"
code19.ino:2:5: error: redefinition of 'int RECV_PIN'
sketch_apr19f.ino:2:5: error: 'int RECV_PIN' previously defined here
code19.ino:3:5: error: redefinition of 'int LED1'
sketch_apr19f.ino:3:5: error: 'int LED1' previously defined here
code19.ino:4:5: error: redefinition of 'int LED2'
sketch_apr19f.ino:4:5: error: 'int LED2' previously defined here
code19.ino:5:5: error: redefinition of 'int LED3'
sketch_apr19f.ino:5:5: error: 'int LED3' previously defined here
code19.ino:6:5: error: redefinition of 'int LED4'
sketch_apr19f.ino:6:5: error: 'int LED4' previously defined here
code19.ino:7:5: error: redefinition of 'int LED5'

建议你好好从头开始学习一下C的编程规范。

从报错来看,你在重复定义了很多的变量,
而通常来说,在一个域内,你只能定义一次变量。
我说的你估计看不懂吧?
没错,正是因为你完全木有基础呀。
参考技术A 你是不是同一个文件夹下放了两个ino文件,并且这两个程序里定义了同样的变量 参考技术B redefinition of ‘’你这是重定义了

Scheduler.h 库 Arduino

【中文标题】Scheduler.h 库 Arduino【英文标题】:Scheduler.h library Arduino 【发布时间】:2016-11-01 11:29:22 【问题描述】:

我正在尝试使用 Arduino 库 Scheduler.h。我从这里 1> 复制了代码并导入了库,但它没有编译。这里是编译错误代码。

错误:

Arduino:1.6.9 (Linux),Placa:“Arduino Nano,ATmega328”

AVISO: a biblioteca Scheduler alega rodar em arquitetura(s) [sam e pod ser incompatível com sua placa atual, que roda em arquitetura(s) samd]。 /tmp/ccAyeLMX.s:汇编程序消息: /tmp/ccAyeLMX.s:588:错误:需要常量值 lto-wrapper:/home/ullisses/.arduino15/packages/arduino/tools/avr-gcc/4.9.2-atmel3.5.3-arduino2/bin/avr-gcc 返回 1 退出状态 /home/ullisses/.arduino15/packages/arduino/tools/avr-gcc/4.9.2-atmel3.5.3-arduino2/bin/../lib/gcc/avr/4.9.2/../../。 ./../avr/bin/ld: lto-wrapper 失败 collect2:错误:ld 返回 1 个退出状态 退出状态 1 Erro compilando para a placa Arduino Nano

请问,我该如何解决这个问题?

【问题讨论】:

【参考方案1】:

如警告消息所示,调度程序库是为 SAM 和 SAMD 架构编写的。您尝试编译的 Arduino Nano 是 AVR 架构,因此您不能使用该板的库。如果您阅读page you got the code from,您会注意到它说:

需要硬件

Arduino 到期董事会

我建议学习 File > Examples > 02.Digital > BlinkWithoutDelay 和 tutorial page for that example,它展示了在 AVR 上实现多次闪烁的更明智的方法。

【讨论】:

以上是关于Arduino编译错误的主要内容,如果未能解决你的问题,请参考以下文章

ESP8266编译时错误

arduino编译报错问题

Scheduler.h 库 Arduino

Arduino库中的多个定义错误

Arduino草图,多定义错误

stm32写arduino程序怎么调试