mirror of
https://github.com/STMicroelectronics/STM32CubeF1.git
synced 2025-05-01 22:18:06 +08:00
/** @page IAP_Binary_Template IAP Binary Template Readme file @verbatim ******************** (C) COPYRIGHT 2016 STMicroelectronics ******************* * @file IAP/IAP_Binary_Template/readme.txt * @author MCD Application Team * @brief Description of the IAP_Binary_Template directory. ****************************************************************************** * @attention * * Copyright (c) 2016 STMicroelectronics. * All rights reserved. * * This software is licensed under terms that can be found in the LICENSE file * in the root directory of this software component. * If no LICENSE file comes with this software, it is provided AS-IS. * ****************************************************************************** @endverbatim @par Example Description This directory contains a set of sources files that build the application to be loaded into Flash memory using In-Application Programming (IAP) using the USART. To build such application, some special configuration has to be performed: 1. Set the program load address at 0x08004000, using your toolchain linker file 2. Relocate the vector table at address 0x08004000, using the "NVIC_SetVectorTable" function. The SysTick example provided within the STM32F1xx HAL Cube examples is used as illustration. This example configures the SysTick to generate a time base equal to 1 ms. The system clock is set to the maximum system frequency, the SysTick is clocked by the AHB clock (HCLK). A "Delay" function is implemented based on the SysTick end-of-count event. Four LEDs are toggled with a timing defined by the Delay function. @par Directory contents - IAP/IAP_Binary_Template/EWARM: This folder contains a IAR pre-configured project file that produces a binary image of SysTick example that could be loaded using IAP. - IAP/IAP_Binary_Template/MDK-ARM: This folder contains a Keil pre-configured project file that produces a binary image of SysTick example that could be loaded using IAP. - IAP/IAP_Binary_Template/SW4STM32: This folder contains a SW4STM32 pre-configured project file that produces a binary image of SysTick example that could be loaded using IAP. - IAP/IAP_Binary_Template/Inc: contains the binary template firmware header files - IAP/IAP_Binary_Template/Inc/stm32f1xx_hal_conf.h Library Configuration file - IAP/IAP_Binary_Template/Inc/stm32f1xx_it.h Header for stm32f1xx_it.c - IAP/IAP_Binary_Template/Inc/main.h Header for main.c - IAP/IAP_Binary_Template/Src: contains the binary template firmware source files - IAP/IAP_Binary_Template/Src/main.c Main program - IAP/IAP_Binary_Template/Src/stm32f1xx_it.c Interrupt handlers - IAP/IAP_Binary_Template/Src/system_stm32f1xx.c STM32F1xx system source file - IAP/IAP_Binary_Template/Utilities: This folder contains Axf (Keil) conversion scripts to BIN format. @note The "system_stm32f1xx.c" is generated by an automatic clock configuration system and can be easily customized to your own configuration. @par Hardware and Software environment - This example runs on STM32F1xx Devices. - This example has been tested with STMicroelectronics STM3210C-EVAL RevC evaluation board and can be easily tailored to any other supported device and development board. @par How to use it ? In order to load the SysTick example with the IAP, you must do the following: - EWARM: - Open the Project.eww workspace - Rebuild all files: Project->Rebuild all - A binary file "STM3210C_EVAL_SysTick.bin" will be generated under "STM3210C_EVAL/Exe" folder. - Finally load this image with IAP application - MDK-ARM: - Open the Project.uvproj project - Rebuild all files: Project->Rebuild all target files - Go to "/IAP_Binary_Template/Utilities" directory and run "axftobin.bat" (Fromelf Exe path might have to be updated in "axftobin.bat" file, according to your Keil setup). - A binary file "STM3210C_EVAL_SysTick.bin" will be generated under "/IAP_Binary_Template/MDK-ARM/STM3210C_EVAL" folder. - Finally load this image with IAP application - SW4STM32 - Open the SW4STM32 toolchain. - Browse to the SW4STM32 workspace directory, select the project (.project file in \IAP_Binary_Template\SW4STM32\STM3210C_EVAL directory). - Rebuild all project files. - A binary file "STM3210C_EVAL.bin" will be generated under "STM3210C_EVAL\Debug" folder. - Finally load this image with IAP application */