我正在使用XC8 1.20和PIC18F66K80,并且在使用pwm.h库时遇到一些问题。每当我打开pwm.h时,实际生成的唯一函数(IE,#ifdef编译时条件返回true)都是针对PWM1的。在遍历代码之后,我来到了pconfig.h文件并进入了关于18F66K80的部分,这一切都被忽略了。
返回false的条件是:
#ifdef __18F66K80
事实上,没有任何部分正在编译。这就像我没有选择芯片,即使该项目的目标是18F66K80。我进入编译器宏选项并添加__18F66K80作为定义的宏,这个块突然编译,让我可以访问PWM2-5。
我的问题是 - 告诉pconfig.h我正在使用什么芯片的正确方法是什么?我的项目设置清楚地显示PIC18F66K80作为目标设备,但pconfig.h表现得像我没有选择的设备。通过添加这个宏,它似乎工作,但我觉得这是一个黑客,而不是正确的做事方式。