UM1962 User manual Getting started with STM32F469I discovery software development tools Introduction This document describes some software environment recommendations, required to build an application using the STM32F469I Discovery kit (32F469IDISCOVERY). The document provides users with guidelines about how to build and run a simple example and how to create and build an application. It has the following structure: • The first chapter presents the software and hardware requirements (some toolchains supporting the STM32 families, ST-LINK/V2-1 installation and firmware package presentation). • The second chapter provides step by step guidelines on how to execute and debug an application example using the following toolchains: – IAR Embedded Workbench® for ARM® (EWARM) by IAR Systems® – Microcontroller development kit for ARM® (MDK-ARM) by Keil® – System Workbench for STM32 (SW4STM32) by AC6 Although this user manual does not cover all the topics relevant to software development environment, it demonstrates the first basic steps necessary to get started with the compilers/debuggers and it includes references for complementary information. October 2015 DocID028464 Rev 1 1/18 www.st.com 1 Contents UM1962 Contents 1 System requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2 IDEs supporting STM32 families . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 3 ST-LINK/V2-1 installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 4 Firmware package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 5 Compiling, linking and executing firmware using software toolchains . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 6 2/18 5.1 EWARM toolchain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 5.2 MDK-ARM toolchain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 5.3 SW4STM32 toolchain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 DocID028464 Rev 1 UM1962 List of tables List of tables Table 1. Table 2. Toolchains supporting STM32F469I Discovery kit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Document revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 DocID028464 Rev 1 3/18 3 List of figures UM1962 List of figures Figure 1. Figure 2. Figure 3. Figure 4. Figure 5. Figure 6. Figure 7. Figure 8. Figure 9. Figure 10. Figure 11. Figure 12. Figure 13. Figure 14. Figure 15. Figure 16. Figure 17. 4/18 Hardware environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Package contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 IAR embedded workbench IDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 EWARM project successfully compiled. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Download and debug button . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 IAR embedded workbench debugger screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 IAR Go button . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 µVision5 IDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 MDK-ARM project successfully compiled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Start/Stop debug session button. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 MDK-ARM debugger screen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Run button . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 SW4STM32 workspace launcher dialog box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 SW4STM32 import source select dialog box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 SW4STM32 import projects dialog box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 SW4STM32 project successfully compiled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 SW4STM32 debug window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 DocID028464 Rev 1 UM1962 1 System requirements System requirements Before running an application, the user should: 1. Install his preferred Integrated Development Environment (IDE). 2. Install the ST-LINK V2-1 driver from the www.st.com web page. 3. Download the STM32F469I Discovery firmware from the www.st.com web page. 4. Establish the USB connection with the STM32F469 Discovery board by connecting the CN1 connector of the STM32F469 Discovery board to the USB port of the PC, using a type A to Mini-B USB cable (the Figure 1 shows the connector CN1 inside the red circle). Figure 1. Hardware environment The above steps will be detailed in the following sections. DocID028464 Rev 1 5/18 17 IDEs supporting STM32 families 2 UM1962 IDEs supporting STM32 families STM32 families of 32-bit ARM® Cortex® -M core-based microcontrollers are supported by a complete range of software tools. It encompasses traditional integrated development environments IDEs with C/C++ compilers and debuggers from major 3rd-parties (free versions up to 64 Kbytes of code, depending on 3rd-parties), completed with innovative tools from STMicroelectronics. The following table regroups general information about the three integrated development environments, as well as the version supporting the STM32F469I product. Table 1. Toolchains supporting STM32F469I Discovery kit Toolchain Company Compiler EWARM IAR Systems® IAR C/C++ MDK-ARM Keil® ARMCC SW4STM32 AC6 GNU C Version 7.40.4 and later http://www.iar.com 30-day evaluation edition KickStart edition (32-KByte code size limitation) http://www.keil.com 5.xx and later with STM32F4xx_DFP2.6.0.pack MDK-Lite (32-KByte code size limitation) 1.4 and later 1. Registration before downloading is required. 6/18 Download link(1) DocID028464 Rev 1 http://www.openstm32.org Free version: no limitation UM1962 3 ST-LINK/V2-1 installation ST-LINK/V2-1 installation The STM32F469I Discovery board includes an embedded ST-LINK/V2 debug tool interface. The interface needs an ST-LINK/V2 dedicated USB driver to be installed. This driver is available from the www.st.com web page and it is supported by the software toolchains: • IAR Embedded Workbench for ARM (EWARM). The toolchain is installed by default in the C:\Program Files\IAR Systems\Embedded Workbench x.x directory on the hard disk of the local PC. After having installed EWARM, install the ST-LINK/V2 driver by running the ST-Link_V2_USB.exe from IAR_INSTALL_DIRECTORY]\Embedded Workbench x.x\arm\drivers\ST-LINK \ST-Link_V2_USBdriver.exe. • Keil Microcontroller Development Kit (MDK-ARM) toolchain. The toolchain is installed by default in the C:\Keil directory on the hard disk of the local PC; the installer creates a ARM® Keil® µVision®4 shortcut in the start menu. When connecting the ST-LINK/V2 tool, the PC detects new hardware and prompts user to install the ST-Link_V2_USB driver. The “Found New Hardware” wizard displays and guides the user through the steps, required to install the driver from the recommended location. • AC6 System Workbench for STM32 (SW4STM32). The toolchain is installed by default in the C:\Program Files\AC6 directory on the hard disk of the local PC. The ST-Link_V2_USB.exe is automatically executed, when installing the software toolchain. For complementary information on the firmware package content and the STM32F469I Discovery requirements, refer to: STM32CubeF4 demonstration platform (UM1743 user manual). Note: The embedded ST-LINK/V2-1 supports only the SWD interface for STM32 devices. DocID028464 Rev 1 7/18 17 Firmware package 4 UM1962 Firmware package The STM32F469I Discovery firmware applications, demonstration and examples are provided in one single.zip file. The extraction of the zip file generates a folder named “STM32Cube_FW_F4_VX.Y.Z”, which contains the subfolders shown in Figure 2. Figure 2. Package contents Subfolders description Template: pre-configured project with empty main function to be customized. This is helpful to start creating your own application. Peripheral examples: including set of examples for each STM32F469 peripheral ready to be run. Applications: including set of applications for each STM32F469 peripheral ready to be run. Demonstrations: including demonstration firmware for STM32F469 boards ready to be run. 8/18 DocID028464 Rev 1 UM1962 5 Compiling, linking and executing firmware using software toolchains Compiling, linking and executing firmware using software toolchains The below steps can be applied to an already existing example, demonstration or template project available inside the STM32F469I Discovery package firmware from the www.st.com web site. First of all, the user must read the readme.txt file, which contains a description of the firmware and hardware/software requirements. 5.1 EWARM toolchain 1. Open the IAR Embedded Workbench for ARM (EWARM). Figure 3 shows the names of the windows, to which this document refers. Figure 3. IAR embedded workbench IDE 2. In the File menu, select Open and click Workspace, to display the Open Workspace dialog box. Browse to select either an example or demonstration or template workspace file, and click Open to launch it in the Project window. 3. In the Project menu, select Rebuild All to compile the project. 4. If the Project is successfully compiled, the window, shown in Figure 4: EWARM project successfully compiled, is displayed. DocID028464 Rev 1 9/18 17 Compiling, linking and executing firmware using software toolchains UM1962 Figure 4. EWARM project successfully compiled To change the project settings (Include and preprocessor defines), simply go through the project options: • For Include directories Project>Options…>C/C++ compiler> • For pre-processor defines Project>Options…C/C++ compiler>pre-processor> 5. In the IAR Embedded Workbench IDE, from the Project menu, select Download and Debug or, alternatively, click the Download and Debug button in the toolbar, to program the Flash memory and begin debugging (see Figure 5). Figure 5. Download and debug button 6. The debugger in the IAR Embedded Workbench can be used to debug source code at C and assembly levels, to set breakpoints, to monitor individual variables and watch events during the code execution (see Figure 6). Figure 6. IAR embedded workbench debugger screen 10/18 DocID028464 Rev 1 UM1962 Compiling, linking and executing firmware using software toolchains To run the application, from the Debug menu, select Go. Alternatively, click the Go button in the toolbar to run the application (see Figure 7). Figure 7. IAR Go button 5.2 MDK-ARM toolchain 1. Open the Keil MDK-ARM Microcontroller Kit. Figure 8 shows the basic names of the “Keil µVision5” windows to which this document refers. Figure 8. µVision5 IDE 2. In the Project menu, select Open Project... Browse to select either an example or demonstration or template project file, and click Open to launch it in the Project window. 3. In the Project menu, select Rebuild All target files to compile the project. DocID028464 Rev 1 11/18 17 Compiling, linking and executing firmware using software toolchains 4. UM1962 If the project is successfully compiled, the following window in Figure 9 is displayed. Figure 9. MDK-ARM project successfully compiled To change the project settings (Include and preprocessor defines), simply go through the project options: • For Include directories Project>Options for Target > C/C++ > Include Paths • For pre-processor defines Project>Options for Target > C/C++ > Preprocessor symbols > Define 5. In the MDK-ARM IDE, from the Debug menu, select Start/Stop Debug Session or, alternatively, click the Start/Stop Debug Session button in the toolbar, to program the Flash memory and begin debugging (see Figure 10). Figure 10. Start/Stop debug session button 6. 12/18 The MDK-ARM debugger can be used to debug source code at C and assembly levels, to set breakpoints, to monitor individual variables and to watch events during the code execution (see Figure 11). DocID028464 Rev 1 UM1962 Compiling, linking and executing firmware using software toolchains Figure 11. MDK-ARM debugger screen To run the application, from the Debug menu, select Run. Alternatively, click the Run button in the toolbar to run the application (see Figure 12). Figure 12. Run button DocID028464 Rev 1 13/18 17 Compiling, linking and executing firmware using software toolchains 5.3 UM1962 SW4STM32 toolchain 1. Open the AC6 SW4STM32 for STM32 products. The program launches and prompts for the workspace location (see Figure 13). Figure 13. SW4STM32 workspace launcher dialog box 2. 3. 4. Browse to select a SW4STM32 workspace of either an example or demonstration or template workspace file and click OK to load it. To load an existing project in the selected workspace, select Import from the File menu to display the Import dialog box. In the Import window, open General, select Existing Projects into Workspace and click Next (see Figure 14). Figure 14. SW4STM32 import source select dialog box 14/18 DocID028464 Rev 1 UM1962 Compiling, linking and executing firmware using software toolchains 5. Click Select root directory, browse to the SW4STM32 workspace folder (see Figure 15). Figure 15. SW4STM32 import projects dialog box 6. In the Projects panel, select the project and click Finish. 7. In the Project Explorer, select the project, open the Project menu, and click Build Project. 8. If the project is successfully compiled, the following messages is displayed on the Console window (see Figure 16). Figure 16. SW4STM32 project successfully compiled To change the project settings (Include directories and preprocessor defines), simply go through Project>Properties, select C/C++ Build>Settings from the left panel: • For Include directories’ C Compiler>Directories>Include path • For pre-processor defines C Compiler>Symbols> Defined symbols 9. To debug and run the application, select the project In the Project Explorer and press F11 to start a debug session. DocID028464 Rev 1 15/18 17 Compiling, linking and executing firmware using software toolchains UM1962 In the Project Explorer, select the project and press F11 to start a debug session (see Figure 17). Figure 17. SW4STM32 debug window The debugger in the AC6 SW4STM32 can be used to debug source code at the C and assembly levels, to set breakpoints, to monitor individual variables and to watch events during the code execution. To run the application, from the Run menu, select Resume, or alternatively click the Resume button in the toolbar. 16/18 DocID028464 Rev 1 UM1962 6 Revision history Revision history Table 2. Document revision history Date Revision 30-Oct-2015 1 Changes Initial release. DocID028464 Rev 1 17/18 17 UM1962 IMPORTANT NOTICE – PLEASE READ CAREFULLY STMicroelectronics NV and its subsidiaries (“ST”) reserve the right to make changes, corrections, enhancements, modifications, and improvements to ST products and/or to this document at any time without notice. Purchasers should obtain the latest relevant information on ST products before placing orders. ST products are sold pursuant to ST’s terms and conditions of sale in place at the time of order acknowledgement. Purchasers are solely responsible for the choice, selection, and use of ST products and ST assumes no liability for application assistance or the design of Purchasers’ products. No license, express or implied, to any intellectual property right is granted by ST herein. Resale of ST products with provisions different from the information set forth herein shall void any warranty granted by ST for such product. ST and the ST logo are trademarks of ST. All other product or service names are the property of their respective owners. Information in this document supersedes and replaces information previously supplied in any prior versions of this document. © 2015 STMicroelectronics – All rights reserved 18/18 DocID028464 Rev 1