BSP driver for DISCO_L496AG

Dependents:   DISCO_L496AG-LCD-prova_1 DISCO_L496AG-LCD-prova_2 DISCO_L496AG-LCD-demo DISCO_L496AG-SRAM-demo

Embed: (wiki syntax)

« Back to documentation index

Bus Operations Functions

Bus Operations Functions
[STM32L496G-DISCOVERY Common]

Functions

void I2C2_Init (void)
 Discovery I2C2 Bus initialization.
void I2C2_DeInit (void)
 Discovery I2C2 Bus Deinitialization.
void FMC_BANK1_MspInit (void)
 Initializes FMC_BANK1_LCD_IO MSP.
void FMC_BANK1_MspDeInit (void)
 DeInitializes FMC_BANK1_LCD_IO MSP.
static void I2C2_MspInit (I2C_HandleTypeDef *hi2c)
 Discovery I2C2 MSP Initialization.
static void I2C2_MspDeInit (I2C_HandleTypeDef *hi2c)
 Discovery I2C2 MSP DeInitialization.
static void I2C2_WriteData (uint16_t Addr, uint16_t Reg, uint16_t RegSize, uint8_t Value)
 Write a value in a register of the device through BUS.
static HAL_StatusTypeDef I2C2_WriteBuffer (uint16_t Addr, uint16_t Reg, uint16_t RegSize, uint8_t *pBuffer, uint16_t Length)
 Write a value in a register of the device through BUS.
static uint8_t I2C2_ReadData (uint16_t Addr, uint16_t Reg, uint16_t RegSize)
 Read a register of the device through BUS.
static HAL_StatusTypeDef I2C2_ReadBuffer (uint16_t Addr, uint16_t Reg, uint16_t RegSize, uint8_t *pBuffer, uint16_t Length)
 Reads multiple data on the BUS.
static void I2C2_Error (void)
 Discovery I2C2 error treatment function.
static void I2Cx_Init (I2C_HandleTypeDef *i2c_handler)
 Initializes I2C HAL.
static HAL_StatusTypeDef I2Cx_ReadMultiple (I2C_HandleTypeDef *i2c_handler, uint8_t Addr, uint16_t Reg, uint16_t MemAddress, uint8_t *Buffer, uint16_t Length)
 Reads multiple data.
static HAL_StatusTypeDef I2Cx_WriteMultiple (I2C_HandleTypeDef *i2c_handler, uint8_t Addr, uint16_t Reg, uint16_t MemAddress, uint8_t *Buffer, uint16_t Length)
 Writes a value in a register of the device through BUS in using DMA mode.
static void I2Cx_Error (I2C_HandleTypeDef *i2c_handler, uint8_t Addr)
 Manages error callback by re-initializing I2C.
void MFX_IO_Init (void)
 iobus prototypes (they should be defined in common/stm32_iobus.h)
void MFX_IO_DeInit (void)
 Deinitializes MFX low level.
void MFX_IO_ITConfig (void)
 Configures MFX low level interrupt.
void MFX_IO_EnableWakeupPin (void)
 Configures MFX wke up pin.
void MFX_IO_Wakeup (void)
 Wakeup MFX.
void MFX_IO_Write (uint16_t addr, uint8_t reg, uint8_t value)
 MFX writes single data.
uint8_t MFX_IO_Read (uint16_t addr, uint8_t reg)
 MFX reads single data.
uint16_t MFX_IO_ReadMultiple (uint16_t addr, uint8_t reg, uint8_t *buffer, uint16_t length)
 MFX reads multiple data.
void MFX_IO_WriteMultiple (uint16_t Addr, uint8_t Reg, uint8_t *Buffer, uint16_t Length)
 MFX writes multiple data.
void MFX_IO_Delay (uint32_t delay)
 MFX delay.
void AUDIO_IO_Init (void)
 Initializes Audio low level.
void AUDIO_IO_DeInit (void)
 Deinitializes Audio low level.
void AUDIO_IO_Write (uint8_t Addr, uint8_t Reg, uint8_t Value)
 Writes a single data.
