From e9c0fd990fb4a53f6979f194ae58517c26d28ba7 Mon Sep 17 00:00:00 2001 From: bcostm Date: Tue, 4 Nov 2014 11:12:26 +0100 Subject: [PATCH] [STM32L0] Update version in files, add Cube driver release note --- .../Release_Notes_stm32l0xx_hal.html | 1133 +++++++++++++++++ .../TOOLCHAIN_ARM_MICRO/startup_stm32l053xx.s | 4 +- .../TOOLCHAIN_ARM_STD/startup_stm32l053xx.s | 4 +- .../TARGET_NUCLEO_L053R8/stm32l0xx.h | 8 +- .../TARGET_NUCLEO_L053R8/system_stm32l0xx.c | 4 +- .../TARGET_NUCLEO_L053R8/system_stm32l0xx.h | 4 +- .../TARGET_STM32L0/stm32l0xx_hal_conf.h | 4 +- 7 files changed, 1147 insertions(+), 14 deletions(-) create mode 100644 libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/Release_Notes_stm32l0xx_hal.html diff --git a/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/Release_Notes_stm32l0xx_hal.html b/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/Release_Notes_stm32l0xx_hal.html new file mode 100644 index 0000000000..d19459b6ce --- /dev/null +++ b/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/Release_Notes_stm32l0xx_hal.html @@ -0,0 +1,1133 @@ + + + + + + +Release Notes for STM32L0xx HAL Drivers + + + + + + + + +
+

 

+
+ + + + + + +
+ + + + + + + + + +
+

Back to Release page

+
+

Release +Notes for STM32L0xx HAL Drivers

+

Copyright +2014 STMicroelectronics

+

+
+

 

+ + + + + + +
+

Update History

V1.1.0 +/ 18-June-2014

Main +Changes

+
  • + + + + + + + +

    HAL generic update

    +
  • +
      +
    • Fix flag clear procedure: use atomic write operation "=" instead of ready-modify-write operation "|=" or "&="
    • +
    • Fix +on Timeout management, Timeout value set to 0 passed to API +automatically exits the function after checking the flag without any +wait
      +
    • +
    • Common update for the following communication peripherals: SPI, UART, USART and IRDA
    • +
        +
      • Add DMA circular mode support
        +
      • +
      +
        +
      • Remove lock from recursive process
        +
      • +
      +
    • Add +new macro __HAL_RESET_HANDLE_STATE to reset a given handle state
    • +
    +
      +
    • When USE_RTOS == 1 (in stm32l0xx_hal_conf.h), the __HAL_LOCK() is not defined instead of being defined empty
    • +
    • Use “__IO const” instead of +“__I”, to avoid any compilation issue when __cplusplus switch is defined
    • +
    • Add new functions for the DBGMCU module
    • +
        +
      • HAL_EnableDBGSleepMode()
      • +
      • HAL_DisableDBGSleepMode()
      • +
      • HAL_EnableDBGStopMode()
      • +
      • HAL_DisableDBGStopMode()
      • +
      • HAL_EnableDBGStandbyMode()
      • +
      • HAL_DisableDBGStandbyMode()
      • +
      +
    • Miscellaneous comments update
    • +
    +
  • + +

    HAL FLASH update

    + + + + + +
    • Add +new functions: HAL_FLASHEx_OB_SelectPCROP() and HAL_FLASHEx_OB_DeSelectPCROP()
    • +
    • Some functions was renamed and moved to the extension files (stm32l0xx_hal_flash_ex.h/.c)
      +
    • +
        +
      • Rename + FLASH_HalfPageProgram() into HAL_FLASHEx_HalfPageProgram()
      • +
      +
        +
      • Rename + FLASH_EnableRunPowerDown() into HAL_FLASHEx_EnableRunPowerDown()
      • +
      +
        +
      • Rename + FLASH_DisableRunPowerDown() into HAL_FLASHEx_DisableRunPowerDown()
      • +
      +
        +
      • Rename +all HAL_DATA_EEPROMEx_xxx() functions into HAL_FLASHEx_DATAEEPROM_xxx()
      • +
      +
        +
      • Note: aliases has been added to keep compatibility with previous version
      • +
      +

    +
  • +
  • HAL GPIO update
  • +
      +
    • Remove + IS_GET_GPIO_PIN macro
    • +
    • Add +a new function HAL_GPIO_LockPin()
    • +
    • Private Macro __HAL_GET_GPIO_SOURCE renamed into GET_GPIO_SOURCE
      +
    • +
    +
  • +

    HAL DMA update

    +
  • +
      +
    • Fix in HAL_DMA_PollForTransfer() to set error code HAL_DMA_ERROR_TE in case of HAL_ERROR status
    • +
    +

