cancel
Showing results for 
Search instead for 
Did you mean: 

Error on MMC_PowerON() on STM32H7. Why?

HTD
Senior III

I have SDMMC1 configured for my H7 as follows:

0693W00000NrcaKQAR.png 

0693W00000NrcZCQAZ.png0693W00000NrcZRQAZ.pngThe card is inserted. I call generated init, and set debug to the HAL_MMC_InitCard of stm32h7xx_hal_mmc.c file, line:

/* Identify card operating voltage */
  errorstate = MMC_PowerON(hmmc);
  if (errorstate != HAL_MMC_ERROR_NONE)
  {
    hmmc->State = HAL_MMC_STATE_READY;
    hmmc->ErrorCode |= errorstate;
    return HAL_ERROR;
  }

The errorstate is -1. What now?

The specific hardware is STM32H747I-DISCO board. I also tested it with hardware flow control disabled. Same result.

 I switched the configuration to SDMMC_BUS_WIDE_1B and it works. At least it passes the initialization. I don't know how to interpret this behavior.

With the previous configuration you can see the QUADSPI module has a warning. The details say that some features are unavailable, but well, since they are not used (at least by me) - that should be fine, or that may be the cause of the problem?

1 ACCEPTED SOLUTION

Accepted Solutions
HTD
Senior III

OK, I figured out that it's for MMC cards that are completely different beasts. I have a SD card here 😉

View solution in original post

1 REPLY 1
HTD
Senior III

OK, I figured out that it's for MMC cards that are completely different beasts. I have a SD card here 😉