';IRQn#u型&x27;和';Tc&x27;编译Arduino草图时出现未定义错误
我在草图中引用了IRQn_Type和Tc类型(用于找到的startTimer函数),但我得到一个编译错误,说这些类型“未在此范围内声明”。这些不是“内置”类型吗?如果没有,我是否必须包含标题?Dan,如果您试图进行中断,这里是Arduino SE站点的列表 和在gcc avr头文件中定义。与我在Atmel Studio中从C编程AVR时使用的相同:';IRQn#u型&x27;和';Tc&x27;编译Arduino草图时出现未定义错误,arduino,arduino-ide,Arduino,Arduino Ide,我在草图中引用了IRQn_Type和Tc类型(用于找到的startTimer函数),但我得到一个编译错误,说这些类型“未在此范围内声明”。这些不是“内置”类型吗?如果没有,我是否必须包含标题?Dan,如果您试图进行中断,这里是Arduino SE站点的列表 和在gcc avr头文件中定义。与我在Atmel Studio中从C编程AVR时使用的相同: #define INT0_vect _VECTOR(1) /* External Interrupt Request 0 */
#define INT0_vect _VECTOR(1) /* External Interrupt Request 0 */
#define INT1_vect _VECTOR(2) /* External Interrupt Request 1 */
#define PCINT0_vect _VECTOR(3) /* Pin Change Interrupt Request 0 */
#define PCINT1_vect _VECTOR(4) /* Pin Change Interrupt Request 0 */
#define PCINT2_vect _VECTOR(5) /* Pin Change Interrupt Request 1 */
#define WDT_vect _VECTOR(6) /* Watchdog Time-out Interrupt */
#define TIMER2_COMPA_vect _VECTOR(7) /* Timer/Counter2 Compare Match A */
#define TIMER2_COMPB_vect _VECTOR(8) /* Timer/Counter2 Compare Match A */
#define TIMER2_OVF_vect _VECTOR(9) /* Timer/Counter2 Overflow */
#define TIMER1_CAPT_vect _VECTOR(10) /* Timer/Counter1 Capture Event */
#define TIMER1_COMPA_vect _VECTOR(11) /* Timer/Counter1 Compare Match A */
#define TIMER1_COMPB_vect _VECTOR(12) /* Timer/Counter1 Compare Match B */
#define TIMER1_OVF_vect _VECTOR(13) /* Timer/Counter1 Overflow */
#define TIMER0_COMPA_vect _VECTOR(14) /* TimerCounter0 Compare Match A */
#define TIMER0_COMPB_vect _VECTOR(15) /* TimerCounter0 Compare Match B */
#define TIMER0_OVF_vect _VECTOR(16) /* Timer/Couner0 Overflow */
#define SPI_STC_vect _VECTOR(17) /* SPI Serial Transfer Complete */
#define USART_RX_vect _VECTOR(18) /* USART Rx Complete */
#define USART_UDRE_vect _VECTOR(19) /* USART, Data Register Empty */
#define USART_TX_vect _VECTOR(20) /* USART Tx Complete */
#define ADC_vect _VECTOR(21) /* ADC Conversion Complete */
#define EE_READY_vect _VECTOR(22) /* EEPROM Ready */
#define ANALOG_COMP_vect _VECTOR(23) /* Analog Comparator */
#define TWI_vect _VECTOR(24) /* Two-wire Serial Interface */
#define SPM_READY_vect _VECTOR(25) /* Store Program Memory Read */
很乐意为您解答特定的编程问题,或者您也可以我正在编译Arduino到期版,但我没有在工具板下选择该板。一旦我这样做了,我就可以编译了。Dan,你想做什么,中断?我需要一种方法来定期轮询连接到Arduino的一些外围设备,所以我使用了这里找到的startTimer方法:,它显然使用中断。然而,它不会为我建造。特别是找不到类型“Tc”和“IRQn_Type”。示例代码没有引用我可以看到的标题,所以我不知道我缺少了什么。@Dan该页面说
Re:Timer Interrupts on Due
,除非您使用的是Due模型,它有更多的计时器和不同的头文件,我认为该页面上的内容不适合您。你为什么不提出你想做什么的问题,让我们/我帮你解决呢?我正在使用到期应付账款。我的问题是:如果找不到包含Tc和IRQn_类型符号的草图,我可能会遗漏什么。@Dan不知道,以前从未见过任何与Arduino相关的“IRQ”。Tc可能表示“计时器/计数器”c,其中c是众多计时器/计数器模块之一。IRQ可能意味着ISR(事件),这是标记中断服务例程的常见调用约定。但我只是在猜测。