104 lines
		
	
	
		
			4.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			104 lines
		
	
	
		
			4.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| /**
 | |
|   @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 STM3210E-EVAL RevD 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 "STM3210E_EVAL_SysTick.bin" will be generated under "STM3210E_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 "STM3210E_EVAL_SysTick.bin" will be generated under "/IAP_Binary_Template/MDK-ARM/STM3210E_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\STM3210E_EVAL directory).
 | |
|     - Rebuild all project files.
 | |
|     - A binary file "STM3210E_EVAL.bin" will be generated under "STM3210E_EVAL\Debug" folder. 
 | |
|     - Finally load this image with IAP application
 | |
| 
 | |
| 
 | |
|  */
 |