TM STM32Fxxx HAL Libraries  v1.0.0
Libraries for STM32Fxxx (F0, F4 and F7 series) devices based on HAL drivers from ST from Tilen Majerle

Connect external SDRAM to STM32Fxxx devices with integrated FMC peripheral - http://stm32f4-discovery.com/2015/07/hal-library-11-sdram-for-stm32fxxx/. More...

Modules

 TM_SDRAM_Macros
 Library defines.
 
 TM_SDRAM_Functions
 Library Functions.
 

Detailed Description

Connect external SDRAM to STM32Fxxx devices with integrated FMC peripheral - http://stm32f4-discovery.com/2015/07/hal-library-11-sdram-for-stm32fxxx/.

This library allows you to connect and use external SDRAM.

It supports boards below::

Set your target
Note
If you follow my description in TM_DISCO library on how to select your used board, then this library will automatically select your "target".

By default, STM32F429-Discovery configuration is used, because this board is cheap and most users uses this.

If you are working with STM324x9-EVAL board, you can add define in defines.h file and enable configuration for SDRAM on this board. Other boards are supported below.

//Use SDRAM on STM32F439-EVAL board
#define SDRAM_USE_STM32F439_EVAL
//Use SDRAM on STM32F7-Discovery board
#define SDRAM_USE_STM32F7_DISCOVERY
//Use SDRAM on STM32F429-Discovery board
#define SDRAM_USE_STM32F429_DISCOVERY
//Use SDRAM on STM32F469-Discovery board
#define SDRAM_USE_STM32F469_DISCOVERY
STM32F7-Discovery pinout
PC3  <-> FMC_SDCKE0 | PD0  <-> FMC_D2   | PE0  <-> FMC_NBL0  | PF0  <-> FMC_A0    | PG0  <-> FMC_A10    | PH3  <-> FMC_SDNE0
                    | PD1  <-> FMC_D3   | PE1  <-> FMC_NBL1  | PF1  <-> FMC_A1    | PG1  <-> FMC_A11    | PH5  <-> FMC_SDNWE
                    | PD3  <->          | PE7  <-> FMC_D4    | PF2  <-> FMC_A2    | PG4  <-> FMC_BA0    |
                    | PD8  <-> FMC_D13  | PE8  <-> FMC_D5    | PF3  <-> FMC_A3    | PG5  <-> FMC_BA1    |
                    | PD9  <-> FMC_D14  | PE9  <-> FMC_D6    | PF4  <-> FMC_A4    | PG8  <-> FMC_SDCLK  |
                    | PD10 <-> FMC_D15  | PE10 <-> FMC_D7    | PF5  <-> FMC_A5    | PG15 <-> FMC_SDNCAS |
                    | PD14 <-> FMC_D0   | PE11 <-> FMC_D8    | PF11 <-> FMC_NRAS  |                     | 
                    | PD15 <-> FMC_D1   | PE12 <-> FMC_D9    | PF12 <-> FMC_A6    |                     | 
                    |                   | PE13 <-> FMC_D10   | PF13 <-> FMC_A7    |                     |    
                    |                   | PE14 <-> FMC_D11   | PF14 <-> FMC_A8    |                     |
                    |                   | PE15 <-> FMC_D12   | PF15 <-> FMC_A9    |                     |
STM32F429-Discovery pinout
PB5  <-> FMC_SDCKE | PC0  <-> FMC_SDNWE | PD0  <-> FMC_D2   | PE0  <-> FMC_NBL0  | PF0  <-> FMC_A0    | PG0  <-> FMC_A10
PB6  <-> FMC_SDNE1 |                    | PD1  <-> FMC_D3   | PE1  <-> FMC_NBL1  | PF1  <-> FMC_A1    | PG1  <-> FMC_A11
                   |                    | PD8  <-> FMC_D13  | PE7  <-> FMC_D4    | PF2  <-> FMC_A2    | PG4  <-> FMC_BA0
                   |                    | PD9  <-> FMC_D14  | PE8  <-> FMC_D5    | PF3  <-> FMC_A3    | PG5  <-> FMC_BA1
                   |                    | PD10 <-> FMC_D15  | PE9  <-> FMC_D6    | PF4  <-> FMC_A4    | PG8  <-> FMC_SDCLK
                   |                    | PD14 <-> FMC_D0   | PE10 <-> FMC_D7    | PF5  <-> FMC_A5    | PG15 <-> FMC_NCAS
                   |                    | PD15 <-> FMC_D1   | PE11 <-> FMC_D8    | PF11 <-> FMC_NRAS  | 
                   |                    |                   | PE12 <-> FMC_D9    | PF12 <-> FMC_A6    | 
                   |                    |                   | PE13 <-> FMC_D10   | PF13 <-> FMC_A7    |    
                   |                    |                   | PE14 <-> FMC_D11   | PF14 <-> FMC_A8    |
                   |                    |                   | PE15 <-> FMC_D12   | PF15 <-> FMC_A9    |
