InES Hardware Abstraction Layer
Data Structures | Enumerations | Functions
hal_fmc.h File Reference

Interface of module hal_fmc. More...

#include "hal_common.h"

Go to the source code of this file.

Data Structures

struct  hal_fmc_sram_init_t
 Initialization structure for sram bank. More...
 
struct  hal_fmc_sram_timing_t
 Initialization structure for timing information of sram bank. More...
 

Enumerations

enum  hal_fmc_bank_t { HAL_FMC_SRAM_BANK1 = 0u, HAL_FMC_SRAM_BANK2 = 1u, HAL_FMC_SRAM_BANK3 = 2u, HAL_FMC_SRAM_BANK4 = 3u }
 Defines the different memory banks. More...
 
enum  hal_fmc_memory_type_t { HAL_FMC_TYPE_SRAM = 0u, HAL_FMC_TYPE_PSRAM = 1u }
 Defines the different memory types. More...
 
enum  hal_fmc_memory_width_t { HAL_FMC_WIDTH_8B = 0u, HAL_FMC_WIDTH_16B = 1u, HAL_FMC_WIDTH_32B = 2u }
 Defines the available data bus widths. More...
 
enum  hal_fmc_access_mode_t { HAL_FMC_ACCESS_MODE_A = 0u, HAL_FMC_ACCESS_MODE_B = 1u, HAL_FMC_ACCESS_MODE_C = 2u, HAL_FMC_ACCESS_MODE_D = 3u }
 Defines the different available access modes. More...
 

Functions

void hal_fmc_reset (hal_fmc_bank_t bank) __attribute__((deprecated("Please use FMC_RESET().")))
 Resets fmc bank to default values. More...
 
void hal_fmc_init_sram (hal_fmc_bank_t bank, hal_fmc_sram_init_t init, hal_fmc_sram_timing_t timing)
 Initializes a fmc bank as SRAM. More...
 

Detailed Description

Interface of module hal_fmc.

The hardware abstraction layer for the memory controller.

$Id$

Enumeration Type Documentation

◆ hal_fmc_access_mode_t

Defines the different available access modes.

Enumerator
HAL_FMC_ACCESS_MODE_A 

Access mode A.

HAL_FMC_ACCESS_MODE_B 

Access mode B.

HAL_FMC_ACCESS_MODE_C 

Access mode C.

HAL_FMC_ACCESS_MODE_D 

Access mode D.

◆ hal_fmc_bank_t

Defines the different memory banks.

Enumerator
HAL_FMC_SRAM_BANK1 

SRAM bank 1 of 4.

HAL_FMC_SRAM_BANK2 

SRAM bank 2 of 4.

HAL_FMC_SRAM_BANK3 

SRAM bank 3 of 4.

HAL_FMC_SRAM_BANK4 

SRAM bank 4 of 4.

◆ hal_fmc_memory_type_t

Defines the different memory types.

Enumerator
HAL_FMC_TYPE_SRAM 

Asynchronous SRAM.

HAL_FMC_TYPE_PSRAM 

Synchronous SRAM.

◆ hal_fmc_memory_width_t

Defines the available data bus widths.

Enumerator
HAL_FMC_WIDTH_8B 

Data bus width: 8 bit.

HAL_FMC_WIDTH_16B 

Data bus width: 16 bit.

HAL_FMC_WIDTH_32B 

Data bus width: 32 bit.

Function Documentation

◆ hal_fmc_init_sram()

void hal_fmc_init_sram ( hal_fmc_bank_t  bank,
hal_fmc_sram_init_t  init,
hal_fmc_sram_timing_t  timing 
)

Initializes a fmc bank as SRAM.

Parameters
bank: Defines bank to initialize.
init: Structure with sram configuration.
timing: Structure with sram timing information.

◆ hal_fmc_reset()

void hal_fmc_reset ( hal_fmc_bank_t  bank)

Resets fmc bank to default values.

Parameters
bank: Defines bank to reset.