cancel
Showing results for 
Search instead for 
Did you mean: 

while(!__HAL_SD_SDIO_GET_FLAG(hsd, SDIO_FLAG_RXOVERR | SDIO_FLAG_DCRCFAIL | SDIO_FLAG_DTIMEOUT | SDIO_FLAG_DBCKEND | SDIO_FLAG_STBITERR))

pncardella
Associate II
Posted on July 18, 2014 at 10:37

I keep getting stuck in an infinite loop in this function

while(!__HAL_SD_SDIO_GET_FLAG(hsd, SDIO_FLAG_RXOVERR | SDIO_FLAG_DCRCFAIL | SDIO_FLAG_DTIMEOUT | SDIO_FLAG_DBCKEND | SDIO_FLAG_STBITERR))

and I am able to look up what the flags mean, but I was wondering if there is an easy way to tell which one is causing the problem.

Also, I am using keil v5, c++, and stm32 eval board.

Thanks.

#eval #c++ #keil
2 REPLIES 2
Amel NASRI
ST Employee
Posted on July 18, 2014 at 10:59

Hi Phillîp,

Using the debugger, try to look into SDIO status register content (SDIO_STA). Definition of this register bits is in the reference manual (RM0090).

-Mayla-

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

pncardella
Associate II
Posted on July 18, 2014 at 12:43

It seems like all of the bits in that register are 0