+
+
    +
  • HAL PWR update
    +
  • +
      +
    • HAL_PWR_PVDConfig(): add clear of the EXTI trigger before new configuration
      +
    • +
    • Fix in HAL_PWR_EnterSTANDBYMode() to not clear Wakeup flag (WUF), which need to be cleared at application level before to call this function
      +
    • +
    +
  • +

    HAL RCC update

    +
  • +
      +
    • Allow to calibrate the HSI when it is used as system clock source
      +
    • +
    • Fix implementation of IS_RCC_OSCILLATORTYPE() macro
      +
    • +
    +
  • +

    HAL ADC update

    +
  • +
      +
    • Update ADC internal channels mapping: TEMPSENSOR connected to ADC_CHANNEL_18 and VLCD mapped to ADC_CHANNEL_16
      +
    • +
    • Skip polling for ADRDY flag when Low Power Auto Off mode is enabled
      +
    • +
    +
  • +

    HAL COMP update

    +
    • Add + LPTIMConnection field in the COMP_InitTypeDef structure.
    • Add +new defines: COMP_LPTIMCONNECTION_DISABLED, COMP_LPTIMCONNECTION_ENABLED
    • Add +new macro IS_COMP_LPTIMCONNECTION
  • +
  • +

    HAL LPTIM update

    + +
  • +
      +
    • Add + CKPOL configuration for encoder mode
    • +
    +
  • +

    HAL WWDG update

    + +
  • +
      +
    • Miscellaneous minor update on the source code
    • +
    +
  • +

    HAL IWDG update

    + +
  • +
      +
    • Miscellaneous minor update on the source code
    • +
    +
  • +

    HAL CRC update

    +
    • Some functions was renamed and moved to the extension files (stm32l0xx_hal_crc_ex.h/.c)
    • +
        +
      • HAL_CRC_Input_Data_Reverse() renamed into HAL_CRCEx_Input_Data_Reverse()
      • +
      +
        +
      • HAL_CRC_Output_Data_Reverse() renamed into HAL_CRCEx_Output_Data_Reverse()
      • +
      +
        +
      • Note: aliases has been added to keep compatibility with previous version
      • +
      +
  • +
  • + + + +

    HAL CRYP update

      +
    • HAL_CRYP_ComputationCpltCallback() renamed into HAL_CRYPEx_ComputationCpltCallback() and moved to the extension files (stm32l0xx_hal_cryp_ex.h/.c)
    • +
    • Note: alias has been added to keep compatibility with previous version
    • +
  • +
  • +

    HAL I2C update

    +
  • +
      +
    • Add +management of NACK event in Master transmitter mode and Slave +transmitter/receiver modes (only in polling mode), in that case the +current transfer is stopped.
    • +
    +
  • +

    HAL SMBUS update

    + + + + + + + + + + + +
  • +
      +
    • Add +a new function: HAL_SMBUS_DisableListen_IT()
      +
    • +
    • Add aliases for the following functions
      +
    • +
        +
      • #define +HAL_SMBUS_Slave_Listen_IT             +HAL_SMBUS_EnableListen_IT
      • +
      • #define HAL_SMBUS_SlaveAddrCallback         HAL_SMBUS_AddrCallback
      • +
      • #define HAL_SMBUS_SlaveListenCpltCallback HAL_SMBUS_ListenCpltCallback
      • +
      +
    • Add alias HAL_SMBUS_STATE_SLAVE_LISTEN for the constant HAL_SMBUS_STATE_LISTEN
    • +
    +
  • +

    HAL UART update

    + + + + +
      +
    • HAL_UART_WakeupCallback() renamed into HAL_UART_WakeupCallback() and moved to the extension files (stm32l0xx_hal_cryp_ex.h/.c)
    • +
    • Add +new macros to control CTS and RTS
      +
    • +
    • Add specific macros to manage the + flags cleared only by a software sequence
    • +
        +
      • __HAL_UART_CLEAR_PEFLAG()
      • +
      +
        +
      • __HAL_UART_CLEAR_FEFLAG()
      • +
      +
        +
      • __HAL_UART_CLEAR_NEFLAG()
      • +
      +
        +
      • __HAL_UART_CLEAR_OREFLAG()
      • +
      • __HAL_UART_CLEAR_IDLEFLAG()
      • +
      +
    • Add several enhancements without + affecting the driver functionalities
    • +
        +
      • Remove the check on RXNE set + after reading the Data in the DR register
      • +
      +
        +
      • Update the transmit processes to + use TXE instead of TC
      • +
      • Update HAL_UART_Transmit_IT() to enable UART_IT_TXE instead of UART_IT_TC
      • +
      +
    +
  • +
  • + + + + + + + +

    HAL USART update

  • +
      +
    • Add specific macros to manage the + flags cleared only by a software sequence
    • +
        +
      • __HAL_USART_CLEAR_PEFLAG()
      • +
      +
        +
      • __HAL_USART_CLEAR_FEFLAG()
      • +
      +
        +
      • __HAL_USART_CLEAR_NEFLAG()
      • +
      +
        +
      • __HAL_USART_CLEAR_OREFLAG()
      • +
      +
        +
      • __HAL_USART_CLEAR_IDLEFLAG()
      • +
      +
    • Update HAL_USART_Transmit_IT() to enable USART_IT_TXE instead of USART_IT_TC
    • +
    +
  • +

    HAL IRDA update

    +
      +
    • Add specific macros to manage the + flags cleared only by a software sequence
    • +
        +
      • __HAL_IRDA_CLEAR_PEFLAG()
      • __HAL_ IRDA _CLEAR_FEFLAG()
      • __HAL_ IRDA _CLEAR_NEFLAG()
      • __HAL_ IRDA _CLEAR_OREFLAG()
      • __HAL_ IRDA _CLEAR_IDLEFLAG()
      • +
      +
    • Add several enhancements without + affecting the driver functionalities
    • +
        +
      • Remove the check on RXNE set + after reading the Data in the DR register
        +
      • +
      • Update HAL_IRDA_Transmit_IT() to enable IRDA_IT_TXE instead of IRDA_IT_TC
      • +
      +
    • Add the following APIs used within + DMA process
    • +
        +
      • HAL_StatusTypeDef + HAL_IRDA_DMAPause(IRDA_HandleTypeDef *hirda);
      • +
      +
        +
      • HAL_StatusTypeDef + HAL_IRDA_DMAResume(IRDA_HandleTypeDef *hirda);
      • +
      • HAL_StatusTypeDef + HAL_IRDA_DMAStop(IRDA_HandleTypeDef *hirda);
      • +
      • void + HAL_IRDA_TxHalfCpltCallback(IRDA_HandleTypeDef *hirda);
      • +
      • void + HAL_IRDA_RxHalfCpltCallback(IRDA_HandleTypeDef *hirda);
      • +
      +
  • +
  • + + + + + + + +

    HAL SMARTCARD update

  • +
      +
    • Add specific macros to manage the + flags cleared only by a software sequence
    • +
        +
      • __HAL_SMARTCARD_CLEAR_PEFLAG()
      • +
      +
        +
      • __HAL_SMARTCARD_CLEAR_FEFLAG()
      • +
      +
        +
      • __HAL_SMARTCARD_CLEAR_NEFLAG()
      • +
      +
        +
      • __HAL_SMARTCARD_CLEAR_OREFLAG()
      • +
      +
        +
      • __HAL_SMARTCARD_CLEAR_IDLEFLAG()
      • +
      +
    • Add several enhancements without + affecting the driver functionalities
    • +
        +
      • Add a new state + HAL_SMARTCARD_STATE_BUSY_TX_RX and all processes has been updated + accordingly
      • +
      +
        +
      • Update HAL_SMARTCARD_Transmit_IT() to enable SMARTCARD_IT_TXE instead of SMARTCARD_IT_TC
      • +
      +
    +