uint8_t AUDIO_IO_Read (uint8_t Addr, uint8_t Reg)
 Reads a single data.
void AUDIO_IO_Delay (uint32_t Delay)
 AUDIO Codec delay.
static void FMC_BANK1_Init (void)
 Initializes LCD IO.
static void FMC_BANK1_WriteData (uint16_t Data)
 Writes register value.
static void FMC_BANK1_WriteReg (uint8_t Reg)
 Writes register address.
static uint16_t FMC_BANK1_ReadData (void)
 Reads register value.
void LCD_IO_Init (void)
 Initializes LCD low level.
void LCD_IO_WriteData (uint16_t RegValue)
 Writes data on LCD data register.
void LCD_IO_WriteMultipleData (uint16_t *pData, uint32_t Size)
 Writes several data on LCD data register.
void LCD_IO_WriteReg (uint8_t Reg)
 Writes register on LCD register.
uint16_t LCD_IO_ReadData (void)
 Reads data from LCD data register.
void LCD_IO_Delay (uint32_t Delay)
 LCD delay.
void TS_IO_Init (void)
 Initializes Touchscreen low level.
void TS_IO_Write (uint8_t Addr, uint8_t Reg, uint8_t Value)
 Writes a single data.
uint8_t TS_IO_Read (uint8_t Addr, uint8_t Reg)
 Reads a single data.
uint16_t TS_IO_ReadMultiple (uint8_t Addr, uint8_t Reg, uint8_t *Buffer, uint16_t Length)
 Reads multiple data with I2C communication channel from TouchScreen.
void TS_IO_WriteMultiple (uint8_t Addr, uint8_t Reg, uint8_t *Buffer, uint16_t Length)
 Writes multiple data with I2C communication channel from MCU to TouchScreen.
void TS_IO_Delay (uint32_t Delay)
 Delay function used in TouchScreen low level driver.
void CAMERA_IO_Init (void)
 Initializes Camera low level.
void CAMERA_IO_Write (uint8_t Addr, uint8_t Reg, uint8_t Value)
 Camera writes single data.
uint8_t CAMERA_IO_Read (uint8_t Addr, uint8_t Reg)
 Camera reads single data.
void CAMERA_Delay (uint32_t Delay)
 Camera delay.

Function Documentation

void AUDIO_IO_DeInit ( void   )

Deinitializes Audio low level.

Return values:
None

Definition at line 1173 of file stm32l496g_discovery.c.

void AUDIO_IO_Delay ( uint32_t  Delay )

AUDIO Codec delay.

Parameters:
Delay,:Delay in ms
Return values:
None

Definition at line 1233 of file stm32l496g_discovery.c.

void AUDIO_IO_Init ( void   )

Initializes Audio low level.

Return values:
None

Definition at line 1132 of file stm32l496g_discovery.c.

uint8_t AUDIO_IO_Read ( uint8_t  Addr,
uint8_t  Reg 
)

Reads a single data.

Parameters:
Addr,:I2C address
Reg,:Reg address
Return values:
Datato be read

Definition at line 1219 of file stm32l496g_discovery.c.

void AUDIO_IO_Write ( uint8_t  Addr,
uint8_t  Reg,
uint8_t  Value 
)

Writes a single data.

Parameters:
Addr,:I2C address
Reg,:Reg address
Value,:Data to be written
Return values:
None

Definition at line 1208 of file stm32l496g_discovery.c.

void CAMERA_Delay ( uint32_t  Delay )

Camera delay.

Parameters:
Delay,:Delay in ms
Return values:
None

Definition at line 1631 of file stm32l496g_discovery.c.

void CAMERA_IO_Init ( void   )

Initializes Camera low level.

Return values:
None

Definition at line 1594 of file stm32l496g_discovery.c.

uint8_t CAMERA_IO_Read ( uint8_t  Addr,
uint8_t  Reg 
)

Camera reads single data.

Parameters:
Addr,:I2C address
Reg,:Register address
Return values:
Readdata

Definition at line 1617 of file stm32l496g_discovery.c.

