Release Notes for Projects of STM32CubeF2 Firmware Package

Copyright © 2017 STMicroelectronics

Purpose

The projects are a set of applicative tasks that aim to explain and provide use cases of the different products features based on the products hardware (Boards, STM32 Core(s) features, interconnections and peripherals) and built around the different firmware components. They can be directly used or adapted by the STM32CubeF2 Firmware Package users. They provide basic functionalities, show main features or demonstrate performance. They are provided with preconfigured projects for the main supported toolchains.

In the STM32CubeF2 Firmware Package, the projects are organized in a sequential scheme based on the following levels:

The Project Class refers to the main peripherals (drivers), middleware libraries or BSP classes while the projects Subclass stands for a project specific feature within a class.

The exhaustive list of projects is provided in this table: STM32CubeProjectsList.

Update History

Maintenance release

Main Changes

NUCLEO-F207ZG:

  • Applications

    • USB Host MSC applications: fix Stack corruption due to inconsistent type of local variable in MSC_File_Operations().

STM322xG_EVAL:

  • Applications

    • FreeRTOS_LowPower application: Update FreeRTOS LowPower application to support FreeRTOS v10.3.1.

Maintenance release

Main Changes

NUCLEO-F207ZG:

  • Applications

    • Replace hard-coded page end address by a variable in EE_VerifyPageFullyErased() to consider both PAGE 0 and PAGE 1 instead of only PAGE 0 in EEPROM emulation application.

Maintenance release

Main Changes

  • Fix include path on some SW4STM32 Projects.

Known Limitations

  • Warnings detected with LibJPEG applications are related to the Libjpeg third party MW stack V8d with System Workbench for STM32 (SW4STM32) V2.9:
    • No impact of these warnings on the functional behavior

Development Toolchains and Compilers

  • IAR Embedded Workbench for ARM (EWARM) toolchain V8.40.2+ ST-Link
  • RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.31 + ST-LINK
  • System Workbench for STM32 (SW4STM32) toolchain V2.9 + ST-Link

Supported Devices and EVAL boards

  • STM32F217xx/215xx/207xx/205xx devices and STM322xG_EVAL board RevC
  • STM32F207ZG and STM32F207ZG-Nucleo board RevB

Backward Compatibility

  • None

Dependencies

  • None

Maintenance release

Main Changes

  • No changes compared to previous version

Maintenance release

Main Changes

  • No changes compared to previous version.

Maintenance release

Main Changes

  • No changes compared to previous version.

Maintenance release

Main Changes

STM322xG_EVAL:

  • Applications

    • Add EEPROM application running on STM322xG-EVAL
      • This application describes the software solution for substituting standalone EEPROM by emulating the EEPROM mechanism using the on-chip Flash of STM32F2xx devices.
    • Add IAP application running on STM322xG-EVAL
      • This application describes how to be loaded into Flash memory using In-Application Programming (IAP, through USART).
    • Update MbedTLS applications to be compliant with new MbedTLS architecture
    • Update FreeRTOS applications to be compliant with new FreeRTOS architecture
    • Update STemWin applications to be compliant with new STemWin architecture
    • Update USB HOST projects to be compliant with USB Host Stack V3.3.3
      • Add the following USB callback in usbh_conf.c user file:
        • HAL_HCD_PortEnabled_Callback()
        • HAL_HCD_PortDisabled_Callback()
    • Update USB Device projects for 207xx/217xx devices to be compliant with USB Device V2.5.3
      • USB HS mode isn’t supported by these STM32 devices
    • Update USB device applications by adding a UNUSED() macro in the following API on file usbd_desc.c files in order to avoid compilation warnings with EWARM 8.30
      • USBD_DFU_DeviceDescriptor()
      • USBD_DFU_LangIDStrDescriptor()
      • USBD_DFU_ManufacturerStrDescriptor()
      • USBD_DFU_SerialStrDescriptor()
    • Remove useless setting of ep0_mps in usbd_conf.c file for USB device applications
  • Examples

    • Update CAN examples to support new HAL CAN driver.
    • Update HAL CRYP examples to be aligned with new HAL CRYP drivers
    • Update HAL I2C examples to be compliant with new I2C API
    • Rework GPIO_InfiniteLedToggling_Init LL example to use GPIO initialization structure for GPIO configuration instead of LL inline macros
    • Update DMA FIFO Mode examples to use HAL DMA registers Callback API to register the different DMA transfer Callbacks

