2013-04-09 08:29 AM
2013-04-09 08:36 AM
Do you have the SDIO_IRQHandler() ?
2013-04-09 08:57 AM
void SDIO_IRQHandler(void)
{
/* Process All SDIO Interrupt Sources */
SD_ProcessIRQSrc();
}
then include it on its .h
I don't know what to do next
2013-04-10 12:09 AM
Hi Clive1,
I have enabled it at NVIC.. making sure that SDIO_IRQHandler is Enabled.. didn't resolve problem... does it something to do with my system _stm32f2xx?/* PLLVCO = (HSE_VALUE / PLL_M) * PLL_N */
#define PLL_M (HSE_VALUE / 1000000) /* Possible value 0 and 63 */
#define PLL_N 240 /* Possible value 192 and 432 */
/* SYSCLK = PLLVCO / PLL_P !!!! DO NOT EXCEED 120MHz */
#define PLL_P 2 /* Possible value 2, 4, 6, or 8 */
/* OTGFS, SDIO and RNG Clock = PLLVCO / PLLQ */
#define PLL_Q 5 /* Possible value between 4 and 15 */
/* I2SCLK = PLLVCO / PLLR */
#define PLL_R 2 /* Possible value between 2 and 7 */
2013-04-10 03:33 AM
Doesn't appear unreasonable.
If you have a code example that works, you'll need to contrast that with the one that doesn't. If you're porting code to a different project pay attention to the defines (command line ones), and pin assignments related to the board being used.2013-04-10 10:47 PM
2013-04-11 06:43 AM
I do, but I'm not looking for that level of engagement.
In system_stm32f4xx.c I guess the first place to look would be PLL_Q, as that provides the SDIO clock source. There are rules relating to AHB/APB and SDIOCLK, not sure they are in play here, but check the docs. I think you should also review if there are any pin conflicts amongst the peripherals you're attempting to use together.2013-04-15 04:36 AM
2013-04-15 05:14 AM
The DISCOVERY boards typically use 8 MHz, the EVAL boards typically use 25 MHz
HSE_VALUE must always match the reality on the board.2013-04-15 10:07 PM