User Tools

Site Tools


manual:demos:nucleo_f103rb_gcc

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:nucleo_f103rb_gcc [2017/05/23 19:18]
voorburg [Firmware update procedure]
manual:demos:nucleo_f103rb_gcc [2020/02/06 16:21] (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 12: Line 12:
 This demo is targeted towards the [[http://​www.st.com/​en/​evaluation-tools/​nucleo-f103rb.html|Nucleo-F103RB]] board, with 128 kB internal Flash EEPROM and 20 kB internal RAM. This demo is targeted towards the [[http://​www.st.com/​en/​evaluation-tools/​nucleo-f103rb.html|Nucleo-F103RB]] board, with 128 kB internal Flash EEPROM and 20 kB internal RAM.
  
-To program the bootloader into the internal flash on the on-board ST-Link debugger interface was used. Firmware updates via the serial communication port are preconfigured to use the virtual COM-port offered by the ST-Link. This means that no additional hardware is needed, besides a standard micro-USB cable.+To program the bootloader into the internal flashthe on-board ST-Link debugger interface was used. Firmware updates via the serial communication port are preconfigured to use the virtual COM-port offered by the ST-Link. This means that no additional hardware is needed, besides a standard micro-USB cable.
  
-The demo programs are pre-configured for building with the {{:​manual:​arm-2013.11-24-arm-none-eabi.zip?linkonly|Codesourcery G++ Lite}} (Target OS EABItoolchainAlternatively,​ you can use the [[manual:​demos:gcc_arm_embedded|GCC ARM Embedded]] toolchain.+To build the demo programs you can use the [[https://​developer.arm.com/​open-source/​gnu-toolchain/​gnu-rm|GNU ARM Embedded]] toolchain. 
 + 
 +===== Toolchain configuration ===== 
 + 
 +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 MakefileIt is set in variable **TOOL_PATH**. If the toolchain binaries are available on the path, then the **TOOL_PATH** variable can be left empty. 
 + 
 +{{:​manual:​demos:​makefile_toolpath.png?nolink&|}} 
 + 
 + 
 +It is assumed that tools such as GNU //make// and //rm// are installed and available on the path. For (UbuntuLinux 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]].
  
 ===== Building and programming the Bootloader ===== ===== Building and programming the Bootloader =====
Line 20: Line 29:
 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 STM32F103'​s internal flash memory. The steps in this section only need to be done once.
  
-Batch files are added to aid in building the software program. First clean the bootloader ​program by double-clicking the file "​\Target\Demo\ARMCM3_STM32F1_Nucleo_F103RB_GCC\**Boot**\cmd\**clean.bat**"​. Next, build the bootloader program by double-clicking the file "\Target\Demo\ARMCM3_STM32F1_Nucleo_F103RB_GCC\**Boot**\cmd\**build.bat**"​. ​The output ​should look like:+To build the bootloader, open a command prompt in directory ​**\Target\Demo\ARMCM3_STM32F1_Nucleo_F103RB_GCC\Boot\** ​and run the command: 
 + 
 +<​code>​ 
 +make clean all 
 +</​code>​ 
 +  
 +The expected ​output ​is:
  
 <​code>​ <​code>​
Line 39: Line 54:
 ===== Building the Demo Program ===== ===== Building the Demo Program =====
  
-Batch files are added to aid in building ​the demo program. First clean the demo program by double-clicking the file "​\Target\Demo\ARMCM3_STM32F1_Nucleo_F103RB_GCC\**Prog**\cmd\**clean.bat**"​. Next, build the demo program by double-clicking the file "\Target\Demo\ARMCM3_STM32F1_Nucleo_F103RB_GCC\**Prog**\cmd\**build.bat**"​. ​The output ​should look like:+To build the user program, open a command prompt in directory ​**\Target\Demo\ARMCM3_STM32F1_Nucleo_F103RB_GCC\Prog\** ​and run the command: 
 + 
 +<​code>​ 
 +make clean all 
 +</​code>​ 
 +  
 +The expected ​output ​is:
  
 <​code>​ <​code>​
Line 58: Line 79:
 To download the demo program \Target\Demo\ARMCM3_STM32F1_Nucleo_F103RB_GCC\**Prog**\bin\**demoprog_nucleo_stm32f103rb.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_Nucleo_F103RB_GCC\**Prog**\bin\**demoprog_nucleo_stm32f103rb.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/nucleo_f103rb_gcc.1495559888.txt.gz · Last modified: 2019/09/24 22:13 (external edit)