Contents

Projects

Projects STM322xG_EVAL
Board Project category Version Path
STM322xG_EVAL Applications V1.1.4 Projects/STM322xG_EVAL/Applications
STM322xG_EVAL Examples V1.1.4 Projects/STM322xG_EVAL/Examples

Known Limitations

  • Warnings detected with LibJPEG applications are related to the Libjpeg third party MW stack V8d with System Workbench for STM32 (SW4STM32) V2.9:
    • No impact of these warnings on the functional behavior

Development Toolchains and Compilers

  • IAR Embedded Workbench for ARM (EWARM) toolchain V8.20.2+ ST-Link
  • RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.26 + ST-LINK
  • System Workbench for STM32 (SW4STM32) toolchain V2.9 + ST-Link

Supported Devices and EVAL boards

  • STM32F217xx/215xx/207xx/205xx devices and STM322xG_EVAL board RevC
  • STM32F207ZG and STM32F207ZG-Nucleo board RevB

Backward Compatibility

  • None

Dependencies

  • None

Maintenance release

Main Changes

  • Fix MDK-ARM limitation with STemWin sample demo application on STM322xG_EVAL

Known Limitations

  • None

Development Toolchains and Compilers

  • IAR Embedded Workbench for ARM (EWARM) toolchain V7.80.4 + ST-Link
  • RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.23 + ST-LINK
  • System Workbench for STM32 (SW4STM32) toolchain V1.14 + ST-Link

Supported Devices and EVAL boards

  • STM32F217xx/215xx/207xx/205xx devices and STM322xG_EVAL board RevC
  • STM32F207ZG and STM32F207ZG-Nucleo board RevB

Backward Compatibility

  • None

Dependencies

  • None

Maintenance release

Main Changes

NUCLEO-F207ZG:

  • Templates

    • Add support for HAL MMC driver.

STM322xG_EVAL:

  • Templates

    • Add support for HAL MMC driver.

Contents

Projects

Projects STM322xG_EVAL
Board Project category Version Path
STM322xG_EVAL Templates V1.1.3 Projects/STM322xG_EVAL/Templates
Projects NUCLEO-F207ZG
Board Project category Version Path
NUCLEO-F207ZG Templates V1.0.3 Projects/NUCLEO-F207ZG/Templates

Known Limitations

  • STemWin sample demo application on STM322xG_EVAL is not fully functional with MDK-ARM toolchain: the application doesn’t run successfully after the second hit of the Hide Button. in fact when pressing the button again while the progress bar displays the next steps, pressing Hide or Next Buttons are not working anymore

Development Toolchains and Compilers

  • IAR Embedded Workbench for ARM (EWARM) toolchain V7.80.1
  • RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.23
  • Atollic TrueSTUDIO STM32 (TrueSTUDIO) toolchain v7.0.0
  • System Workbench for STM32 (SW4STM32) toolchain V1.14

Supported Devices and EVAL boards

  • STM32F217xx/215xx/207xx/205xx devices and STM322xG_EVAL board RevC
  • STM32F207ZG and STM32F207ZG-Nucleo board RevB

Backward Compatibility

  • None

Dependencies

  • None

Maintenance release

Main Changes

  • Add new mbedTLS applications to replace PolarSSL middleware applications
  • Update overall projects to be aligned with latest version of HAL, BSP and Middleware drivers

STM32F207ZG-Nucleo:

  • Applications

    • Update applications projects to support latest version of FatFS and LwIP middleware
    • Update system_stm32f2xx.c file in all projects to be aligned with latest version of CMSIS STM32F2xx device implementation
    • Update stm32f2xx_hal_conf.h file in all projects to be aligned with new conf_template.h
    • Update USB applications to enhance implementation
  • Demonstrations

    • Update system_stm32f2xx.c file to be aligned with latest version of CMSIS STM32F2xx device implementation
    • Update stm32f2xx_hal_conf.h file to be aligned with new conf_template.h
  • Examples

    • General examples projects update to be aligned with new HAL SD and BSP Drivers implementation
    • Update system_stm32f2xx.c file in all projects to be aligned with latest version of CMSIS STM32F2xx device implementation
    • Update stm32f2xx_hal_conf.h file in all projects to be aligned with new conf_template.h
    • Update DMA_FLASHToRAM example to use FIFO mode instead of direct mode for memory to memory transfer
  • Low Layer Examples

