EBI - External Bus Interface

Description

EBI External Bus Interface (EBI) Peripheral API.

This module contains functions to control the EBI peripheral of Silicon Labs 32-bit MCUs and SoCs. The EBI is used for accessing external parallel devices. The devices appear as part of the internal memory map of the MCU.

Data Structures

struct EBI_Init_TypeDef
EBI Initialization structure.
struct EBI_TFTInit_TypeDef
TFT Initialization structure.

Functions

void EBI_Init (const EBI_Init_TypeDef *ebiInit)
Configure and enable the External Bus Interface.
void EBI_Disable (void)
Disable External Bus Interface.
void EBI_BankEnable (uint32_t banks, bool enable)
Enable or disable EBI Bank.
uint32_t EBI_BankAddress (uint32_t bank)
Return the base address of the EBI bank.
void EBI_NANDFlashEnable (uint32_t banks, bool enable)
Enable or disable EBI NAND Flash Support.
void EBI_ChipSelectEnable (uint32_t cs, bool enable)
Enable or disable EBI Chip Select.
void EBI_PolaritySet ( EBI_Line_TypeDef line, EBI_Polarity_TypeDef polarity)
Configure EBI pin polarity.
void EBI_ReadTimingSet (uint32_t setupCycles, uint32_t strobeCycles, uint32_t holdCycles)
Configure timing values of read bus accesses.
void EBI_WriteTimingSet (uint32_t setupCycles, uint32_t strobeCycles, uint32_t holdCycles)
Configure timing values of write bus accesses.
void EBI_AddressTimingSet (uint32_t setupCycles, uint32_t holdCycles)
Configure timing values of address latch bus accesses.
void EBI_TFTInit (const EBI_TFTInit_TypeDef *ebiTFTInit)
Configure and initialize TFT Direct Drive.
void EBI_TFTSizeSet (uint32_t horizontal, uint32_t vertical)
Configure and initialize TFT size settings.
void EBI_TFTHPorchSet (uint32_t front, uint32_t back, uint32_t pulseWidth)
Configure and initialize Horizontal Porch Settings.
void EBI_TFTVPorchSet (uint32_t front, uint32_t back, uint32_t pulseWidth)
Configure Vertical Porch Settings.
void EBI_TFTTimingSet (uint32_t dclkPeriod, uint32_t start, uint32_t setup, uint32_t hold)
Configure TFT Direct Drive Timing Settings.
void EBI_BankReadTimingConfig (uint32_t banks, bool pageMode, bool prefetch, bool halfRE)
Configure read operation parameters for a selected bank.
void EBI_BankReadTimingSet (uint32_t banks, uint32_t setupCycles, uint32_t strobeCycles, uint32_t holdCycles)
Configure timing values of read bus accesses.
void EBI_BankWriteTimingConfig (uint32_t banks, bool writeBufDisable, bool halfWE)
Configure write operation parameters for a selected bank.
void EBI_BankWriteTimingSet (uint32_t banks, uint32_t setupCycles, uint32_t strobeCycles, uint32_t holdCycles)
Configure timing values of write bus accesses.
void EBI_BankAddressTimingConfig (uint32_t banks, bool halfALE)
Configure address operation parameters for a selected bank.
void