+
+
+
    +
  • HAL SPI update
  • +
      +
    • Bugs fix
    • +
        +
      • SPI interface is used in synchronous polling mode: at high clock rates like SPI prescaler 2 and 4, calling
        +HAL_SPI_TransmitReceive() returns with error HAL_TIMEOUT
      • +
      • HAL_SPI_TransmitReceive_DMA() does not clean up the TX DMA, so any subsequent SPI calls return the DMA error
      • +
      • HAL_SPI_Transmit_DMA() is failing when data size is equal to 1 byte
      • +
      +
    • Add the following APIs used within the DMA process
    • +
    +
      +
      • HAL_StatusTypeDef + HAL_SPI_DMAPause(SPI_HandleTypeDef *hspi);
      • HAL_StatusTypeDef + HAL_SPI_DMAResume(SPI_HandleTypeDef *hspi);
      • HAL_StatusTypeDef + HAL_SPI_DMAStop(SPI_HandleTypeDef *hspi);
      • void + HAL_SPI_TxHalfCpltCallback(SPI_HandleTypeDef *hspi);
      • void + HAL_SPI_RxHalfCpltCallback(SPI_HandleTypeDef *hspi);
      • void HAL_SPI_TxRxHalfCpltCallback(SPI_HandleTypeDef + *hspi);
      +
    +
  • +

    HAL TSC update

    +
  • +
      +
    • +

      Fix value of the constant TSC_ACQ_MODE_SYNCHRO

      +
    • +
    +
  • +

    HAL PCD update

    +
  • +
      +
    • +

      Add new macro __HAL_USB_EXTI_GENERATE_SWIT()

      +
    • +
    +
