cancel
Showing results for 
Search instead for 
Did you mean: 

We are trying to to read and write to a SD card. We are using the STM32F50N8. Find below attached the schematic for the SD card and the GPIO. We have set it up the same we as mentioned here (SD 4 bit wide mode) - https://www.youtube.com/watch?v=

PMold.1
Associate III

Hi,

We are trying to to read and write to a SD card.

We are using the STM32F50N8. Find below attached the schematic for the SD card and the GPIO.

We have set it up the same we as mentioned here (SD 4 bit wide mode) - https://www.youtube.com/watch?v=I9KDN1o6924&ab_channel=STMicroelectronics

However, FR returns not ready.

Can you please advice us on how to fix this.

Many thanks, 0693W00000JPK4OQAX.png0693W00000JPK4JQAX.png

1 ACCEPTED SOLUTION

Accepted Solutions
PMold.1
Associate III

For this project I was using FreeRTOS. Hence, the issue.

All I had to do to fix it was to increase the stack size of the task.

View solution in original post

3 REPLIES 3

What's an STM32F50N8 ? a STM32F750N8?

Not Ready typically comes from not having the right GPIO associated GPIO_SDMMC_DET, and that is properly initialized.

Check that it goes low properly when the card is present, that you need the PULL-UP enabled, as you don't have an external one. You can remove the checking code also if the pin doesn't report correctly

Also no external pull-ups on the D0,D1,D2,D3,CMD card side, would have suggested those, so definitely ensure the internal pull-ups on STM32 side.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
PMold.1
Associate III

Sorry STM32F750N8. I made these external pull ups with 10K resistors. I also added a pull up to the GPIO_SDMMMC_DET line and it goes low when the SD card is inside. I also made the internal pins to pull up as shown below. However, it still returns not ready. The line it breaks on is attached below.0693W00000JPLioQAH.png 

0693W00000JPLjcQAH.png 

0693W00000JPLk6QAH.png

PMold.1
Associate III

For this project I was using FreeRTOS. Hence, the issue.

All I had to do to fix it was to increase the stack size of the task.