First official release.

  • Low Layer MIX Examples

First official release.

  • Templates LL

First official release containing the Low Layer templates.

STM322xG-EVAL:

  • Applications

    • General applications projects update to be aligned with new HAL SD and BSP Drivers implementation
    • Update applications projects to support latest version of FatFS, LibJPEG and LwIP middleware
    • Add new applications SSL_Server and SSL_Client for mbedTLS middleware
    • Remove the PolarSSL applications: no more supported within the STM32Cube_FW_F2 and replaced by mbedTLS applications
    • USB_Device/CDC_Standalone application
      • Update CDC descriptor to support Windows 10
    • USB_HOST/FWUpgrade_Standalone
    • Update to support non 32-bits aligned firmware binaries
      • Update applications related to STemWin library to support STemWin 5.32 version
    • Update system_stm32f2xx.c file in all projects to be aligned with latest version of CMSIS STM32F2xx device implementation
    • Update stm32f2xx_hal_conf.h file in all projects to be aligned with new conf_template.h
  • Examples

    • General examples projects update to be aligned with new HAL SD and BSP Drivers implementation
    • Update system_stm32f2xx.c file in all projects to be aligned with latest version of CMSIS STM32F2xx device implementation
    • Update stm32f2xx_hal_conf.h file in all projects to be aligned with new conf_template.h
    • Update DMA_FLASHToRAM example to use FIFO mode instead of direct mode for memory to memory transfer
    • Update FMC_SRAM example to enhance implementation
  • Templates

    • Update system_stm32f2xx.c file to be aligned with latest version of CMSIS STM32F2xx device implementation
    • Update stm32f2xx_hal_conf.h file to be aligned with new conf_template.h

Contents

Projects

Projects STM322xG_EVAL
Board Project category Version Path
STM322xG_EVAL Applications V1.1.3 Projects/STM322xG_EVAL/Applications
STM322xG_EVAL Examples V1.1.3 Projects/STM322xG_EVAL/Examples
STM322xG_EVAL Templates V1.1.2 Projects/STM322xG_EVAL/Templates
Projects NUCLEO-F207ZG
Board Project category Version Path
NUCLEO-F207ZG Applications V1.0.2 Projects/NUCLEO-F207ZG/Applications
NUCLEO-F207ZG Demonstrations V1.0.2 Projects/NUCLEO-F207ZG/Demonstrations
NUCLEO-F207ZG Examples V1.0.2 Projects/NUCLEO-F207ZG/Examples
NUCLEO-F207ZG Examples_LL V1.0.0 Projects/NUCLEO-F207ZG/Examples_LL
NUCLEO-F207ZG Examples_MIX V1.0.0 Projects/NUCLEO-F207ZG/Examples_MIX
NUCLEO-F207ZG Templates_LL V1.0.0 Projects/NUCLEO-F207ZG/Templates_LL

Note: in the tables above, project categories highlighted have changed since previous release.

Known Limitations

  • STemWin sample demo application on STM322xG_EVAL is not fully functional with MDK-ARM toolchain: the application doesn’t run successfully after the second hit of the Hide Button. in fact when pressing the button again while the progress bar displays the next steps, pressing Hide or Next Buttons are not working anymore.

Development Toolchains and Compilers

  • IAR Embedded Workbench for ARM (EWARM) toolchain V7.80.1
  • RealView Microcontroller Development Kit (MDK-ARM) toolchain V5.23
  • Atollic TrueSTUDIO STM32 (TrueSTUDIO) toolchain v7.0.0
  • System Workbench for STM32 (SW4STM32) toolchain V1.14

Supported Devices and EVAL boards

  • STM32F217xx/215xx/207xx/205xx devices and STM322xG_EVAL board RevC
  • STM32F207ZG and STM32F207ZG-Nucleo board RevB

Backward Compatibility

  • None

Dependencies

  • None

Maintenance release

Main Changes

