【问题标题】:stm32 fatfs library from system workbench for stm32来自系统工作台的 stm32 fatfs 库,用于 stm32
【发布时间】:2018-05-16 11:06:08
【问题描述】:

STM32 有问题。我使用 System Workbench For STM32 并包括我的项目 Hal 和 FatFs(当我创建项目时我选择它)。但是创建项目后出现错误:

说明资源路径位置类型“PPP_OK”未声明(首次使用 在这个 函数) ppp_diskio_template.c /Hal_sd/Middlewares/Third_Party/FatFs/src/drivers 行 98 C/C++问题

我该如何构建它?我想用 FatFs 做一个示例项目,但我无法构建空的 main.c

【问题讨论】:

  • 你是用Cube生成项目的吗?您为 FAT FS 选择了哪个目的地?

标签: c++ stm32


【解决方案1】:

第一种解决方案:如果您使用的是STM32CubeMX或STM32CubeIDE,您应该在Pinout & Configuration > Categories > Middlewares > FATFS下启用FatFS。 CubeMX 处理其余的,你应该没问题。确保您使用的是最新版本。

第二个解决方案:如果您手动添加 FatFS 文件,请确保将所有 .h 文件添加到包含路径中,如果您的 IDE 是 Eclipse 或 STM32CubeIDE,则位于 Properties > C/C++ General > Paths and Symbols > Includes 中。

第三种解决方案: 另一种可能性是,如果您尝试手动 fork 示例,大多数情况下都会发生这种情况。使用相应文件夹窗口右上角的搜索框在 Windows 资源管理器中的文件夹中搜索未找到的变量,在您的情况下为 PPP_OK。然后找到声明它的变量。这通常是一个.c 文件,如果是这样,请确保将其添加到您的项目中,同时找到同名的.h 文件并将其位置添加到您的包含路径中,如第二个解决方案中所述。

【讨论】:

    【解决方案2】:

    我看到你提到了ppp_diskio_template.c

    FatFs 只是一种在存储上组织数据并通过“文件抽象”访问它们的方法。 FatFs 向您显示“文件”,但最后它只是存储在存储中的字节。

    diskio 模板是一个文件,其中包含您需要定义的一些函数,以便 FatF 可以读取/写入存储。基本上,当您提供文件时,FatFS 将使用这些函数将数据“作为字节”存储。

    PPP_OK 未定义这一事实意味着ppp_diskio_template.hppp_diskio.h 可能不可用,不在正确的位置或未包含在您的项目文件中。

    你基本上可以在所有.h中搜索到你必须看到你需要包含哪一个。

    【讨论】:

      【解决方案3】:

      我不认为头文件已添加到您的项目中。

      【讨论】:

        猜你喜欢
        • 2016-10-20
        • 2019-06-03
        • 2020-08-21
        • 1970-01-01
        • 2015-10-25
        • 2017-10-05
        • 2017-11-29
        • 2019-07-31
        • 2023-03-05
        相关资源
        最近更新 更多