void CAMERA_IO_Write ( uint8_t  Addr,
uint8_t  Reg,
uint8_t  Value 
)

Camera writes single data.

Parameters:
Addr,:I2C address
Reg,:Register address
Value,:Data to be written
Return values:
None

Definition at line 1606 of file stm32l496g_discovery.c.

void FMC_BANK1_Init ( void   ) [static]

Initializes LCD IO.

Parameters:
None
Return values:
None

Definition at line 1306 of file stm32l496g_discovery.c.

void FMC_BANK1_MspDeInit ( void   )

DeInitializes FMC_BANK1_LCD_IO MSP.

Parameters:
None
Return values:
None

Definition at line 1364 of file stm32l496g_discovery.c.

void FMC_BANK1_MspInit ( void   )

Initializes FMC_BANK1_LCD_IO MSP.

Parameters:
None
Return values:
None

Definition at line 1247 of file stm32l496g_discovery.c.

static uint16_t FMC_BANK1_ReadData ( void   ) [static]

Reads register value.

Parameters:
None
Return values:
Readvalue

Definition at line 1420 of file stm32l496g_discovery.c.

static void FMC_BANK1_WriteData ( uint16_t  Data ) [static]

Writes register value.

Parameters:
Data,:Data to be written
Return values:
None

Definition at line 1398 of file stm32l496g_discovery.c.

static void FMC_BANK1_WriteReg ( uint8_t  Reg ) [static]

Writes register address.

Parameters:
Reg,:Register to be written
Return values:
None

Definition at line 1409 of file stm32l496g_discovery.c.

void I2C2_DeInit ( void   )

Discovery I2C2 Bus Deinitialization.

Return values:
None

Definition at line 628 of file stm32l496g_discovery.c.

static void I2C2_Error ( void   ) [static]

Discovery I2C2 error treatment function.

Return values:
None

Definition at line 811 of file stm32l496g_discovery.c.

void I2C2_Init ( void   )

Discovery I2C2 Bus initialization.

Return values:
None

Definition at line 555 of file stm32l496g_discovery.c.

static void I2C2_MspDeInit ( I2C_HandleTypeDef *  hi2c ) [static]

Discovery I2C2 MSP DeInitialization.

Parameters:
hi2c,:I2C2 handle
Return values:
None

Definition at line 643 of file stm32l496g_discovery.c.

static void I2C2_MspInit ( I2C_HandleTypeDef *  hi2c ) [static]

Discovery I2C2 MSP Initialization.

Parameters:
hi2c,:I2C2 handle
Return values:
None

Definition at line 579 of file stm32l496g_discovery.c.

static HAL_StatusTypeDef I2C2_ReadBuffer ( uint16_t  Addr,
uint16_t  Reg,
uint16_t  RegSize,
uint8_t *  pBuffer,
uint16_t  Length 
) [static]

Reads multiple data on the BUS.

Parameters:
Addr,:I2C Address
Reg,:Reg Address
RegSize: The target register size (can be 8BIT or 16BIT)
pBuffer,:pointer to read data buffer
Length,:length of the data
Return values:
0if no problems to read multiple data

Definition at line 787 of file stm32l496g_discovery.c.

static uint8_t I2C2_ReadData ( uint16_t  Addr,
uint16_t  Reg,
uint16_t  RegSize 
) [static]

Read a register of the device through BUS.

Parameters:
Addr,:Device address on BUS
Reg,:The target register address to read
RegSize,:The target register size (can be 8BIT or 16BIT)
Return values:
readregister value

Definition at line 734 of file stm32l496g_discovery.c.

static HAL_StatusTypeDef I2C2_WriteBuffer ( uint16_t  Addr,
uint16_t  Reg,
uint16_t  RegSize,
uint8_t *  pBuffer,
uint16_t  Length 
) [static]

Write a value in a register of the device through BUS.

Parameters:
Addr,:Device address on BUS Bus.
Reg,:The target register address to write
RegSize,:The target register size (can be 8BIT or 16BIT)
pBuffer,:The target register value to be written
Length,:buffer size to be written
Return values:
None