STM322xG_EVAL:

  • Applications

    • Update LwIP and PolarSSL applications to use the latest lwIP version
    • LibJPEG_Decoding application: increase the heap size
    • Update applications using FreeRTOS to use TIM HW as time base source
    • stm32f2xx_hal_conf.h:
      • Adjust the HSE Start-up Timeout value: 100ms instead of 5s
      • Add new define USE_SPI_CRC for code cleanup when the CRC calculation is disabled
      • Add new define for the LSE start-up Timeout: LSE_STARTUP_TIMEOUT
    • usbh_conf.c
      • Remove adding delay in the HAL_HCD_Connect_Callback()
    • USB_HOST_Standalone:
      • Correct a misbehavior of the backspace key
    • LwIP_TCP_Echo_Server:
      • Update to fix memory management issue
  • Examples

    • stm32f2xx_hal_conf.h:
      • Adjust the HSE Start-up Timeout value: 100ms instead of 5s
      • Add new define USE_SPI_CRC for code cleanup when the CRC calculation is disabled
      • Add new define for the LSE start-up Timeout: LSE_STARTUP_TIMEOUT
    • HAL_TimeBase
      • Update to use new HAL TimeBase driver template stm32xxx_hal_timebase_time
    • Add two new time base examples
    • Update HAL_TimeBase example to use TIM HW as time base source instead of Systick
    • Update IWDG example to be in line with latest updates done on HAL IWDG drivers
      • Remove the HAL_IWDG_Start function in the main.c file
    • Update WWDG examples to be in line with latest updates done on HAL WWDG drivers
      • Remove the HAL_WWDG_Start and update the HAL_WWDG_Refresh functions in the main.c file
      • Remove HAL_WWDG_MspDeInit function from stm32f2xx_hal_msp.c file
    • Update DMA_FLASHToRAM example to use HAL_DMA_RegisterCallback() function
    • Rework I2C_TwoBoards_AdvComIT example following changes in latest HAL version
      • Update to allow master to restart communication when slave doesn’t acknowledge its address
    • Update SPI DMA example to manage SPI peripheral errors during DMA process
  • Templates

    • stm32f2xx_hal_conf.h:
      • Adjust the HSE Start-up Timeout value: 100ms instead of 5s
      • Add new define USE_SPI_CRC for code cleanup when the CRC calculation is disabled
      • Add new define for the LSE start-up Timeout: LSE_STARTUP_TIMEOUT

NUCLEO-F207ZG:

  • Applications

    • stm32f2xx_hal_conf.h:
      • Adjust the HSE Start-up Timeout value: 100ms instead of 5s
      • Add new define USE_SPI_CRC for code cleanup when the CRC calculation is disabled
      • Add new define for the LSE start-up Timeout: LSE_STARTUP_TIMEOUT
    • Update LwIP applications to use the latest lwIP version
    • usbh_conf.c:
      • Remove adding delay in the HAL_HCD_Connect_Callback()
    • Update applications using FreeRTOS to use TIM HW as time base source
  • Demonstrations

    • stm32f2xx_hal_conf.h:
      • Adjust the HSE Start-up Timeout value: 100ms instead of 5s
      • Add new define USE_SPI_CRC for code cleanup when the CRC calculation is disabled
      • Add new define for the LSE start-up Timeout: LSE_STARTUP_TIMEOUT
  • Examples

    • stm32f2xx_hal_conf.h:
      • Adjust the HSE Start-up Timeout value: 100ms instead of 5s
      • Add new define USE_SPI_CRC for code cleanup when the CRC calculation is disabled
      • Add new define for the LSE start-up Timeout: LSE_STARTUP_TIMEOUT
    • Add 2 new HAL TimeBase examples : HAL_TimeBase_RTC_ALARM and HAL_TimeBase_RTC_WKUP
    • Update HAL_TimeBase example to use TIM HW as time base source instead of Systick
    • Update DMA_FLASHToRAM example to use HAL_DMA_RegisterCallback() function
    • Update IWDG example to be inline with latest updates done on HAL IWDG drivers
      • Remove the HAL_IWDG_Start function in the main.c file
    • Update WWDG examples to be in line with latest updates done on HAL WWDG drivers
      • Remove the HAL_WWDG_Start and update the HAL_WWDG_Refresh functions in the main.c file
      • Remove HAL_WWDG_MspDeInit function from stm32f2xx_hal_msp.c file
  • Templates

    • stm32f2xx_hal_conf.h:
      • Adjust the HSE Start-up Timeout value: 100ms instead of 5s
      • Add new define USE_SPI_CRC for code cleanup when the CRC calculation is disabled
      • Add new define for the LSE start-up Timeout: LSE_STARTUP_TIMEOUT

