User Tools

Site Tools


manual:demos:olimex_stm32p207_gcc

Differences

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

Link to this comparison view

Next revision
Previous revision
manual:demos:olimex_stm32p207_gcc [2016/07/23 18:00]
voorburg created
manual:demos:olimex_stm32p207_gcc [2023/12/04 22:24] (current)
voorburg [Supported firmware update interfaces]
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 ​     ​^ Modbus RTU   
-| Yes            | No              | No           | No           | Yes          |+| Yes           | Yes            | No          | No          | Yes          | No           | 
  
 ===== Development Environment ===== ===== Development Environment =====
  
-{{:​manual:​demos:​stm32f0_discovery.png?200 |}}+{{:​manual:​demos:​olimex_stm32_p207.jpg?200 |}}
  
-This demo is targeted towards the [[http://www.st.com/stm32f0discovery|STM32F0-Discovery]] board, with 64 kB internal Flash EEPROM and kB internal RAM.+This demo is targeted towards the [[https://www.olimex.com/Products/​ARM/​ST/​STM32-P207/​|Olimex STM32-P207]] board, with 512 kB internal Flash EEPROM and 128 kB internal RAM.
  
-To program the bootloader into the internal flash on the STM32F051 ​microcontroller,​ the on-board ST-Link Debugger Interface ​was used. However, this is not required if you have another means of programming the internal flash.+To program the bootloader into the internal flash on the STM32F207 ​microcontroller,​ the [[http://​www.segger.com/​development-tools.html|Segger J-Link]] JTAG interface ​was used. However, this is not required if you have another means of programming the internal flash.
  
-To compile ​the demo programs you can use the [[http://www.emblocks.org/|EmBitz]] development environment from Em::Blocks. The version that was used to create these demo programs was {{:​manual:​embitz_0_42.zip?​linkonly|EmBitz version 0.42}}.+To build the demo programs you can use the [[https://developer.arm.com/open-source/​gnu-toolchain/​gnu-rm|GNU ARM Embedded]] toolchain.
  
-The [[https://​www.olimex.com/​Products/​Components/​Cables/​USB-Serial-Cable/​USB-Serial-Cable-F/​|Olimex USB-Serial-Cable-F]] was used to create a connection between ​the STM32F051 USART2 ​serial ​peripheral and the PC's COM-portThe pin connections are as follows:+Firmware updates via the serial ​communication port are preconfigured to use USART3 on connector RS232_2 on the board.
  
-  * Blue cable to GND (ground pin) +===== Toolchain configuration =====
-  * Green cable to PA2 (USART2 receive) +
-  * Red cable to PA3 (USART2 transmit)+
  
 +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 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 (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]].
  
 ===== 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 STM32F051'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 STM32F207's internal flash memory. The steps in this section only need to be done once.
  
-When using EmBitzsimply ​open the project file by double-clicking the file: \Target\Demo\ARMCM0_STM32_Discovery_STM32F051_GCC\**Boot**\ide\**stm32f0.ebp** from the Windows Explorer. To build the bootloader, select //Build -> Rebuild all target files// from the program menu. +To build the bootloader, open a command prompt in directory **\Target\Demo\ARMCM3_STM32F2_Olimex_STM32P207_GCC\Boot\** ​and run the command:
  
-The bootloader program is now ready to be programmed into the internal flash memory of the STM32F051. Make sure the ST-Link Debugger Interface on the STM32F0-Discovery board is connected 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.+<code> 
 +make clean all 
 +</code> 
 +  
 +The expected output is:
  
-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:+<​code>​ 
 ++++ Cleaning build environment 
 ++++ Clean complete 
 ++++ Assembling [startup_stm32f2xx.S] 
 ++++ Compiling [main.c] 
 ++++ Compiling [hooks.c] 
 +... 
 ++++ Linking [openblt_stm32f207.elf] 
 +.. 
 ++++ Build complete [openblt_stm32f207.srec] 
 +</​code>​
  
-  ​* \Target\Demo\ARMCM0_STM32_Discovery_STM32F051_GCC\**Boot**\bin\**openblt_stm32f051.elf** +The bootloader program is now ready to be programmed into the internal flash memory of the STM32F207. Using your favorite programmer (i.e. OpenOCD, Segger J-Flash Lite or STM32 ST-Link utility), flash the bootloader using one of the following files, depending on what file type your programmer supports: 
-  * \Target\Demo\ARMCM0_STM32_Discovery_STM32F051_GCC\**Boot**\bin\**openblt_stm32f051.srec**+ 
 +  ​* \Target\Demo\ARMCM3_STM32F2_Olimex_STM32P207_GCC\**Boot**\bin\**openblt_stm32f207.elf** 
 +  * \Target\Demo\ARMCM3_STM32F2_Olimex_STM32P207_GCC\**Boot**\bin\**openblt_stm32f207.srec**
  
  
 ===== Building the Demo Program ===== ===== Building the Demo Program =====
  
-When using EmBitzsimply ​open the project file by double-clicking the file: \Target\Demo\ARMCM0_STM32_Discovery_STM32F051_GCC\**Prog**\ide\**stm32f0.ebp** from the Windows Explorer. To build the demo program, select //Build -Rebuild ​all target files// from the program'​s menu+To build the user program, open a command prompt in directory **\Target\Demo\ARMCM3_STM32F2_Olimex_STM32P207_GCC\Prog\** ​and run the command: 
 + 
 +<code> 
 +make clean all 
 +</code> 
 +  
 +The expected output is: 
 + 
 +<​code>​ 
 ++++ Cleaning build environment 
 ++++ Clean complete 
 ++++ Assembling [startup_stm32f2xx.S] 
 ++++ Compiling [boot.c] 
 ++++ Compiling [main.c] 
 +... 
 ++++ Linking [demoprog_stm32f207.elf] 
 +... 
 ++++ Build complete [demoprog_stm32f207.srec]</​code>​
  
 The output file is The output file is
  
-  * \Target\Demo\ARMCM0_STM32_Discovery_STM32F051_GCC\**Prog**\bin\**demoprog_stm32f051.srec**+  * \Target\Demo\ARMCM3_STM32F2_Olimex_STM32P207_GCC\**Prog**\bin\**demoprog_stm32f207.srec**
  
  
 ===== Firmware update procedure ===== ===== Firmware update procedure =====
  
-To download the demo program \Target\Demo\ARMCM0_STM32_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\ARMCM3_STM32F2_Olimex_STM32P207_GCC\**Prog**\bin\**demoprog_stm32f207.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:​can_demo|Firmware updates using the CAN communication interface]] 
 +  * [[manual:​sdcard_demo|Firmware updates from SD-card]]
  
  
manual/demos/olimex_stm32p207_gcc.1469289620.txt.gz · Last modified: 2019/09/24 22:13 (external edit)