cancel
Showing results for 
Search instead for 
Did you mean: 

Where to download STM3210E-EVAL FW ?

neoirto
Associate II
Posted on September 27, 2013 at 01:48

Hi all,

I can't find the

STM3210E-EVAL_FW_V2.0.0 

anymore ?? I looked deeply on the st.com domain, but I can only find the last 2.1.0 is available online.

Where can I find the archive please ?

Thanks in advance
14 REPLIES 14
Posted on September 27, 2013 at 02:41

https://docs.google.com/file/d/0B7OY5pub_GfIdWVqNkcxVWcwaHM/edit?usp=sharing

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
neoirto
Associate II
Posted on September 27, 2013 at 10:47

Hi Clive,

I have to thank you one time more ! This is the best starting place to deal with USB Mass storage, as you already point to me.

But would it be better for me to begin with 2.1.0, for any reason ? I'd like to support uSD card support up to 4G if possible.

I probably have to tweak a bit, because:

- I have no Card Detect in my layout,

- and my USB D+ is always pull up (no reset possible)

Is that true ?

But it may be ok with an external 8MHz crystal HSE on STM32F103_RC, or _RE ?

Many Tx, as usual 😉

Posted on September 27, 2013 at 13:52

I think this would be a good starting point. The SDIO pins don't provide many options, but you can pick any available GPIO for the Card Detect switch on the socket. Pull-ups close to the socket are important, as are short, uniform length wiring. Review the schematic for the STM3210E-EVAL

The code should support cards upto 2 GB, I've modified other examples to use block addressing, and these should work up to 128 GB and beyond. I haven't played with the F1 drivers.
Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
neoirto
Associate II
Posted on September 27, 2013 at 15:25

Thank you Clive,

It appears there is no Card Detect implementation in SD_Init() / sdcard.c, so there is special need to add this feature ?

About the size limitation, what would happen if I insert a 4 GB uSD card with that code (FW 2.0) ?

Is the 2.1.0 FW version compatible with large capacity uSD cards, it's not clear in the code...

Many thanks again

Posted on September 27, 2013 at 16:01

Like I said I haven't spent any time on the F1 code, my boards aren't using them.

STM3210E-EVAL_FW_V2.1.0\Utilities\STM32_EVAL\STM3210E_EVAL\stm3210e_eval.h

/** @addtogroup STM3210E_EVAL_LOW_LEVEL_SD_FLASH
* @{
*/
/**
* @brief SD FLASH SDIO Interface
*/
#define SD_DETECT_PIN GPIO_Pin_11 /* PF.11 */
#define SD_DETECT_GPIO_PORT GPIOF /* GPIOF */
#define SD_DETECT_GPIO_CLK RCC_APB2Periph_GPIOF

STM3210E-EVAL_FW_V2.1.0\Utilities\STM32_EVAL\STM3210E_EVAL\stm3210e_eval_sdio_sd.c

/**
* @brief Detect if SD card is correctly plugged in the memory slot.
* @param None
* @retval Return if SD is detected or not
*/
uint8_t SD_Detect(void)
{
__IO uint8_t status = SD_PRESENT;
/*!< Check GPIO to detect SD */
if (GPIO_ReadInputDataBit(SD_DETECT_GPIO_PORT, SD_DETECT_PIN) != Bit_RESET)
{
status = SD_NOT_PRESENT;
}
return status;
}

Reading the larger cards has the potential to return the wrong data, writing has the potential to trash the file system.
Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
neoirto
Associate II
Posted on September 28, 2013 at 12:15

Many thanks for your help Clive,

I believe I have to carefully read that code now...
neoirto
Associate II
Posted on September 28, 2013 at 12:16

And good week end

Posted on September 30, 2013 at 02:20

V2.1.0 appears to have addressed some of the earlier limitations by passing 64-bit parameters, this is not a solution I care for as the block memory devices are not byte addressable, and this requires a whole bunch of unnecessary math and manipulation to convert to and from the wrong format. I successful integrated the SD code with FATFS and demonstrated basic functionality.

The SDIO support on the STM3210E-EVAL seems to be quite workable, and reasonably fast. The bus access is done at 24 MHz, and immediate attempts to clock it faster were unsuccessful.

Tests were done with the 128MB card shipped with the board, along with a 16GB Ultra/Extreme card.
Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
neoirto
Associate II
Posted on September 30, 2013 at 13:42

Hello Clive,

If I understand your point :

''Tests were done with the 128MB card shipped with the board, along with a 16GB Ultra/Extreme card.''

... you mean with FW 2.1.0 for HIGH CAPACITY SD CARD ?

My first test with 2.0 on my custom board are unsuccessful (running on HSE 8MHz crystal), the SD_PowerON() function crash after ACMD41, with a response of 16744448 at the second attempt (count=1).

Do you think it can be related to a clock malfunction, or anything else ?

Perhaps I did something wrong in my layout too ? My CMD line is jumped over the CLK line, with a strap jumper R0. I used 47K pull-up (and 10K for CMD line).

Tx again for your help 😉