微芯片声音识别库(SR_L.h)与dspic30F6014标头冲突的限定符
带声音识别库的dsPIC30F6014[与'WREG0'的类型限定符冲突] 当使用SRL(声音识别库)时,它有自己的头文件SR#L.h,当在已包含#include的项目中使用此文件时,会发生错误微芯片声音识别库(SR_L.h)与dspic30F6014标头冲突的限定符,c,header-files,conflict,pic,microchip,C,Header Files,Conflict,Pic,Microchip,带声音识别库的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.
conflicting type qualifiers for 'WREG0'
conflicting type qualifiers for 'WREG1'
conflicting type qualifiers for 'WREG2'
因为它们在两个头文件中,即SR_Lib.h和p30F6014.h。SRL将在p30F6014上运行,那么为什么会发生这种情况
我也在microchip论坛上发布了这个问题,可以从那里下载
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__));
如果您在问题中同时提供两个头文件的声明,这将非常有帮助。这是一些非常不同的类型。一个是指向函数的指针,另一个是整数。我认为您在配置此项目时,在某些方面已经严重偏离了轨道。@MarkBessey项目配置是根据用户指南第51页“位置”中提到的步骤完成的