This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
manual:demos:olimexino_stm32_truestudio [2018/06/07 12:13] voorburg [Toolchain configuration] |
manual:demos:olimexino_stm32_truestudio [2018/06/07 12:17] voorburg [Firmware update procedure] |
||
---|---|---|---|
Line 32: | Line 32: | ||
===== Building and programming the Bootloader ===== | ===== Building and programming the Bootloader ===== | ||
- | Before the bootloader can be used, it needs to be built and programmed into the STM32F103's internal flash memory. The steps in this section only need to be done once. | + | Before the bootloader can be used, it needs to be built and programmed into the STM32F103RB's internal flash memory. The steps in this section only need to be done once. |
- | To build the bootloader, open a command prompt in directory **\Target\Demo\ARMCM3_STM32F1_Olimexino_STM32_GCC\Boot\** and run the command: | + | Set the project as the active project in Eclipse. This is achieved by clicking the **Boot** project in the //Project Explorer// to select it. Next, select //Project -> Rebuild Project// from the menu to compile all the bootloader sources and link them together into the final executable. |
- | <code> | + | The bootloader program is now ready to be programmed into the internal flash memory of the STM32F103RB microcontroller. Make sure the Olimexino-STM32 board is connected to your PC via a ST-LINK/V2 debugger interface. 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. |
- | make clean all | + | |
- | </code> | + | |
- | + | ||
- | The expected output is: | + | |
- | + | ||
- | <code> | + | |
- | +++ Cleaning build environment | + | |
- | +++ Clean complete | + | |
- | +++ Assembling [startup_stm32f10x_md.S] | + | |
- | +++ Compiling [usb_desc.c] | + | |
- | +++ Compiling [usb_endp.c] | + | |
- | ... | + | |
- | +++ Linking [openblt_olimexino_stm32.elf] | + | |
- | ... | + | |
- | +++ Build complete [openblt_olimexino_stm32.srec] | + | |
- | </code> | + | |
- | + | ||
- | The bootloader program is now ready to be programmed into the internal flash memory of the STM32F103. Make sure the Segger J-Link debugger interface it connected to the JTAG connector on the Olimexino-STM32 board and the other side to your PC via a USB cable. Next, select //Debug -> Start Debug Session (F8)// from EmBitz's program menu to flash the bootloader program. Once done, you can start the bootloader program by selecting //Debug -> Run (F5)// from the program's menu. | + | |
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: | 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: | ||
- | * \Target\Demo\ARMCM3_STM32F1_Olimexino_STM32_GCC\**Boot**\bin\**openblt_olimexino_stm32.elf** | + | * \Target\Demo\ARMCM3_STM32F1_Olimexino_STM32_TrueStudio\**Boot**\Debug\**openblt_olimexino_stm32.elf** |
- | * \Target\Demo\ARMCM3_STM32F1_Olimexino_STM32_GCC\**Boot**\bin\**openblt_olimexino_stm32.srec** | + | * \Target\Demo\ARMCM3_STM32F1_Olimexino_STM32_TrueStudio\**Boot**\Debug\**openblt_olimexino_stm32.srec** |
===== Building the Demo Program ===== | ===== Building the Demo Program ===== | ||
- | To build the user program, open a command prompt in directory **\Target\Demo\ARMCM3_STM32F1_Olimexino_STM32_GCC\Prog\** and run the command: | + | 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. |
- | + | ||
- | <code> | + | |
- | make clean all | + | |
- | </code> | + | |
- | + | ||
- | The expected output is: | + | |
- | + | ||
- | <code> | + | |
- | +++ Cleaning build environment | + | |
- | +++ Clean complete | + | |
- | +++ Assembling [startup_stm32f10x_md.S] | + | |
- | +++ Compiling [boot.c] | + | |
- | +++ Compiling [main.c] | + | |
- | ... | + | |
- | +++ Linking [demoprog_olimexino_stm32.elf] | + | |
- | ... | + | |
- | +++ Build complete [demoprog_olimexino_stm32.srec] | + | |
- | </code> | + | |
The output file is | The output file is | ||
- | * \Target\Demo\ARMCM3_STM32F1_Olimexino_STM32_GCC\**Prog**\bin\**demoprog_olimexino_stm32.srec** | + | * \Target\Demo\ARMCM3_STM32F1_Olimexino_STM32_TrueStudio\**Prog**\Debug\**demoprog_olimexino_stm32.srec** |
===== Firmware update procedure ===== | ===== Firmware update procedure ===== | ||
- | To download the demo program \Target\Demo\ARMCM3_STM32F1_Olimexino_STM32_GCC\**Prog**\bin\**demoprog_olimexino_stm32.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\ARMCM3_STM32F1_Olimexino_STM32_TrueStudio\**Prog**\Debug\**demoprog_olimexino_stm32.srec** using the bootloader, follow the instructions in the following links, depending on the communication interface you intend to use: |
* [[manual:can_demo|Firmware updates using the CAN communication interface]] | * [[manual:can_demo|Firmware updates using the CAN communication interface]] |