Release Notes for STM324x9I_EVAL Evaluation Board

# Release Notes for

# STM324x9I_EVAL Evaluation Board

Copyright © 2017 STMicroelectronics

# Purpose

This directory contains the board drivers to demonstrate the capabilities of the STM324x9I_EVAL Evaluation Board.

# Update History

V3.0.3 / 22-September-2023

## Main Changes

- Update Release_Notes.html to support new format

V3.0.2 / 11-Fabruary-2022

## Main Changes

- All source files: update disclaimer to add reference to the new license agreement.

V3.0.1 / 21-September-2017

## 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

V3.0.0 / 27-January-2017

## 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.

V2.2.1 / 07-October-2015

## 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.

V2.2.0 / 14-August-2015

## 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

V2.1.0 / 26-June-2015

## 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

V2.0.4 / 03-March-2015

## 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.

V2.0.3 / 10-December-2014

## 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

V2.0.2 / 19-June-2014

## 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

V2.0.1 / 26-Fabruary-2014

## Main Changes

- stm324x9i_eval_sd.c/.h
  - Update SD_DATATIMEOUT value
- stm324x9i_eval_eeprom.c/.h
  - Update usage of BSP_EEPROM_TIMEOUT_UserCallback() function

V2.0.0 / 18-Fabruary-2014

## 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

V1.0.3 / 13-November-2013

## 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.

V1.0.2 / 08-November-2013

## 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.

V1.0.1 / 11-October-2013

## 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.

V1.0.0 / 19-September-2013

## 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.