C语言 XC8库组织和跨多个源文件的#定义

  • 本文关键字:源文件 定义 XC8 语言 mplab xc8
  • 更新时间 :
  • 英文 :


这是一个复杂的帖子,所以请耐心等待。我已经尽可能地把它压缩了。

我将从使用PIC微控制器的不同工具链来到XC8。使用以前的编译器,设置和使用我自己的库,并在这些库中使用定义似乎要容易得多。

我想编写自己的函数库以供重用。我还希望将它们全部存储在我自己选择的目录结构中(这样它们就可以在多台机器之间自动同步,并出于各种其他原因)。下面是一个简化的虚构文件结构。

projectsmy_project//当前项目目录

some_other_directorymy_librarycomms_lib//我的通讯库

some_other_directorymy_libraryadc_lib//我的ADC库

现在为了便于论证,我们假设我的每个库都需要__XTAL_FREQ定义。每个项目的频率可能不同。
以下是我的问题:

  1. 告诉编译器我的库文件所在位置的最佳/最有效的方法是什么?

  2. 短__XTAL_FREQ添加到每个头文件,我如何使定义可用于所有他们?
    可能有人会说,它应该在一个单独的头文件(让我们称之为project_config.h)。然后可以将该文件与每个未来的项目放在一起,并进行相应的更改。如果单独的头文件是答案,那么接下来的问题是,我如何获得库头文件(不在与项目相同的目录中)以正确地引用每个新项目的project_config.h文件?

提前感谢Mark

如果您正在使用MPLABX,您可以考虑为您的库创建一个或多个库项目,然后可以从其他MPLABX项目中包含这些库。

对于__XTAL_FREQ的全局定义,我认为应该可以将符号定义传递给命令行,但不确定。

相关内容

  • 没有找到相关文章

最新更新