Contents

Projects

Projects STM322xG_EVAL
Board Project category Version Path
STM322xG_EVAL Applications V1.1.2 Projects/STM322xG_EVAL/Applications
STM322xG_EVAL Examples V1.1.2 Projects/STM322xG_EVAL/Examples
STM322xG_EVAL Templates V1.1.1 Projects/STM322xG_EVAL/Templates
Projects NUCLEO-F207ZG
Board Project category Version Path
NUCLEO-F207ZG Applications V1.0.1 Projects/NUCLEO-F207ZG/Applications
NUCLEO-F207ZG Demonstrations V1.0.1 Projects/NUCLEO-F207ZG/Demonstrations
NUCLEO-F207ZG Examples V1.0.1 Projects/NUCLEO-F207ZG/Examples
NUCLEO-F207ZG Templates V1.0.1 Projects/NUCLEO-F207ZG/Templates

Note: in the tables above, project categories highlighted have changed since previous release.

Known Limitations

  • None

Development Toolchains and Compilers

  • IAR Embedded Workbench for ARM (EWARM) toolchain v7.60.1
  • RealView Microcontroller Development Kit (MDK-ARM) toolchain v5.20
  • Atollic TrueSTUDIO STM32 (TrueSTUDIO) toolchain v5.5.2
  • System Workbench for STM32 (SW4STM32) toolchain V1.9

Supported Devices and EVAL boards

  • STM32F217xx/215xx/207xx/205xx devices and STM322xG_EVAL board RevC
  • STM32F207ZG and STM32F207ZG-Nucleo board RevB

Backward Compatibility

  • None

Dependencies

  • None

Maintenance release

Main Changes

  • No changes compared to previous version.

Maintenance release

Main Changes

NUCLEO-F207ZG: First official release

STM322xG_EVAL:

  • Applications

    • Update to use slash “/” instead of backslash "" in the include path to avoid the Unix compilation errors
    • LibJPEG_Decoding application: increase the heap size
  • Examples

    • ADC_TripleModeInterleaved example: update to use ADC triple mode instead of ADC dual mode

Contents

Projects

Projects STM322xG_EVAL
Board Project category Version Path
STM322xG_EVAL Applications V1.1.1 Projects/STM322xG_EVAL/Applications
STM322xG_EVAL Examples V1.1.1 Projects/STM322xG_EVAL/Examples
Projects NUCLEO-F207ZG
Board Project category Version Path
NUCLEO-F207ZG Applications V1.0.0 Projects/NUCLEO-F207ZG/Applications
NUCLEO-F207ZG Demonstrations V1.0.0 Projects/NUCLEO-F207ZG/Demonstrations
NUCLEO-F207ZG Examples V1.0.0 Projects/NUCLEO-F207ZG/Examples
NUCLEO-F207ZG Templates V1.0.0 Projects/NUCLEO-F207ZG/Templates

Note: in the tables above, project categories highlighted have changed since previous release.

Known Limitations

  • None

Development Toolchains and Compilers

  • IAR Embedded Workbench for ARM (EWARM) toolchain v7.40.1
  • RealView Microcontroller Development Kit (MDK-ARM) toolchain v5.16
  • Atollic TrueSTUDIO STM32 (TrueSTUDIO) toolchain v5.3.1
  • System Workbench for STM32 (SW4STM32) toolchain V1.3.0 + ST-Link

Supported Devices and EVAL boards

  • STM32F217xx/215xx/207xx/205xx devices and STM322xG_EVAL board RevC

Backward Compatibility

  • None

Dependencies

  • None

Maintenance release

Main Changes