Definition at line 706 of file stm32l496g_discovery.c.

static void I2C2_WriteData ( uint16_t  Addr,
uint16_t  Reg,
uint16_t  RegSize,
uint8_t  Value 
) [static]

Write a value in a register of the device through BUS.

Parameters:
Addr,:Device address on BUS Bus.
Reg,:The target register address to write
RegSize,:The target register size (can be 8BIT or 16BIT)
Value,:The target register value to be written
Return values:
None

Definition at line 678 of file stm32l496g_discovery.c.

static void I2Cx_Error ( I2C_HandleTypeDef *  i2c_handler,
uint8_t  Addr 
) [static]

Manages error callback by re-initializing I2C.

Parameters:
i2c_handler: I2C handler
Addr,:I2C Address
Return values:
None

Definition at line 941 of file stm32l496g_discovery.c.

static void I2Cx_Init ( I2C_HandleTypeDef *  i2c_handler ) [static]

Initializes I2C HAL.

Parameters:
i2c_handler: I2C handler
Return values:
None

Definition at line 830 of file stm32l496g_discovery.c.

static HAL_StatusTypeDef I2Cx_ReadMultiple ( I2C_HandleTypeDef *  i2c_handler,
uint8_t  Addr,
uint16_t  Reg,
uint16_t  MemAddress,
uint8_t *  Buffer,
uint16_t  Length 
) [static]

Reads multiple data.

Parameters:
i2c_handler: I2C handler
Addr,:I2C address
Reg,:Reg address
MemAddress,:Memory address
Buffer,:Pointer to data buffer
Length,:Length of the data
Return values:
Numberof read data

Definition at line 885 of file stm32l496g_discovery.c.

static HAL_StatusTypeDef I2Cx_WriteMultiple ( I2C_HandleTypeDef *  i2c_handler,
uint8_t  Addr,
uint16_t  Reg,
uint16_t  MemAddress,
uint8_t *  Buffer,
uint16_t  Length 
) [static]

Writes a value in a register of the device through BUS in using DMA mode.

Parameters:
i2c_handler: I2C handler
Addr,:Device address on BUS Bus.
Reg,:The target register address to write
MemAddress,:Memory address
Buffer,:The target register value to be written
Length,:buffer size to be written
Return values:
HALstatus

Definition at line 915 of file stm32l496g_discovery.c.

void LCD_IO_Delay ( uint32_t  Delay )

LCD delay.

Parameters:
Delay,:Delay in ms
Return values:
None

Definition at line 1494 of file stm32l496g_discovery.c.

void LCD_IO_Init ( void   )

Initializes LCD low level.

Parameters:
None
Return values:
None

Definition at line 1436 of file stm32l496g_discovery.c.

uint16_t LCD_IO_ReadData ( void   )

Reads data from LCD data register.

Parameters:
None
Return values:
Readdata.

Definition at line 1484 of file stm32l496g_discovery.c.

void LCD_IO_WriteData ( uint16_t  RegValue )

Writes data on LCD data register.

Parameters:
Data,:Data to be written
Return values:
None

Definition at line 1446 of file stm32l496g_discovery.c.

void LCD_IO_WriteMultipleData ( uint16_t *  pData,
uint32_t  Size 
)

Writes several data on LCD data register.

Parameters:
Data,:pointer on data to be written
Size,:data amount in 16bits short unit
Return values:
None

Definition at line 1458 of file stm32l496g_discovery.c.

void LCD_IO_WriteReg ( uint8_t  Reg )

Writes register on LCD register.

Parameters:
Reg,:Register to be written
Return values:
None

Definition at line 1473 of file stm32l496g_discovery.c.

void MFX_IO_DeInit ( void   )

Deinitializes MFX low level.

Return values:
None

Definition at line 986 of file stm32l496g_discovery.c.

void MFX_IO_Delay ( uint32_t  Delay )

MFX delay.

Parameters:
Delay,:Delay in ms
Return values:
None

Definition at line 1121 of file stm32l496g_discovery.c.