+

V1.0.0 +/ 22-April-2014

Main +Changes

+First official release.
+ + +

License

+
+
Redistribution +and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met:
+
+
    +
  1. Redistributions +of source code must retain the above copyright notice, this list of +conditions and the following disclaimer.
  2. +
  3. Redistributions +in binary form must reproduce the above copyright notice, this list of +conditions and the following disclaimer in the +documentation and/or other materials provided with the distribution.
  4. +
  5. Neither the +name of STMicroelectronics nor the names of its contributors may be +used to endorse or promote products derived
    +
  6. +
+       +from this software without specific prior written permission.
+
+THIS +SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, +INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF +THE POSSIBILITY OF SUCH DAMAGE.
+
+ +
+
+
+

For +complete documentation on STM32 Microcontrollers visit www.st.com/STM32

+
+

+
+
+

 

+
+ \ No newline at end of file diff --git a/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L053R8/TOOLCHAIN_ARM_MICRO/startup_stm32l053xx.s b/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L053R8/TOOLCHAIN_ARM_MICRO/startup_stm32l053xx.s index 39643eb327..82152a6380 100644 --- a/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L053R8/TOOLCHAIN_ARM_MICRO/startup_stm32l053xx.s +++ b/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L053R8/TOOLCHAIN_ARM_MICRO/startup_stm32l053xx.s @@ -1,8 +1,8 @@ ;******************** (C) COPYRIGHT 2014 STMicroelectronics ******************** ;* File Name : startup_stm32l053xx.s ;* Author : MCD Application Team -;* Version : V1.0.0 -;* Date : 22-April-2014 +;* Version : V1.1.0 +;* Date : 18-June-2014 ;* Description : STM32l053xx Devices vector table for MDK-ARM toolchain. ;* This module performs: ;* - Set the initial SP diff --git a/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L053R8/TOOLCHAIN_ARM_STD/startup_stm32l053xx.s b/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L053R8/TOOLCHAIN_ARM_STD/startup_stm32l053xx.s index 4c1b6c7ffd..c15b196c9c 100644 --- a/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L053R8/TOOLCHAIN_ARM_STD/startup_stm32l053xx.s +++ b/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L053R8/TOOLCHAIN_ARM_STD/startup_stm32l053xx.s @@ -1,8 +1,8 @@ ;******************** (C) COPYRIGHT 2014 STMicroelectronics ******************** ;* File Name : startup_stm32l053xx.s ;* Author : MCD Application Team -;* Version : V1.0.0 -;* Date : 22-April-2014 +;* Version : V1.1.0 +;* Date : 18-June-2014 ;* Description : STM32l053xx Devices vector table for MDK-ARM toolchain. ;* This module performs: ;* - Set the initial SP diff --git a/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L053R8/stm32l0xx.h b/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L053R8/stm32l0xx.h index fb2b8b3653..c26bfd0a79 100644 --- a/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L053R8/stm32l0xx.h +++ b/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L053R8/stm32l0xx.h @@ -2,8 +2,8 @@ ****************************************************************************** * @file stm32l0xx.h * @author MCD Application Team - * @version V1.0.0 - * @date 22-April-2014 + * @version V1.1.0 + * @date 18-June-2014 * @brief CMSIS Cortex-M0+ Device Peripheral Access Layer Header File. * This file contains all the peripheral register's definitions, bits * definitions and memory mapping for STM32L0xx devices. @@ -93,10 +93,10 @@ #endif /* USE_HAL_DRIVER */ /** - * @brief CMSIS Device version number V1.0.0 + * @brief CMSIS Device version number V1.1.0 */ #define __STM32L0xx_CMSIS_DEVICE_VERSION_MAIN (0x01) /*!< [31:24] main version */ -#define __STM32L0xx_CMSIS_DEVICE_VERSION_SUB1 (0x00) /*!< [23:16] sub1 version */ +#define __STM32L0xx_CMSIS_DEVICE_VERSION_SUB1 (0x01) /*!< [23:16] sub1 version */ #define __STM32L0xx_CMSIS_DEVICE_VERSION_SUB2 (0x00) /*!< [15:8] sub2 version */ #define __STM32L0xx_CMSIS_DEVICE_VERSION_RC (0x00) /*!< [7:0] release candidate */ #define __STM32L0xx_CMSIS_DEVICE_VERSION ((__CMSIS_DEVICE_VERSION_MAIN << 24)\ diff --git a/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L053R8/system_stm32l0xx.c b/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L053R8/system_stm32l0xx.c index f51d91562c..8bd323284c 100644 --- a/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L053R8/system_stm32l0xx.c +++ b/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L053R8/system_stm32l0xx.c @@ -2,8 +2,8 @@ ****************************************************************************** * @file system_stm32l0xx.c * @author MCD Application Team - * @version V1.0.0 - * @date 22-April-2014 + * @version V1.1.0 + * @date 18-June-2014 * @brief CMSIS Cortex-M0+ Device Peripheral Access Layer System Source File. * * This file provides two functions and one global variable to be called from diff --git a/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L053R8/system_stm32l0xx.h b/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L053R8/system_stm32l0xx.h index 7b787aae83..7ba1eb0601 100644 --- a/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L053R8/system_stm32l0xx.h +++ b/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/TARGET_NUCLEO_L053R8/system_stm32l0xx.h @@ -2,8 +2,8 @@ ****************************************************************************** * @file system_stm32l0xx.h * @author MCD Application Team - * @version V1.0.0 - * @date 22-April-2014 + * @version V1.1.0 + * @date 18-June-2014 * @brief CMSIS Cortex-M0+ Device Peripheral Access Layer System Header File. ****************************************************************************** * @attention diff --git a/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/stm32l0xx_hal_conf.h b/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/stm32l0xx_hal_conf.h index 1025fb65db..805a180323 100644 --- a/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/stm32l0xx_hal_conf.h +++ b/libraries/mbed/targets/cmsis/TARGET_STM/TARGET_STM32L0/stm32l0xx_hal_conf.h @@ -2,8 +2,8 @@ ****************************************************************************** * @file stm32l0xx_hal_conf.h * @author MCD Application Team - * @version V1.0.0 - * @date 22-April-2014 + * @version V1.1.0 + * @date 18-June-2014 * @brief HAL configuration file. ****************************************************************************** * @attention