带声音识别库的dsPIC30F6014 ['WREG0'的冲突类型限定符] 当使用SRL(声音识别库)时,它有自己的头文件SR_L.h,当在已经有#include的项目中使用它时发生错误
conflicting type qualifiers for 'WREG0'
conflicting type qualifiers for 'WREG1'
conflicting type qualifiers for 'WREG2'
因为这两个头文件中都有这些文件,即SR_Lib.h和p30F6014.h。 SRL应该在p30F6014上运行,那为什么会发生这种情况呢?
我也在微芯片论坛上发布了这个问题,从那里可以下载sample project。
SR_Lib标头中的定义如下:
#define LINK_INTERRUPT 1
void (*WREG0)(void) = (LINK_INTERRUPT) ? _DCIInterrupt : _T4Interrupt;
void (*WREG1)(void) = (LINK_INTERRUPT) ? _AddressError : _MathError;
void (*WREG2)(void) = (LINK_INTERRUPT) ? _StackError : _StackError;
MCU标题中的
extern volatile unsigned int WREG0 __attribute__((__sfr__,__deprecated__,__unsafe__));