void MFX_IO_EnableWakeupPin ( void   )

Configures MFX wke up pin.

Return values:
None

Definition at line 1036 of file stm32l496g_discovery.c.

void MFX_IO_Init ( void   )

iobus prototypes (they should be defined in common/stm32_iobus.h)

Initializes MFX low level.

Return values:
Noneiobus prototypes (they should be defined in common/stm32_iobus.h)
None

Definition at line 971 of file stm32l496g_discovery.c.

void MFX_IO_ITConfig ( void   )

Configures MFX low level interrupt.

Return values:
None

Definition at line 1013 of file stm32l496g_discovery.c.

uint8_t MFX_IO_Read ( uint16_t  Addr,
uint8_t  Reg 
)

MFX reads single data.

Parameters:
Addr,:I2C address
Reg,:Register address
Return values:
Readdata

Definition at line 1085 of file stm32l496g_discovery.c.

uint16_t MFX_IO_ReadMultiple ( uint16_t  Addr,
uint8_t  Reg,
uint8_t *  Buffer,
uint16_t  Length 
)

MFX reads multiple data.

Parameters:
Addr,:I2C address
Reg,:Register address
Buffer,:Pointer to data buffer
Length,:Length of the data
Return values:
Numberof read data

Definition at line 1098 of file stm32l496g_discovery.c.

void MFX_IO_Wakeup ( void   )

Wakeup MFX.

Return values:
None

Definition at line 1055 of file stm32l496g_discovery.c.

void MFX_IO_Write ( uint16_t  Addr,
uint8_t  Reg,
uint8_t  Value 
)

MFX writes single data.

Parameters:
Addr,:I2C address
Reg,:Register address
Value,:Data to be written
Return values:
None

Definition at line 1074 of file stm32l496g_discovery.c.

void MFX_IO_WriteMultiple ( uint16_t  Addr,
uint8_t  Reg,
uint8_t *  Buffer,
uint16_t  Length 
)

MFX writes multiple data.

Parameters:
Addr,:I2C address
Reg,:Register address
Buffer,:Pointer to data buffer
Length,:Length of the data
Return values:
None

Definition at line 1111 of file stm32l496g_discovery.c.

void TS_IO_Delay ( uint32_t  Delay )

Delay function used in TouchScreen low level driver.

Parameters:
Delay,:Delay in ms
Return values:
None

Definition at line 1583 of file stm32l496g_discovery.c.

void TS_IO_Init ( void   )

Initializes Touchscreen low level.

Return values:
None

Definition at line 1505 of file stm32l496g_discovery.c.

uint8_t TS_IO_Read ( uint8_t  Addr,
uint8_t  Reg 
)

Reads a single data.

Parameters:
Addr,:I2C address
Reg,:Reg address
Return values:
Datato be read

Definition at line 1545 of file stm32l496g_discovery.c.

uint16_t TS_IO_ReadMultiple ( uint8_t  Addr,
uint8_t  Reg,
uint8_t *  Buffer,
uint16_t  Length 
)

Reads multiple data with I2C communication channel from TouchScreen.

Parameters:
Addr,:I2C address
Reg,:Register address
Buffer,:Pointer to data buffer
Length,:Length of the data
Return values:
Numberof read data

Definition at line 1559 of file stm32l496g_discovery.c.

void TS_IO_Write ( uint8_t  Addr,
uint8_t  Reg,
uint8_t  Value 
)

Writes a single data.

Parameters:
Addr,:I2C address
Reg,:Reg address
Value,:Data to be written
Return values:
None

Definition at line 1534 of file stm32l496g_discovery.c.

void TS_IO_WriteMultiple ( uint8_t  Addr,
uint8_t  Reg,
uint8_t *  Buffer,
uint16_t  Length 
)

Writes multiple data with I2C communication channel from MCU to TouchScreen.

Parameters:
Addr,:I2C address
Reg,:Register address
Buffer,:Pointer to data buffer
Length,:Length of the data
Return values:
None

Definition at line 1573 of file stm32l496g_discovery.c.