尝试通过Eclipse-AVR使用Arduino的HardwareSerial

Trying to use Arduino's HardwareSerial via Eclipse-AVR

本文关键字:Arduino HardwareSerial 使用 Eclipse-AVR      更新时间:2023-10-16

我正在尝试移植现在随Arduino 1.0 IDE附带的硬件串行库。我正在ATMega2560处理器上编译,并使用一个简单的"Hello World"示例测试Arduino USART库"HardwareSerial",但是我留下了这个奇怪的声音错误。

它告诉我我是:attempt[ing] to use poisoned "SIG_USART0_RECV"...我以前从未听说过这样的错误。我试图找出它的定义,日食给了我这个:

#define SIG_USART0_RECV _VECTOR(25)iomxx0_1.h中发现的。

然后从那里_VECTOR(n)通过#define _VECTOR(N) __vector_ ## N重定向到__vector_25。但是这些都在系统路径中,我认为它们仍然有效,因为当前的Arduino库仍然使用它们。

他们为什么要毒害自己的定义?在尝试编译项目之前,我是否需要声明其他内容?


编辑:

我在iomxx0_1.h中发现了毒药,上面写着:#pragma GCC poison SIG_USART0_RECV。那么他们为什么要毒害它呢?

SIG_xx中断向量在几年前就被弃用了。您可以在以下位置查看更新的列表:

AVR-GCC 手册在线中断向量