STM322xG_EVAL:

  • Application
    • Add the support System Workbench for STM32 (SW4STM32) toolchain
    • All projects updated following changes in latest version of HAL and Middlewares
    • Add 17 new applications:
      • FatFs_USBDisk_MultipleAccess_RTOS
      • LwIP_HTTP_Server_Socket_RTOS
      • LWIP_IAP
      • LWIP_TFTP_Server
      • LibJPEG_Decoding
      • LibJPEG_Encoding
      • PolarSSL_Client
      • PolarSSL_Server
      • USB_Device_Standalone
      • USB_Device_Standalone
      • USB_Device_Standalone
      • USB_Host_Standalone
      • USB_Host_Standalone
      • USB_Host_Standalone
      • USB_Host_RTOS
      • USB_Host_RTOS
      • USB_Host_Standalone
    • Miscellaneous enhancements
    • Force initialization of all PPP Init structure’s field before calling HAL_PPP_Init() API
    • Common update for all Applications
      • Update EWARM startup file for all projects to cope with compiler enhancement of the V7.x version
      • Update “stm32f2xx_hal_conf.h” to be in line with HAL V1.1.0: add new defines LSI_VALUE, LSE_VALUE and TICK_INT_PRIORITY
      • Update “stm32f2xx_it.c”: add the include of “main.h” before the “stm32f2xx_it.h”, in order to provide access to CMSIS device file via “stm32f2xx_hal.h”
    • All FreeRTOS based applications: update SysTick_Handler() ISR function in “stm32f2xx_it.c” and update the value of INCLUDE_xTaskGetSchedulerState to 1 in “FreeRTOSConfig.h”. This update is needed to avoid conflict between the HAL action on the SysTick when the FreeRTOS is used; we need to ensure that FreeRTOS scheduler has started before incrementing the tick. Below the updated applications:
      • FatFs_RAMDisk_RTOS
      • FatFs_USBDisk_RTOS
      • FatFs_uSD_RTOS
      • FreeRTOS_LowPower
      • FreeRTOS_Mutexes
      • FreeRTOS_Queues
      • FreeRTOS_Semaphore
      • FreeRTOS_SemaphoreFromISR
      • FreeRTOS_ThreadCreation
      • FreeRTOS_Timers
      • LwIP_HTTP_Server_Netconn_RTOS
      • LwIP_UDPTCP_Echo_Server_Netconn_RTOS
    • LwIP applications Update
      • Add TrueSTUDIO workspaces for the LwIP_HTTP_Server_Netconn_RTOS application
      • Remove ARP timer initialization and callback from “ethernetif.c” file for the following applications using RTOS
        • LwIP_HTTP_Server_Netconn_RTOS
        • LwIP_UDPTCP_Echo_Server_Netconn_RTOS
      • Add the management of timeout based on systick for polling process in “ethernetif.c” file for all LwIP applications
      • Remove the MCO configuration (PA8) from HAL_ETH_MspInit() function for all LwIP applications
      • readme.txt: add reference to the SW tools needed to run each application
      • fix issue of handling Ethernet Rx DMA descriptors (the application don’t give the Rx descriptors ownership to DMA if it fails to allocate memory for a received packet)
      • LwIP applications based on FreeRTOS: fix Ethernet reception deadlock issue, it was due to unavailable RX descriptors owned by DMA caused when receiving many frames with the same interrupt
      • LWIP_TCP_Echo_Client application clean up: remove the unnecessary call of memp_free() in tcp_echoclient_connect() function of tcp_echoclient.c file
    • STemWin applications Update
      • Update all STemWin applications following the use of new version V5.28 (update path and files names and miscellaneous update in the application sources)
      • Update touch process in all applications, use different timer instead of SysTick for the BSP_Background task
      • Add “stm32f2xx_hal_flash_ex.c” file in project tree for EWARM workspace
    • USB_HOST applications Update
      • Update the value of stack and heap in all workspaces
      • Remove vbus_sensing_enable from USBH_LL_Init()
      • Following latest update in USB Host Library V3.2.2; in all RTOS based application, “usbh_conf.h” file has been added as follows: #if (USBH_USE_OS == 1) #include “cmsis_os.h” #define USBH_PROCESS_PRIO osPriorityNormal #define USBH_PROCESS_STACK_SIZE (8 * configMINIMAL_STACK_SIZE) #endif
    • HID_Standalone application
      • In “usbd_conf.c” file: add a delay in connection callback to avoid connection issue when using old mouse
    • USB_DEVICE applications Update
      • Update the value of stack and heap in all workspaces
      • Following latest change in HAL V1.1.0, add “stm32f2xx_hal_pcd_ex.c” file in the files list of all projects
      • Update done in all applications
        • All the processes using PCD handle are moved to” usbd_conf.c”
        • Align with latest change in HAL Delay management: remove SysTick IT priority setting and set instead TICK_INT_PRIORITY to 0 in “stm32f2xx_hal_conf.h”
        • Use device unique number to compute the USB serial number string descriptor
        • In “main.c” file : when calling USBD_RegisterClass() function use USBD_XXX_CLASS instead &USBD_XXX (XXX refer to the name of Class)
    • HID_Standalone application
      • Move EXTI callback function to “usbd_conf.c” file
      • In MspInit() function; remove wakeup line configuration, since it’s done in latest version of HAL V1.1.0 drivers
    • AUDIO_Standalone application
      • Add LED initialization after SystemClock_Config() function
      • Uses the buffer size in byte instead of half-word when calling the BSP_AUDIO_OUT_Play() function
  • Examples
    • Add the support System Workbench for STM32 (SW4STM32) toolchain
    • All projects updated following changes in latest version of HAL and Middlewares
    • Add 29 new Examples:
      • ADC_InjectedConversion_Interrupt
      • ADC_RegularConversion_DMA
      • ADC_RegularConversion_Interrupt
      • ADC_TripleModeInterleaved
      • CAN_LoopBack
      • CRYP_AES_DMA
      • CRYP_TDES_DMA
      • DCMI_SnapshotMode
      • DMA_FIFOMode
      • HAL_TimeBase
      • HASH_HMAC_SHA1MD5
      • PWR_BOR
      • PWR_PVD
      • RTC_Alarm
      • RTC_TimeStamp
      • SMARTCARD_T0
      • TIM_6Steps
      • TIM_7PWMOutput
      • TIM_CascadeSynchro
      • TIM_ComplementarySignals
      • TIM_DMABurst
      • TIM_Encoder
      • TIM_ExtTriggerSynchro
      • TIM_InputCapture
      • TIM_OCActive
      • TIM_OCInactive
      • TIM_OCToggle
      • TIM_ParallelSynchro
      • UART_Hyperterminal_IT
    • Common update for all Examples
      • Update EWARM startup file for all projects to cope with compiler enhancement of the V7.x version
      • Update “stm32f2xx_hal_conf.h” to be in line with HAL V1.1.0: add new defines LSI_VALUE, LSE_VALUE and TICK_INT_PRIORITY
      • Update “stm32f2xx_it.c”: add the include of “main.h” before the “stm32f2xx_it.h”, in order to provide access to CMSIS device file via “stm32f2xx_hal.h”
      • Miscellaneous source code comments update
      • Force initialization of all PPP Init structure’s field before calling HAL_PPP_Init() API
    • CRYP examples: update to initialize the new filed ‘Instance’
    • ADC_TriggerMode: update to set ADC_EOC_SEQ_CONV value instead of ENABLE as EOCSelection parameter
    • BSP Example: remove the call of BSP_EEPROM_WaitEepromStandbyState() function, it’s not useful to be called by the application code (now it’s declared as static function within the EEPROM BSP driver)
    • FLASH_EraseProgram:
      • Add a note about the need to flush the data and/or instruction cache after Sector Erase operation, if they was previously enabled
      • Update to reset data and instruction cash memories after flash erase
    • CORTEXM_ModePrivilege: add ISB instruction to flush the pipeline after MSR instruction to modify CONTROL register
    • I2S_Audio
      • Retrieve audio data from a storage unit (Internal Flash for Instance) through an explicit GetData method. Can be easily adapted to use data from any storage unit (USB, uSD…)
      • Use an elastic buffer to manage double buffer mechanism using the DMA circular mode and the half and complete transfer callbacks
      • Use the buffer size in byte instead of half-word when calling the BSP_AUDIO_OUT_Play() function
      • Miscellaneous update
    • UART_HyperTerminal_DMA
      • update following the change done in UART driver to fix the DMA transmit process (the code has been updated to avoid waiting on TC flag under DMA ISR, UART TC interrupt is used instead):
      • in stm32f2xx_hal_msp.c file, configure and enable the USART IRQ in HAL_UART_MspInit() function
      • In stm32f2xx_it.c file, USARTx_IRQHandler() function: add a call to HAL_UART_IRQHandler() function
      • Add display on the Hyperterminal of the actions that need to be done by user
    • PWR_STANDBY
      • Update to avoid configuring the RTC each time the device resumes from Standby mode, since the RTC configuration is kept in Standby mode.
      • Add safety wake up sequence by following errata sheet recommendation
      • Add enable backup domain before clearing RTC flags
    • PWR_CurrentConsumption: update following latest change in HAL V1.2.0
      • SleepMode_Measure(): add HAL_SuspendTick() function before entering in Sleep mode and add HAL_ResumeTick() after exit from this mode
      • StandbyMode_Measure(), StandbyRTCMode_Measure() and StandbyRTCBKPSRAMMode_Measure(): update STANDBY mode entry sequence as follows:
        • Disable all used wakeup sources
        • Clear all related wakeup flags
        • Re-enable all used wakeup sources
        • Enter the standby mode
      • Update to call the BSP_PB_Init() function outside the waiting loop
    • RCC_ClockConfig
      • In main.c file : add the default HSI calibration value “RCC_OscInitStruct.HSICalibrationValue = 0x10;” in function SystemClockHSI_Config()
    • TIM_PWMInput: change the name of example from “TIM_PWMIntput” to “TIM_PWMInput”
    • TIM_TimeBase:
      • In main.c file: initializes the LEDs before using them
      • In main.c file: remove the following duplicated line “uwPrescalerValue = (uint32_t)((SystemCoreClock /2)/10000)-1;”
    • Miscellaneous update on BSP, MPU and RTC Tamper examples
  • Templates
    • Add the support System Workbench for STM32 (SW4STM32) toolchain
    • Update EWARM startup file to cope with compiler enhancement of the V7.x version
    • Update “stm32f2xx_hal_conf.h” to be in line with HAL V1.2.0: add new defines LSI_VALUE, LSE_VALUE and TICK_INT_PRIORITY
    • Update “stm32f2xx_it.c” : add the include of “main.h” before the “stm32f2xx_it.h”, in order to provide access to CMSIS device file via “stm32f2xx_hal.h”
    • Miscellaneous source code comments update

