This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Accelerating write speed on sd card in LM4F232H5QD

Accelerating write speed on sd card in LM4F232H5QD

 I need to write and retrieve data at high speed in a SD / HD  seeing the sources of stellaris in "mmc-ek-lm4232h5qd.c" I noticed that the maximum speed is set at 12.5 mhz

 set_max_speed void (void)  {      unsigned long i;

     / * Disable the SSI * /     

 ROM_SSIDisable (SDC_SSI_BASE);

     / * Set the maximum speed to half the system clock, with a max of 12.5 MHz * /     

i = ROM_SysCtlClockGet () / 2;     

if (i> 12500000)    

  {          i = 12500000;      }

     / * Set the SSI0 port to run at 12.5MHz * /     

ROM_SSIConfigSetExpClk (SDC_SSI_BASE, ROM_SysCtlClockGet (),  SSI_FRF_MOTO_MODE_0, SSI_MODE_MASTER, i, 8);

 

     / * Enable the SSI * /     

ROM_SSIEnable (SDC_SSI_BASE);  }

 With the clock at 80 MHZ  setting as folow ROM_SysCtlClockSet (SYSCTL_SYSDIV_2_5 | SYSCTL_USE_PLL | SYSCTL_OSC_MAIN | SYSCTL_XTAL_16MHZ);

 What is more safe speed possible to configure SSI with the clock on 80 mhz

I can  simply change  this line ?

i = ROM_SysCtlClockGet () / 2;     

if (i> 12500000)     

    {          i = 12500000;      }

 

  • rodrigo zimmerman said:
    ROM_SysCtlClockSet (SYSCTL_SYSDIV_2_5

    Recall this bumps against errata - you must instead use the non-ROM version of this function to achieve 80MHz!  ( SysCtlClockSet() )

    You may be able to "beat" posted Speed Limits with careful, incremental increase of MCU clock...  (although may not work across all MCU lots, all temps, all VDD voltages..)