STM32和SD卡(FATFS和SPI)

时间:2017-02-19 22:04:59

标签: stm32 spi hal fatfs

我开始使用stm32l0板,直到我有一些更有趣的功能才能使用它。我从来没有从窗口读取SD卡,我找到了Pins链接并开始阅读SPI,这可能是我们的项目的合适解决方案(我认为)。

但问题在于编程部分,我发现的每个教程都会跳过基础知识。我使用STM32CubeMX生成带有HAL和FATFS的代码,但我不知道如何初始化然后使用我的SD卡。我尝试粘贴我找到的代码,但我无法调试它,并且没有必要粘贴某人的代码。

谢谢并抱歉我的语法,

编辑: 我在这篇文章之后来到这里:link 我现在正在尝试使用stm32l0控制器访问SD卡。我被建议使用FATFS来读取设备但我理解的是库需要一种方法来访问数据:SPI。我在STM32CubeMX中选择了FATFS和SPI2,并在Eclipse中导入了项目(我使用的是HAL和SW4STM32)。在引脚说明中,我看到CubeMX中的MISO,CK,MOSI位于引脚PB12,PB13,PB14上。 但是在主文件中,这些引脚从未被使用过 在我提到的帖子中,另一件事让我感到害怕:SD卡需要以一种从未听说过的方式进行初始化 我不知道你是否需要SPI_Init和GPIO_Init函数,如果需要,我会编辑这条消息。
我会在早上编辑,因为帖子必须如此混乱,我的大脑燃烧起来我很抱歉。询问你是否需要精确度。 谢谢!

2 个答案:

答案 0 :(得分:2)

如果您使用CubeMx并配置SPI访问SD卡,则会在您的代码中自动配置引脚。查看生成的main.c中前几个函数的定义/实现。

如果您对STM32及其HAL驱动程序没有任何经验,请首先尝试了解这些内容是如何叠加的。

最快的方法是尝试一个例子。

所有CubeMx固件库都位于

C:/用户/用户名/ STM32Cube /存储库/ STM32Cube_FW_XX

转到项目>示例文件夹(可能不完全 - 但路径类似),您将找到示例。

答案 1 :(得分:0)

对于其他面临此问题的用户,只需选择CubeMX中定义的用户并使用kiwih的驱动程序即可。它们非常好并且有据可查!

https://github.com/kiwih/cubemx-mmc-sd-card