User Tools

Site Tools


manual:demos:stm32f0_discovery_truestudio

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
manual:demos:stm32f0_discovery_truestudio [2018/05/17 16:26]
voorburg
manual:demos:stm32f0_discovery_truestudio [2020/02/06 16:20] (current)
voorburg
Line 3: Line 3:
 ===== Supported firmware update interfaces ===== ===== Supported firmware update interfaces =====
  
-UART           ^ CAN             ^ USB          ^ TCP/​IP ​      ^ SD-card ​     ^+RS232          ​^ CAN             ^ USB          ^ TCP/​IP ​      ^ SD-card ​     ^
 | Yes            | No              | No           | No           | No          | | Yes            | No              | No           | No           | No          |
  
Line 22: Line 22:
   * Red cable to PA3 (USART2 transmit)   * Red cable to PA3 (USART2 transmit)
  
-===== Toolchain configuration ​=====+===== Workspace creation in TrueStudio ​=====
  
-The demo programs ​are configured ​for building with a Makefile. Before attempting to perform a build, update ​the location of the toolchain binaries (i.e. //​arm-none-eabi-gcc//​) in the Makefile. It is set in variable **TOOL_PATH**. If the toolchain binaries are available on the paththen the **TOOL_PATH** variable can be left empty.+Two demo projects ​are included in the OpenBLT bootloader package. One for the bootloader itself and one for the demo user programThis user program ​is configured such that it can be programmed, into the internal flash memory of the microcontrollerduring a firmware update with the bootloader.
  
-{{:​manual:​demos:makefile_toolpath.png?​nolink&​|}}+The first step in getting the the bootloader up-and-running,​ is the creation of the Eclipse workspace in TrueStudio. After starting TrueStudio, you are prompted to open a workspace. It is easiest to create a new one in the following directory: .\Target\Demo\ARMCM0_STM32F0_Discovery_STM32F051_TrueStudio\
  
-It is assumed that tools such as GNU //make// and //rm// are installed and available on the path. For (Ubuntu) Linux users this can be achieved by running command//sudo apt-get install build-essential//​. Windows users can install the [[https://​gnu-mcu-eclipse.github.io/​windows-build-tools/​|GNU MCU Eclipse Windows Build Tools]].+{{:manual:demos:​stm32f0_discovery_truestudio_workspace_creation.png?550|}}
  
-===== Building and programming ​the Bootloader =====+To import ​the demo programs into the workspace, select //File -> Import// from the program menu. Then select //General -> Existing Projects into Workspace//​. On the next screen you select the following directory as the root directory: .\Target\Demo\ARMCM0_STM32F0_Discovery_STM32F051_TrueStudio\. Eclipse will automatically find the **Boot** and **Prog** projects and select them:
  
-Before the bootloader can be used, it needs to be built and programmed into the STM32F051'​s internal flash memory. The steps in this section only need to be done once.+{{:​manual:​demos:​stm32f0_discovery_truestudio_project_import.png?650|}}
  
-To build the bootloader, open a command prompt in directory **\Target\Demo\ARMCM0_STM32F0_Discovery_STM32F051_GCC\Boot\** and run the command:+Click the //Finish// button to complete ​the project import operation.
  
-<​code>​ +===== Building and programming the Bootloader =====
-make clean all +
-</​code>​ +
-  +
-The expected output is:+
  
-<​code>​ +Before the bootloader can be used, it needs to be built and programmed into the STM32F051R8'​s internal flash memoryThe steps in this section only need to be done once.
-+++ Cleaning build environment +
-+++ Clean complete +
-+++ Assembling [startup_stm32f0xx.S] +
-+++ Compiling [main.c] +
-+++ Compiling [hooks.c] +
-... +
-+++ Linking [openblt_stm32f051.elf] +
-... +
-+++ Build complete [openblt_stm32f051.srec] +
-</​code>​+
  
-The bootloader program ​is now ready to be programmed into the internal flash memory of the STM32F051. Using your favorite programmer (i.e. OpenOCD or STM32 ST-Link utility)flash the bootloader ​using one of the following files, depending on what file type your programmer supports:+Set the project as the active project in Eclipse. This is achieved by clicking ​the **Boot** project in the //Project Explorer// to select itNextselect //Project -> Rebuild Project// from the menu to compile all the bootloader ​sources and link them together into the final executable.
  
-  * \Target\Demo\ARMCM0_STM32F0_Discovery_STM32F051_GCC\**Boot**\bin\**openblt_stm32f051.elf** +The bootloader program is now ready to be programmed into the internal flash memory of the STM32F051R8 microcontrollerMake sure the STM32F0-Discovery board is connected to your PC via a USB cable. Next, select //Run -> Debug// from the menu to flash the bootloader program. This will launch the Debug perspective in Eclipse. Once done, you can start the bootloader program by selecting //Run -> Resume// from the menu.
-  * \Target\Demo\ARMCM0_STM32F0_Discovery_STM32F051_GCC\**Boot**\bin\**openblt_stm32f051.srec**+
  
-===== Building ​the Demo Program =====+Alternatively,​ you can use your favorite programmer to flash the bootloader using one of the following files, depending on what file type your programmer supports:
  
-To build the user program, open a command prompt in directory ​**\Target\Demo\ARMCM0_STM32F0_Discovery_STM32F051_GCC\Prog\** and run the command:+  * \Target\Demo\ARMCM0_STM32F0_Discovery_STM32F051_TrueStudio\**Boot**\Debug\**openblt_stm32f051.elf** 
 +  ​* \Target\Demo\ARMCM0_STM32F0_Discovery_STM32F051_TrueStudio\**Boot**\Debug\**openblt_stm32f051.srec**
  
-<​code>​ 
-make clean all 
-</​code>​ 
-  
-The expected output is: 
  
-<​code>​ +===== Building the Demo Program =====
-+++ Cleaning build environment +
-+++ Clean complete +
-+++ Assembling [startup_stm32f0xx.S] +
-+++ Compiling [boot.c] +
-+++ Compiling [main.c] +
-... +
-+++ Linking [demoprog_stm32f051.elf] +
-... +
-+++ Build complete [demoprog_stm32f051.srec] +
-</​code>​+
  
-The output file is+Set the project as the active project in Eclipse. This is achieved by clicking the **Prog** project in the //Project Explorer// to select it. Next, select //Project -> Rebuild Project// from the menu to compile all the user program sources and link them together into the final executable.
  
-  * \Target\Demo\ARMCM0_STM32F0_Discovery_STM32F051_GCC\**Prog**\bin\**demoprog_stm32f051.srec**+The output file is
  
 +  * \Target\Demo\ARMCM0_STM32F0_Discovery_STM32F051_TrueStudio\**Prog**\Debug\**demoprog_stm32f051.srec**
  
 ===== Firmware update procedure ===== ===== Firmware update procedure =====
  
-To download the demo program \Target\Demo\ARMCM0_STM32F0_Discovery_STM32F051_GCC\**Prog**\bin\**demoprog_stm32f051.srec** using the bootloader, follow the instructions in the following links, depending on the communication interface you intend to use:+To download the demo program \Target\Demo\ARMCM0_STM32F0_Discovery_STM32F051_TrueStudio\**Prog**\Debug\**demoprog_stm32f051.srec** using the bootloader, follow the instructions in the following links, depending on the communication interface you intend to use:
  
-  * [[manual:uart_demo|Firmware updates using the UART communication interface]]+  * [[manual:rs232_demo|Firmware updates using the RS232 communication interface]]
  
  
manual/demos/stm32f0_discovery_truestudio.1526567173.txt.gz · Last modified: 2019/09/24 22:13 (external edit)