我正在使用MPLABX和XC8编译器为PIC18F4550编写固件。该项目在编译时有一些警告,但我能够编译并使用 hexa 文件进行模拟。所以我决定在家推进工作。我压缩了MPLABX项目所在的文件夹并通过电子邮件发送。当我回到家时,我下载了它。我安装了MPLABX和XC8编译器。该版本与我最初使用的版本相同,直到现在都是最新的,2.05.我打开了该项目而不进行任何更改,我对其进行了编译,但是,它没有编译。发现错误,第一个列表是:
错误:未知类型名称"FAR">
以前没有发生过此错误。可能会发生什么?有人有什么想法吗?
我认为在 XC8 中,far
限定符由--ADDRQUAL
选项控制。它可能已在首次安装时添加到属性中。如果不需要将该变量放在扩展内存中,则可以省略它。
如果您开始使用中断等,您会遇到更多问题。请查看此摘要,了解最新版本中所做的所有更改。
https://www.microforum.cc/topic/5-i-used-to-use-to-locate-variables-but-since-xc8-20-this-is-no-longer-working
我已经有了答案。它是另一个人在Microchip论坛上给我的。这是链接:
https://www.microchip.com/forums/m/tm.aspx?m=1099735
我注意到,当我解压缩以前打包的项目时,并且 打开它(即使在同一台计算机上,但在不同的目录中( MPLABX倾向于不注意编译器版本和设置 因为它们出现在项目的 NBproject/配置.xml 文件中,但是 请改用默认值。 XC8 版本 2.05 的默认值为 C99 模式, 我怀疑如果你去项目->属性->->全局 选项窗口您将看到 C 标准设置为 C99
我的建议:将其设置为C90,看看会发生什么。
雷加兹,
戴夫