2020-05-29 07:36 AM
Hi there, I'm a French engineering student, and we were given a project by a company. For this work, we were told to work with stm32, and we choose to work with STM32f769i-Disco, because it had a lot of features we needed. Our project is based on TouchGFX. We need to be able to read and write data on an micro SD card, so I tried to configure the project as shown in the few (very few) tutorials i could find, but no matter what I can't make it work.
I'm a complete beginner to the STM32 world, and i had only that week to discover the stm32Cube IDE, so i'm still a bit lost in what i have to do...
I tried a lot of things, as shown here:
https://microtechnics.ru/en/stm32cube-microcontroller-stm32-and-fatfs/
or here:
https://ngolongtech.net/stm32f7-disco-write-data-to-sd-card-with-fatfs/
and i even found i had to use DMA streams here :
But no matter what i couldn't make it to work.
I also tried to work with the example project in the STM32CubeF7-master git repo, but it doesn't even work. I guess the stm32f769-eval and disco don't have the same connexions...
No matter what, the uSD won't be mounted (but retSD = FATFS_LinkDriver(&SD_Driver, SDPath); seems to work find, with or without the SD card plugged... Is that even normal?)
Do you have any advice?
Thanks a lot!
Matthieu
2020-05-29 08:31 AM
STM32Cube_FW_F7_V1.16.0\Projects\STM32F769I-Discovery\Applications\Display\LCD_PicturesFromSDCard
2020-05-29 09:55 AM
Thank you for your fast answer, that project is indeed working!
Now I have to figure out how to make it work on a project with a .ioc file... Thanks a lot!
2020-06-02 02:00 AM
Ok so despite having added all the include paths to the properties of my project, #include "stm32f769i_discovery.h" doesn't work. I get the error : ../../Core/Inc/main.h:35:10: fatal error: stm32f769i_discovery.h: No such file or directory
#include "stm32f769i_discovery.h", but my .h file is present in the included directories on the left of Cube IDE.
Has anyone had this issue?
[edit] Seems, the issue was that i didn't add those directories to the c++ part. But now i'm getting an error without knowing where it comes from:
collect2.exe: error: ld returned 1 exit status
make: *** [makefile:70: STM32F769I_DISCO.elf] Error 1
[edit2]
After regenerating the project, the error was more detailled, i'm missing
-l:libtouchgfx-float-abi-hard.a
[Final Edit]
I added a folder in the original path to be placed exactly as the example, but the library path wasn't updated, so i had to do it manually. (If someone has the same issue one day :X )
Thank you for your help!