Contents

Projects

Projects STM322xG_EVAL
Board Project category Version Path
STM322xG_EVAL Applications V1.1.0 Projects/STM322xG_EVAL/Applications
STM322xG_EVAL Examples V1.1.0 Projects/STM322xG_EVAL/Examples
STM322xG_EVAL Templates V1.1.0 Projects/STM322xG_EVAL/Templates

Note: in the tables above, project categories highlighted have changed since previous release.

Known Limitations

  • None

Development Toolchains and Compilers

  • IAR Embedded Workbench for ARM (EWARM) toolchain v7.40.1
  • RealView Microcontroller Development Kit (MDK-ARM) toolchain v5.16
  • Atollic TrueSTUDIO STM32 (TrueSTUDIO) toolchain v5.3.1
  • System Workbench for STM32 (SW4STM32) toolchain V1.3.0 + ST-Link

Supported Devices and EVAL boards

  • STM32F217xx/215xx/207xx/205xx devices and STM322xG_EVAL board RevC

Backward Compatibility

  • None

Dependencies

  • None

Maintenance release

Main Changes

  • No changes compared to previous version (V1.0.0).

Maintenance release

Main Changes

  • First official release of STM32CubeF2 (STM32Cube for STM32F2 Series)

STM322xG_EVAL: First official release

Contents

Projects

Projects NUCLEO-F072RB
Board Project category Version Path
STM322xG_EVAL Applications V1.0.0 Projects/STM322xG_EVAL/Applications
STM322xG_EVAL Examples V1.0.0 Projects/STM322xG_EVAL/Examples
STM322xG_EVAL Templates V1.0.0 Projects/STM322xG_EVAL/Templates

Note: in the tables above, project categories highlighted have changed since previous release.

Known Limitations

  • TrueSTUDIO projects are not provided for a few Applications
  • The LCD ili9320 mounted on previous versions of the STM322xG_EVAL board will be supported in a future version of the STM32Cube F2 FW package (V1.1.0)

Development Toolchains and Compilers

  • IAR Embedded Workbench for ARM (EWARM) toolchain V6.70.2 + ST-Link
  • RealView Microcontroller Development Kit (MDK-ARM toolchain v4.73)
  • Atollic TrueSTUDIO STM32 (TrueSTUDIO) tool

Supported Devices and EVAL boards

  • STM32F217xx/215xx/207xx/205xx devices and STM322xG_EVAL board

Backward Compatibility

  • None

Dependencies

  • None