This directory contains the board drivers to demonstrate the capabilities of the STM324x9I_EVAL Evaluation Board.
Update History
Main Changes
Update NOR device Timing configuration in BSP_NOR_Init()
Main Changes
Update Release_Notes.html to support new format
Main Changes
All source files: update disclaimer to add reference to the new license agreement.
Main Changes
Remove date & version
Add general description of BSP drivers
stm324x9i_eval_audio.c/.h:
Aligned with PDM library v3.0.0
stm324x9i_eval_lcd.c:
Update BSP_LCD_DrawBitmap() API to fix functional misbehaviour with SW4STM32 Toolchain
Notes:
This version must be used with v3.0.0 of PDM library
Main Changes
stm324x9i_eval_sd.c/.h:
Update BSP SD APIs following new HAL SD drivers implementation
Fix BlockSize to 512 bytes
stm324x9i_eval_audio.c/.h:
Add BSP_AUDIO_OUT_MspInit, BSP_AUDIO_OUT_MspDeInit and BSP_AUDIO_OUT_ClockConfig APIs as weak
Add BSP_AUDIO_IN_MspInit, BSP_AUDIO_IN_MspDeInit and BSP_AUDIO_IN_ClockConfig APIs as weak
Add BSP_AUDIO_OUT_DeInit and BSP_AUDIO_IN_DeInit APIs
stm324x9i_eval_sram.c/.h:
Add BSP_SRAM_MspInit API as weak
stm324x9i_eval_sdram.c/.h:
Add BSP_SDRAM_MspInit API as weak
stm324x9i_eval_camera.c/.h:
Add BSP_CAMERA_MspInit API as weak
Notes:
These BSP drivers break the compatibility with previous versions.
If FatFs is required, “FatFS R0.11 ST modified 20161223” must be used with this version of BSP drivers.
Main Changes
stm324x9i_eval.c/.h
Rework LCD initialization to ensure refresh rate of 60Hz.
Add new API “BSP_LCD_InitEx(uint32_t PclkConfig)” to propoerly manage LTCD pixel clock configuration.
Update “BSP_LCD_Init” to call new API BSP_LCD_InitEx().
Add LCD_MAX_PCLK/LCD_MIN_PCLK defines.
Add BSP_LCD_InitEx() function prototype.
Update VBP and HBP values used to calculate AccumulatedActiveH and AccumulatedActiveW for AMPIRE 480x272
stm324x9i_eval_ts.c:
Update BSP_TS_GetState() to return correct values of Touch Screen status and positions.
Main Changes
stm324x9i_eval.c/.h
Add AUDIO_IO_DeInit() function to align with Common V4.0.0
stm324x9i _eval_audio.c
Remove CODEC_Reset() function
Main Changes
stm324x9i_eval.c/.h
Update to support new 5.7" VGA LCD (AM640480FTNQW-T07H-A)
Update I2Cx_ReadMultiple() API to considers the multiple read of the exc7200 touch screen position
Add BSP_TS3510_IsDetected() API to detect which LCD is mounted on the board
In header file, add new defines for ts3510 and exc7200 touch screen components I2C addresses
stm324x9i _eval_ts.c/.h
Update to support new 5.7" VGA LCD (AM640480FTNQW-T07H-A)
Update BSP_TS_Init() API to initialize the connected LCD device
Update BSP_TS_GetState() API to calculate the (x,y) position for the mounted LCD device
In header file, update to include the new touch screen component driver (exc7200)
stm324x9i _eval_sdram.c/.h
Update BSP_SDRAM_Init() API to set the right column bits number configuration according to the IS42S32800(ISSI) component available on the board
Main Changes
stm324x9i_eval.c/.h
Align to STM32F4xx HAL Driver V1.3.0 for __HAL_RCC_PPP_CLK_ENABLE()
stm324x9i _eval_audio.c/.h
BSP_AUDIO_OUT_Play()/BSP_AUDIO_OUT_ChangeBuffer() add cast uint8_t on data pointer: update according to the HAL SAI driver update to support companding mode which works only with data type on 8-bits.
stm324x9i _eval_lcd.c
BSP_LCD_Init() update to check if DATA_IN_ExtSDRAM is enabled or not to avoid the re-initialization for SDRAM interface.
Main Changes
stm324x9i_eval.c/.h
Change I2C_SPEED used define by BSP_I2C_SPEED
stm324x9i_eval_camera.c
BSP_CAMERA_Init(): Update the Initialization and Stop APIs to set and reset the STANDBY pin (to avoid conflict with SDCard detect pin)
stm324x9i_eval_camera.h, stm324x9i_eval_audio.h, stm324x9i_eval_eeprom.h, stm324x9i_eval_io.h, stm324x9i_eval_ts.h and stm324x9i_eval_lcd.c/.h
Change “" by”/" in the include path to fix compilation issue under Linux
stm324x9i_eval_nor.c/.h
Change NOR status definition NOR_OK and NOR_ERROR by NOR_STATUS_OK and NOR_STATUS_ERROR, respectively
stm324x9i_eval_sdram.c
BSP_SDRAM_Initialization_sequence(): Fix wrong configuration of the burst length
Miscellaneous comments update
Main Changes
stm324x9i_eval.c/.h
Add protection for double initialization of IO_Init within LCD_IO_Init()
Enhance BSP_PB_Init() function by removing the call of __SYSCFG_CLK_ENABLE() already enabled in the HAL_GPIO_Init()
stm324x9i _eval_audio.c/.h
Add note that only the audio stereo format is supported
stm324x9i_eval_sd.c/.h
Ensure compatibility with the updated version of FatFs sd_diskio driver (i.e. FatFs R0.10 ST modified 20140422) supporting SDIO/SPI to interface uSD
stm324x9i_eval_lcd.c/.h
Update LCD clock configuration of 5.7" screen to avoid flicker effect within BSP_LCD_Init()
Comments clean up and typo corrections
Main Changes
stm324x9i_eval_sd.c/.h
Update SD_DATATIMEOUT value
stm324x9i_eval_eeprom.c/.h
Update usage of BSP_EEPROM_TIMEOUT_UserCallback() function
Main Changes
Major update based on STM32Cube specification: drivers architecture and APIs modified vs. V1.0.3, and thus the 2 versions are not compatible.
This version has to be used only with STM32CubeF4 based development
Main Changes
stm324x9i_eval_ioe8.c/.h
Enhance the Touch panel detection in IOE_TS_GetState() function : Add a check on FIFO Threshold value before reading X and Y position
Known Limitations
stm324x9i_eval_audio_codec.c/.h
If 2 audio streams are played in TDM format (the first stream is configured in codec SLOT0 and second stream in codec SLOT1) the Pause/Resume, Volume Control and Mute action will apply on both streams.
Main Changes
stm324x9i_eval_lcd.c
Update BUFFER_OFFSET define value from 0x130000 to 0x12C000 and comment to explain how to compute this value
LCD_DeInit() function: remove SDRAM pins configuration, this is done in SDRAM driver
LCD_Init() function: in case where AMPIRE 640x480 LCD is used, add a call to LCD_I2C_Config() to initialize I2C for touch panel usage
Update and optimize LCD_Clear() function
Update and optimize putPixel() function: write directly to the SDRAM instead of the use of LCD_DrawLine() function
GetPosition() function: add more comments in the header about the format of the data returned by this function
GetPosition() function: remove the I2C configuration (it’s already done in LCD_Init() function)
LCD_CheckDevice() function: replace LCD_I2C_Config() by IOE_Config()
LCD_I2C_Config() function: add a test, if I2C is already configured, then there is no need to reconfigure it again
stm324x9i_eval_ioe8.c/.h
Remove EXTI line configuration macros
Remove VERIFY_WRITTENDATA macro, and remove verify written data block from I2C_WriteDeviceRegister() function
stm324x9i_eval_ioe16.c/.h
Remove VERIFY_WRITTENDATA macro, and remove verify written data block from IOE16_I2C_WriteDeviceRegister() function
stm324x9i_eval_audio_codec.c/.h
In Audio_MAL_IRQHandler() Remove local variables pAddr and Size and replace them by existing global variables CurrentPos and AudioRemSize
Known Limitations
stm324x9i_eval_audio_codec.c/.h
If 2 audio streams are played in TDM format (the first stream is configured in codec SLOT0 and second stream in codec SLOT1) the Pause/Resume, Volume Control and Mute action will apply on both streams.
Main Changes
stm324x9i_eval_lcd.c
Update LCD_DisplayOff() function : Remove GPIO PA8 and PC6 configuration in low level, as we don’t need to configure any more these GPIO w/ STM32x9I-EVAL Boards RevB
Add comments for LCD_GetPosition() and LCD_CheckDevice function
stm324x9i_eval_ioe8.c/.h
Update IOE_TS_GetState() function : Enhance the TS detection algorithm
Update IOE_TS_Config() function : Update IOE FIFO threshold register value to 0x01 instead of 0x0F and update touch screen operation mode register value to 0x01 instead of 0x03
Add condition in IOE_GPIO_Config() and IOE_I2C_Config() functions to prevent I2C and its GPIOs reconfiguration
Update I2C_ReadDataBuffer() function: remove check at “I2C_FLAG_BUSY” in the beginning of the function
stm324x9i_eval_ioe16.c/.h
Add condition in IOE16_GPIO_Config() and IOE16_I2C_Config() functions to prevent I2C and its GPIOs reconfiguration
Known Limitations
stm324x9i_eval_audio_codec.c/.h
If 2 audio streams are played in TDM format (the first stream is configured in codec SLOT0 and second stream in codec SLOT1) the Pause/Resume, Volume Control and Mute action will apply on both streams.
Main Changes
First official release for STM324x9I_EVAL board drivers.
Known Limitations
stm324x9i_eval_audio_codec.c/.h
If 2 audio streams are played in TDM format (the first stream is configured in codec SLOT0 and second stream in codec SLOT1) the Pause/Resume, Volume Control and Mute action will apply on both streams.