Back to Release page

License

This software component is licensed by ST under BSD 3-Clause license, the "License"; You may not use this component except in compliance with the License. You may obtain a copy of the License at:

https://opensource.org/licenses/BSD-3-Clause


V1.9.0 / 27-July-2018

Main Changes

  • Release of HAL and Low Layer drivers to add support of STM32L412xx/STM32L422xx
  • Superset features device STM32L422xx API User Manual available (STM32L422xx_User_Manual.chm)  
  • MISRA C:2012 corrections

HAL Drivers changes 

  • MISRA C:2012 corrections listed hereafter are applicable to LL driver as well
  • HAL ADC driver 
    • Replace private macro using concurrent volatile access (generating MIRSA errors) by temporary variables or LL helper macro
    • Correct MISRA C:2012 warnings reported by rules 2.2_c, 8.13, 10.1_R2, 10.1_R3, 10.1_R6, 10.4_a, 10.4_b, 10.5, 14.4_c, 12.2, 15.7
    • stm32l4xx_hal_adc.c and stm32l4xx_hal_adc_ex.c
      • Change of time-out duration computation when expressed in microseconds to manage low system clock frequencies
    • stm32l4xx_hal_adc.c
      • Remove useless stabilization delay in ADC_Enable() when enabling ADC
      • In HAL_ADC_Stop_DMA(), HAL_DMA_Abort() API is called only if DMA is busy 
    • stm32l4xx_hal_adc.h
      • Typo correction in ADC_AnalogWDGConfTypeDef FilteringConfig field description
    • stm32l4xx_hal_adc.c, stm32l4xx_hal_adc.h
      • Clarify comments in HAL_ADC_AnalogWDGConfig for analog watchdog thresholds checks when oversampling is enabled
  • HAL CAN driver 
    • Correct MISRA C:2012 warnings reported by rules 2.2_c, 10.3, 10.4_a, 10.6, 12.2, 13.3, 13.5, 15.7, 17.7, 18.1_b
    • stm32l4xx_hal_can.c, stm32l4xx_hal_can.h
      • Tx abort procedure correction
    • stm32l4xx_hal_can.c
      • Correct implementation of test on pending message in HAL_CAN_IsTxMessagePending() 
      • Update HAL_CAN_Stop() to reset any previous sleep mode request to avoid maintaining the sleep mode request active at next
        HAL_CAN_Start()
  • HAL COMP driver 
    • Correct MISRA C:2012 warnings reported by rules 10.1, 10.3, 10.4, 13.5
    • stm32l4xx_hal_comp.c
      • Change of time-out duration computation when expressed in microseconds to manage low system clock frequencies
  • HAL CRC driver 
    • Correct MISRA C:2012 warnings reported by rules 10.3, 12.1, 12.2
  • HAL CRYP driver 
    • Correct MISRA C:2012 warnings reported by rules 2.2_c, 8.13, 10.3, 10.4, 10.6, 10.7, 10.8, 12.1, 13.5, 15.7, 17.7, 18.4
    • stm32l4xx_hal_cryp_ex.c: CodeSonar warnings correction
  • HAL DAC driver 
    • Correct MISRA C:2012 warnings
  • HAL DCMI driver 
    • Correct MISRA C:2012 warnings reported by rules 2.2_c, 8.4, 10.4_a, 12.1, 17.7, 18.4
  • HAL DMA driver 
    • Correct MISRA C:2012 warnings
  • HAL DSI driver 
    • stm32l4xx_hal_dsi.h: add __HAL_DSI_RESET_HANDLE_STATE() macro
  • HAL EXTI driver (NEW)
    • New stm32l4xx_hal_exti.h and stm32l4xx_hal_exti.c files  (driver enabled with HAL_EXTI_MODULE_ENABLED in stm32l4xx_hal_conf.h file)
  • HAL FIREWALL driver 
    • Correct MISRA C:2012 warnings reported by rules 10.4
  • HAL GPIO driver 
    • Correct MISRA C:2012 warnings reported by rules 10.3, 21.1
  • HAL HASH driver 
    • Correct MISRA C:2012 warnings reported by rules 1.3_k, 2.2_c, 9.1_f, 10.3, 12.1, 13.4_b, 13.5, 15.7, 17.7, 21.1
    • stm32l4xx_hal_hash.c: 
      • in HASH_Start_DMA(), test on HASH_CR_MDMAT bit before checking input buffer length in case of multi-buffer processing
      • Fill-up empty statement in HAL_HASH_DMAFeed_ProcessSuspend() to correct CodeSonar warning
  • HAL I2C driver 
    • Correct MISRA C:2012 warnings
    • stm32l4xx_hal_i2c.c: remove extra definition of I2C_GET_DMA_REMAIN_DATA() macro
  • HAL IRDA driver 
    • Correct MISRA C:2012 warnings reported by rules 2.1, 2.2_c, 2.4, 2.3, 8.9_a, 10.3, 10.4_a, 10.5, 10.6, 10.7, 11.3, 13.3, 13.5, 15.7, 17.7, 17.8, 18.4, 21.1
  • HAL IWDG driver 
    • Correct MISRA C:2012 warnings reported by rules 2.7, 10.3, 10.4_a
  • HAL LPTIM driver
    • Add repetition counter management for STM32L412xx/L422xx devices
      • New field RepetitionCounter added in LPTIM_InitTypeDef structure
  • HAL OSPI driver 
    • stm32l4xx_hal_ospi.h: update memory type definition to support new octal PSRAM from APMemory
  • HAL OPAMP driver 
    • Correct MISRA C:2012 warnings
  • HAL PWR driver 
    • Update conversion mechanism from duration in us in number of cycles to manage low system frequencies
    • Correct MISRA C:2012 warnings reported by rules 2.2_c, 10.3, 10.4_a, 13.5, 16.3, 17.7
  • HAL RCC driver 
    • stm32l4xx_hal_rcc.c, stm32l4xx_hal_rcc.h: compilation switches update to ensure full STM32L412xx/L422xx devices support
    • Correct MISRA C:2012 warnings reported by rules 2.2_c, 8.13, 8.9_a, 10.1_R2, 10.4_a, 10.3, 10.7, 11.9, 12.1, 12.2, 13.5, 14.4_c, 15.7, 21.2
  • HAL RTC driver 
    • New HAL_RTCEx_SetLowPowerCalib() API for STM32L412xx/L422xx devices
    • HAL_RTC_AlarmIRQHandler() API optimization
  • HAL SAI driver 
    • stm32l4xx_hal_sai.c: remove empty if statements to fix CodeSonar wanring
    • stm32l4xx_hal_sai.h, stm32l4xx_hal_sai.c: add check on master clock divider parameter, remove SAI_FIFO_SIZE definition
  • HAL SMARTCARD driver 
    • Correct MISRA C:2012 warnings reported by rules 2.2_c, 8.9_a, 10.3, 10.4_a, 10.5, 10.6, 10.7, 12.1, 12.2, 13.3, 13.5, 15.7, 17.7, 17.8, 18.1, 21.1
  • HAL SPI driver 
    • Correct MISRA C:2012 warnings
  • HAL SWPMI driver 
    • Correct MISRA C:2012 warnings reported by rules 2.2_c, 2.7, 10.3, 10.4_a, 13.3, 13.5, 15.7, 17.7, 17.8, 21.1
  • HAL TSC driver 
    • Correct MISRA C:2012 warnings reported by rule 21.1
  • HAL USART driver 
    • Correct MISRA C:2012 warnings reported by rule 10.4_a, 10.6, 12.2

LL Drivers changes

  • LL ADC driver
    • stm32l4xx_ll_dmamux.h: clarify comments when oversampling is enabled
  • LL DMA driver 
    • stm32l4xx_ll_dmamux.h: remove test on DMAMUX1
  • LL RCC driver
    • stm32l4xx_ll_rcc.c, stm32l4xx_ll_rcc.h: compilation switches update to ensure full STM32L412xx/L422xx devices support
  • LL RTC driver
    • stm32l4xx_ll_rtc.h: add new macros LL_RTC_WAKEUP_SetAutoClr(), LL_RTC_WAKEUP_GetAutoClr() applicable to STM32L412xx/L422xx devices only



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