STM32439-EVAL pinout
PD0  <-> FMC_D2   | PE0  <-> FMC_NBL0  | PF0  <-> FMC_A0    | PG0  <-> FMC_A10   | PH2  <-> FMC_SDCKE0| PI0  <-> FMC_D24  
PD1  <-> FMC_D3   | PE1  <-> FMC_NBL1  | PF1  <-> FMC_A1    | PG1  <-> FMC_A11   | PH3  <-> FMC_SDNE0 | PI1  <-> FMC_D25   
PD8  <-> FMC_D13  | PE7  <-> FMC_D4    | PF2  <-> FMC_A2    | PG4  <-> FMC_A14   | PH5  <-> FMC_SDNWE | PI2  <-> FMC_D26  
PD9  <-> FMC_D14  | PE8  <-> FMC_D5    | PF3  <-> FMC_A3    | PG5  <-> FMC_A15   | PH8  <-> FMC_D16   | PI3  <-> FMC_D27  
PD10 <-> FMC_D15  | PE9  <-> FMC_D6    | PF4  <-> FMC_A4    | PG8  <-> FC_SDCLK  | PH9  <-> FMC_D17   | PI4  <-> FMC_NBL2
PD14 <-> FMC_D0   | PE10 <-> FMC_D7    | PF5  <-> FMC_A5    | PG15 <-> FMC_NCAS  | PH10 <-> FMC_D18   | PI5  <-> FMC_NBL3 
PD15 <-> FMC_D1   | PE11 <-> FMC_D8    | PF11 <-> FC_NRAS   |                    | PH11 <-> FMC_D19   | PI6  <-> FMC_D28  
                  | PE12 <-> FMC_D9    | PF12 <-> FMC_A6    |                    | PH12 <-> FMC_D20   | PI7  <-> FMC_D29      
                  | PE13 <-> FMC_D10   | PF13 <-> FMC_A7    |                    | PH13 <-> FMC_D21   | PI9  <-> FMC_D30  
                  | PE14 <-> FMC_D11   | PF14 <-> FMC_A8    |                    | PH14 <-> FMC_D22   | PI10 <-> FMC_D31
                  | PE15 <-> FMC_D12   | PF15 <-> FMC_A9    |                    | PH15 <-> FMC_D23   |
STM32F469-Discovery pinout
PC0  <-> FMC_SDNWE | PD0  <-> FMC_D2   | PE0  <-> FMC_NBL0  | PF0  <-> FMC_A0    | PG0  <-> FMC_A10   | PH2  <-> FMC_SDCKE0| PI0  <-> FMC_D24  
                   | PD1  <-> FMC_D3   | PE1  <-> FMC_NBL1  | PF1  <-> FMC_A1    | PG1  <-> FMC_A11   | PH3  <-> FMC_SDNE0 | PI1  <-> FMC_D25   
                   | PD8  <-> FMC_D13  | PE7  <-> FMC_D4    | PF2  <-> FMC_A2    | PG4  <-> FMC_A14   | PH8  <-> FMC_D16   | PI2  <-> FMC_D26  
                   | PD9  <-> FMC_D14  | PE8  <-> FMC_D5    | PF3  <-> FMC_A3    | PG5  <-> FMC_A15   | PH9  <-> FMC_D17   | PI3  <-> FMC_D27  
                   | PD10 <-> FMC_D15  | PE9  <-> FMC_D6    | PF4  <-> FMC_A4    | PG8  <-> FC_SDCLK  | PH10 <-> FMC_D18   | PI4  <-> FMC_NBL2
                   | PD14 <-> FMC_D0   | PE10 <-> FMC_D7    | PF5  <-> FMC_A5    | PG15 <-> FMC_NCAS  | PH11 <-> FMC_D19   | PI5  <-> FMC_NBL3 
                   | PD15 <-> FMC_D1   | PE11 <-> FMC_D8    | PF11 <-> FC_NRAS   |                    | PH12 <-> FMC_D20   | PI6  <-> FMC_D28  
                   |                   | PE12 <-> FMC_D9    | PF12 <-> FMC_A6    |                    | PH13 <-> FMC_D21   | PI7  <-> FMC_D29      
                   |                   | PE13 <-> FMC_D10   | PF13 <-> FMC_A7    |                    | PH14 <-> FMC_D22   | PI9  <-> FMC_D30  
                   |                   | PE14 <-> FMC_D11   | PF14 <-> FMC_A8    |                    | PH15 <-> FMC_D23   | PI10 <-> FMC_D31
                   |                   | PE15 <-> FMC_D12   | PF15 <-> FMC_A9    |                    |                    |
Changelog
 Version 1.0
  - First release
  
 Version 1.1
  - October 10, 2015
  - Added support for STM32F469-Discovery
Dependencies
 - STM32Fxxx HAL
 - defines.h
 - attributes.h
 - TM GPIO