Update History
V1.3.2 / 29-December-2017Main Changes - Update CAN examples to be aligned to the new HAL CAN driver.
- Update CAN examples to set a fixed bitrate equal to 1 Mbit/s.
- Update stm32f4xx_hal_conf.h files to add support to HAL CAN Legacy Module.
V1.3.1 / 06-October-2017Main Changes - Remove DATE and VERSION from the header of all the files.
- Remove support of TrueSTUDIO toolchain
- Update RTC examples to reset handle RTC state when initializing:
- main.c: Add a call for HAL_RTC_RESET_HANDLE_STATE()
V1.3.0 / 17-February-2017
Main Changes
- Update to be aligned with latest HAL SD and BSP SD drivers implementation
- Update DMA_FLASHToRAM example to use FIFO mode instead of direct mode for memory to memory transfer
- Update FMC_SRAM example to enhance implementation
- Update overall examples to add the support of the external memories in system_stm32f4xx.c files
V1.2.7 / 04-November-2016
Main Changes
- Update system_stm32f4xx.c file in all projects to be aligned with latest version of CMSIS STM32F4xx device implementation
V1.2.6 / 06-May-2016
Main Changes
- Add new define USE_SPI_CRC in stm32f4xx_hal_conf.h
file for code cleanup when the CRC calculation is disabled
- Add two new time base examples
- Update HAL_TimeBase example to use TIM HW as time base
source instead of Systick
- Update FLASH_EraseProgram example to cover all flash
sectors
- 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
stm32f4xx_hal_msp.c file
- Update DMA_FLASHToRAM example to use
HAL_DMA_RegisterCallback() function
V1.2.5 / 29-January-2016 Main Changes
- stm32f4xx_hal_conf.h
- Adjust the HSE Start-up Timeout value: 100ms instead of 5s
- 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
- RCC_ClockConfig
- Alignment with STM32F4xx_HAL_Driver V1.4.4:
update to use the new define for the HSI calibration default value
V1.2.4 / 13-November-2015
Main Changes
- ADC_DualModeInterleaved example: update the ADC configuration
- ADC_RegularConversion_Polling example: update the check condition on ADC state
- FMC_SDRAM_DataMemory example: update project settings to avoid SDRAM multiple configuration
- Update to use slash "/" instead of backslash "\" in the include path to avoid the Unix compilation errors
V1.2.3 / 09-October-2015
Main Changes
- Update SW4STM32 projects
- Fix in accordance with latest version of SW4STM32 toolchain
V1.2.2 / 01-July-2015
Main Changes
- FLASH_EraseProgram example: update to reset data and instruction cash memories after flash erase
V1.2.1 / 13-March-2015
Main Changes
- All projects updated following changes in latest HAL version
- CRYP examples: update to initialize the new filed 'Instance'
- HAL_TimeBase example: call to HAL_IncTick() under Systick Interrupt removed
- PWR_STANDBY example: add enable backup domain before clearing RTC flags
- PWR_CurrentConsumption example: update to call the BSP_PB_Init() function outside the waiting loop
- ADC_TriggerMode example: update to set ADC_EOC_SEQ_CONV value instead of ENABLE as EOCSelection parameter
- Miscellaneous enhancements
V1.2.0 / 26-December-2014
Main Changes
- All projects updated following changes in latest HAL version
- Add TIM_Encoder example showing how to configure the Timer in encoder interface mode to determinate the rotation direction
- Update SystemClock_Config() to turn off the Flash prefetch if the code
is running on STM32F407xx RevA devices, to comply with the errata sheet limitation
- Miscellaneous enhancements
- Force initialization of all PPP Init structure's field before calling HAL_PPP_Init() API
- ADC_RegularConversion_DMA: update to fix issue leading to have the code remaining stuck after the 1st ADC conversion
- 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)
- SMARTCARD_T0: fix protocol decode issue if TD(1) is absent in ATR
- I2S_Audio: several enhancements
- 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
- 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 stm32f4xx_hal_msp.c file, configure and enable the USART IRQ in HAL_UART_MspInit() function
- In stm32f4xx_it.c file, USARTx_IRQHandler() function: add a call to HAL_UART_IRQHandler() function
- 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
- 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
- CORTEXM_ModePrivilege: add ISB instruction to flush the pipeline after MSR instruction to modify CONTROL register
- Rename DCMI_SnapShotMode example into DCMI_SnapshotMode
- Validation using latest toolchains version: EWARM v7.30 and TrueSTUDIO v5.1.1
V1.1.0 / 26-June-2014
Main Changes
- Common update for all Examples
- Update EWARM startup
file for all projects to cope with compiler enhancement of the V7.x version
- Update
“stm32f4xx_hal_conf.h” to be in line with HAL V1.1.0: add new defines LSI_VALUE, LSE_VALUE and
TICK_INT_PRIORITY
- Update “stm32f4xx_it.c”: add the include of “main.h” before the “stm32f4xx_it.h”, in order to
provide access to CMSIS device file via “stm32f4xx_hal.h”
- Miscellaneous source code comments update
- Add a new example HAL/HAL_TimeBase describing how to customize the HAL time base
using a general purpose timer(TIM6) instead of Systick
- Example PWR/PWR_CurrentConsumption: update following latest change in HAL V1.1.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
- Example RCC/RCC_ClockConfig
- In main.c file : add the default HSI
calibration value “RCC_OscInitStruct.HSICalibrationValue = 0x10;” in
function SystemClockHSI_Config()
- Example SMARTCARD/ SMARTCARD_T0
- In smartcard.c file: add the support of new
version of Smart card ref 8000030 and 800080
- Example TIM/TIM_InputCapture
- In main.c file: Update the function
HAL_TIM_IC_CaptureCallback() to avoid division by 0
- Example TIM/TIM_PWMInput
- Change the name of example from
“TIM_PWMIntput” to “TIM_PWMInput”
- Example TIM/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;”
- Example UART/UART_Hyperterminal_DMA and UART/UART_Hyperterminal_IT
- Add display on the Hyperterminal of the actions that need to be done by user
- Example I2S/I2S_Audio
- Use the buffer size in byte instead of half-word when
calling the BSP_AUDIO_OUT_Play() function
- Miscellaneous update
V1.0.1 / 26-February-2014
Main Changes
- Miscellaneous update on BSP, MPU and RTC Tamper examples
- SMARTCARD: add project for MDK-ARM toolchain and miscellaneous update
V1.0.0 / 18-February-2014
Main Changes
License
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
- Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
- 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.
- Neither the name of STMicroelectronics nor the names of its contributors may be used to endorse or promote products derived
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
|