Home
Getting started with STM32CubeF1 firmware package for STM32F1
Contents
1. The examples are classified depending on the STM32Cube level they apply to and are named as explained below e Examples in level 0 are called Examples They use HAL drivers without any middleware component e Examples in level 1 are called Applications They provides typical use cases of each middleware component The Template project available in the Template directory allows to quickly build a firmware application on a given board d DoclD027272 Rev 2 13 23 STM32CubeF1 firmware package overview UM1847 14 23 All examples have the same structure Vnc folder that contains all header files Src folder for the sources code e EWARM MDK ARM TrueSTUDIO and SW4STM32 folders contain the pre configured project for each toolchain e readme txt describing the example behavior and needed environment to make it working Table 3 gives the number of projects available for each board Table 3 Number of examples available for each board Board Examples Applications Demonstration STM3210E EVAL 31 8 N A STM3210C EVAL 18 19 N A STM32VLDISCOVERY 17 N A N A NUCLEO F103RB 25 3 1 DoclD027272 Rev 2 3 UM1847 Getting started with STM32CubeF1 4 4 1 3 Getting started with STM32CubeF1 Running your first example This section explains how simple is to run a first example within STM32CubeF1 It uses as illustration the generation of a simple LED
2. lt T UM1847 Sf i life augmented User manual Getting started with STM32CubeF 1 firmware package for STM32F1 series Introduction The STMCube initiative was originated by STMicroelectronics to ease developers life by reducing development efforts time and cost STM32Cube covers the STM32 portfolio STM32Cube Version 1 x includes e The STM32CubeMNX a graphical software configuration tool that allows the generation of C initialization code using graphical wizards e A comprehensive embedded software platform delivered per series such as STM32CubeF1 for STM32F1 series The STM32Cube HAL an STM32 abstraction layer embedded software ensuring maximized portability across STM32 portfolio A consistent set of middleware components such as RTOS USB STMTouch FatFS and Graphics A All embedded software utilities coming with a full set of examples This user manual describes how to get started with the STM32CubeF 1 firmware package Section 1 describes the main features of STM32CubeF 1 firmware part of the STMCube initiative Section 2 and Section 3 provide an overview of the STM32CubeF 1 architecture and firmware package structure June 2015 DoclD027272 Rev 2 1 23 www st com Contents UM1847 Contents 1 STM32CubeF1 main features 000 c eee eee 6 2 STM32CubeF1 architecture overview Lse 7 2 1 Level O vn sale ea avg dui apex Gonos ate ans tnde edad te
3. HAL level STM32F0 STM32F1 STM32F2 STM32F3 STM32F4 STM32L0 STM32L1 Hardware MSv36184V1 DoclD027272 Rev 2 Ly UM1847 STM32CubeF1 architecture overview 2 STM32CubeF1 architecture overview The STM32Cube firmware solution is built around three independent levels that can easily interact with each other s as described in Figure 2 Figure 2 STM32CubeF1 firmware architecture Level 2 Evaluation board and Discovery Kit demonstration Applications Level 1 i Library and protocol based components for example FatFS FreeRTOS USB Device Examples BSP drivers Level 0 HAL peripheral drivers E pem Low level Driver Core optional HAL MSv34990V2 2 1 Level 0 This level is divided into three sub layers e Board Support Package BSP e Hardware Abstraction Layer HAL e Basic peripheral usage examples ky DoclD027272 Rev 2 7 23 STM32CubeF1 architecture overview UM1847 2 1 1 2 2 2 2 1 8 23 Board Support Package BSP This layer offers a set of APIs relative to the hardware components in the hardware boards LCD drivers MicroSD It is composed of two parts e Component This is the driver relative to the external device on the board and not to the STM32 The component driver provide specific APIs to the BSP driver external components and could be portable on any other board e B
4. callback function defined in stm32f1xx hal msp c user file to perform global low level hardware initializations 5 Configure the system clock The system clock configuration is done by calling the two APIs described below a b HAL RCC OscConfig this API configures the internal and or external oscillators as well as the PLL source and factors The user can choose to configure one oscillator or all oscillators The PLL configuration can be skipped if there is no need to run the system at high frequency HAL RCC ClockConfig this API configures the system clock source the Flash memory latency and AHB and APB prescalers 6 Initialize the peripheral a First write the peripheral HAL PPP Msplnit function Proceed as follows Enable the peripheral clock Configure the peripheral GPIOs Configure DMA channel and enable DMA interrupt if needed Enable peripheral interrupt if needed Edit the stm32xxx it c to call the required interrupt handlers peripheral and DMA if needed Write process complete callback functions if you plan to use peripheral interrupt or DMA In your main c file initialize the peripheral handle structure then call the function HAL PPP Init to initialize your peripheral 7 Develop your application At this stage your system is ready and you can start developing your application code The HAL provides intuitive and ready to use APIs to configure the peripheral It supports polling inter
5. refers to the middleware stack e g USB Device to know which sources files and which include paths have to be added Configure the firmware components The HAL and middleware components offer a set of build time configuration options using macros define declared in a header file A template configuration file is provided within each component it has to be copied to the project folder usually the configuration file is named xxx conf template h the word template needs to be removed when copying it to the project folder The configuration file provides enough information to know the impact of each configuration option More detailed information is available in the documentation provided for each component Start the HAL Library After jumping to the main program the application code must call HAL nit API to initialize the HAL Library which do the following tasks a Configuration of the Flash prefetch and SysTick interrupt priority through macros defined in stm32f1xx hal conf h b Configuration of the SysTick to generate an interrupt each 1 ms at the SysTick TICK INT PRIO interrupt priority defined in stm32f1xx hal conf h which is DoclD027272 Rev 2 17 23 Getting started with STM32CubeF1 UM1847 Caution 18 23 c d clocked by the HSI at this stage the clock is not yet configured and thus the system is running from the internal HSI at 8 MHz Setting of NVIC Group Priority to 4 Call of HAL_Msplnit
6. STM32CubeUpdater is integrated as well within the STM32CubeMX tool When using this tool for STM32F1 configuration and initialization C code generation the user can benefit from STM32CubeMX self updates as well as STM32CubeF 1 firmware package updates For more details refer to Section 4 4 DoclD027272 Rev 2 21 23 Revision history UM1847 6 22 23 Revision history Table 4 Document revision history Date Revision Changes 16 Dec 2014 1 Initial release Added SWASTM32 toolchain in Section 3 2 Firmware 11 Jun 2015 2 package overview and in Section 4 1 Running your first example DoclD027272 Rev 2 d UM1847 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 in
7. STemWin Graphical stack Professional grade solution for GUI development based on SEGGER s emWin solution Optimized display drivers Software tools for code generation and bitmap editing STemWin Builder e FreeRTOS Open source standard CMSIS compatibility layer J Tickless operation during low power mode Integration with all STM32Cube middleware modules e FAT File system FATFS FAT open source library Long file name support Dynamic multi drive support RTOS and standalone operation Examples with microSD e LwIP TCP IP stack Open source standard RTOS and standalone operation Examples based on the middleware components Each middleware component comes with one or more examples called also Applications showing how to use it Integration examples that use several middleware components are provided as well Level 2 This level is composed of a single layer which consist in a global real time and graphical demonstration based on the middleware service layer the low level abstraction layer and the basic peripheral usage applications for board based features DoclD027272 Rev 2 9 23 STM32CubeF1 firmware package overview UM1847 3 3 1 10 23 STM32CubeF1 firmware package overview Supported STM32F1 devices and hardware STM32Cube offers highly portable Hardware Abstraction Layer HAL built around a generic architecture It allows th
8. provided with the ready to use toolset projects 20 5 6 How are the product peripheral specific features managed 21 5 7 How can STM32CubeMX generate code based on embedded software 21 2 23 DoclD027272 Rev 2 Ly UM1847 Contents 5 8 How can get regular updates on the latest STM32CubeF 1 firmware releases l l 21 6 Revision history iuesascssEksRERCRERERRReEA AA EE EG EGER ERE E 22 Ly DoclD027272 Rev 2 3 23 List of tables UM1847 List of tables Table 1 Macros for STM32F1 series osua ccoo aa a RR RR RR 10 Table 2 Boards for STM32F1 series 00 ccc ras 11 Table 3 Number of examples available for each board 1 1 ees 14 Table 4 Document revision history 0 000 ete 22 4 23 DoclD027272 Rev 2 Ly UM1847 List of figures List of figures Figure 1 STM32CubeF1 firmware components sssseee n 6 Figure2 STM32CubeF1 firmware architecture llle nh 7 Figure 3 STM32CubeF1 firmware package structure ee 12 Figure 4 STM32CubeF1 examples overview d DoclD027272 Rev 2 5 23 STM32CubeF1 main features UM1847 6 23 STM32CubeF1 main features STM32CubeF1 gathers in a single package all the generic embedded software components required to develop an application on STM32F 1 microcontrollers In line with the STMCube initiative this set of components is highly portable not only within STM32F1 series but also to other STM32 ser
9. toggle running on STM32F103RB Nucleo board 1 Download the STM32CubeF1 firmware package Unzip it into a directory of your choice Make sure not to modify the package structure shown in Figure 3 Note that it is also recommended to copy the package at a location close to your root volume e g C Eval or G Tests because some IDEs encounter problems when the path length is too long Browse to Projects STM32F1103RB Nucleo Examples Open GPIO then GPIO_EXTI folder Open the project with your preferred toolchain A quick overview on how to open build and run an example with the supported toolchains is given below Rebuild all files and load your image into target memory Run the example each time you press the USER pushbutton the LED2 toggles for more details refer to the example readme file DoclD027272 Rev 2 15 23 Getting started with STM32CubeF1 UM1847 4 2 16 23 To open build and run an example with the supported toolchains follow the steps below e EWARM a Under the example folder open EWARM sub folder b Launch the Project eww workspace c Rebuild all files Project gt Rebuild all d Load project image Project gt Debug e Run program Debug gt Go F5 e MDK ARM a Under the example folder open MDK ARM sub folder b Launch the Project uvproj workspace c Rebuild all files Project gt Rebuild all target files d Load project image Debug gt Start Stop Debug Session e Run program Deb
10. M32F102CB STM32F102RB STM32F 103x6 STM32F103C4 STM32F103R4 STM32F103T4 STM32F103C6 STM32F103R6 STM32F103T6 STM32F 103xB STM32F103C8 STM32F103R8 STM32F103T8 STM32F103V8 STM32F103CB STM32F103RB STM32F103TB STM32F103VB STM32F103xE STM32F103RC STM32F103VC STM32F103ZC STM32F103RD STM32F103VD STM32F103ZD STM32F103RESTM32F103VE STM32F103ZE STM32F103xG STM32F103RF STM32F103VF STM32F103ZF STM32F103RG STM32F103VG STM32F103ZG STMS32F105xC STM32F105R8 STM32F105V8 STM32F105RB STM32F105VB STM32F105RC STM32F105VC STM32F107xC STM32F107RB STM32F107VB STM32F107RC STM32F107VC DoclD027272 Rev 2 3 UM1847 STM32CubeF1 firmware package overview 3 2 d STM32CubeF1 features a rich set of examples and applications at all levels making it easy to understand and use any HAL driver and or middleware components These examples are running on STMicroelectronics boards as listed in Table 2 Table 2 Boards for STM32F1 series Board STM32F1 devices supported STM3210E EVAL STM32F103xG STM3210C EVAL STM32F107xC STM32VLDISCOVERY STM32F100xB NUCLEO F103RB STM32F103xB As for all other STM32 Nucleo boards the NUCLEO F103RB feature a reduced set of hardware components one user key button and one user LED To enrich the middleware support offer for the STM32CubeF1 firmware package an LCD display Adafruit Arduino shield is used This shield em
11. M32xxy_yyy gt Examples or Projects lt STM32xx_yyy gt Applications where STM32xxx yyy refers to the board name e g STM3210E EVAL The Template project is providing empty main loop function however it s a good starting point to get familiar with project settings for STM32CubeF1 The template has the following characteristics tcontains the source code of HAL CMSIS and BSP drivers which are the minimal components required to develop a code on a given board It contains the include paths for all the firmware components It defines the STM32F1 device supported thus allowing to configure the CMSIS and HAL drivers accordingly It provides read to use user files pre configured as shown below HAL initialized with default time base with ARM Core SysTick SysTick ISR implemented for HAL Delay purpose System clock configured with the minimum frequency of the device HSI for an optimum power consumption Note When copying an existing project to another location make sure to update the include paths 2 d Add the necessary middleware to your project optional The available middleware stacks are USB Host and Device library LwIP STemWin FreeRTOS and FatFS To know which source files you need to add in the project files list refer to the documentation provided for each middleware You can also look at the Applications available under Projects STM32xxx_yyy Applications lt MW_Stack gt where MW Stack
12. SP driver It allows linking the component driver to a specific board and provides a set of user friendly APIs The API naming rule is BSP_FUNCT_Action Example BSP LED Init BSP LED On The BSP is based on a modular architecture allowing an easy porting on any hardware by just implementing the low level routines Hardware Abstraction Layer HAL The HAL layer provides the low level drivers and the hardware interfacing methods to interact with the upper layers application libraries and stacks It provides generic multi instance feature oriented APIs which simplify user application implementation by providing ready to use process As example for the communication peripherals 12S UART it provides APIs allowing initializing and configuring the peripheral managing data transfer based on polling interrupt or DMA process and handling communication errors that may raise during communication The HAL driver APIs are split in two categories e Generic APIs which provides common and generic functions to all the STM32 series e Extension APIs which provides specific and customized functions for a specific family or a specific part number Basic peripheral usage examples This layer includes the examples build over the STM32 peripheral using only the HAL and BSP resources Level 1 This level is divided into two sub layers e Middleware components e Examples based on the middleware components Middleware components The midd
13. U pre a STM32 USB Device Library i STM32 USB Host Library di Third Party tee ee 5 B Fae FreeRTOS LwIP Set of Examples Applications and Demonstrations organized by 5 ki Projects board and provided wit preconfigured projects usei STM321 0C EVAL STM3210E EVAL modifiable files STM32F103RB Nucleo STM32VL Discovery _ build Jog Utilities sJ CPU Fonts Log PC Software _ package xml 9 Release Notes html MSv36185V1 1 The library files in brown must not be modified by the user while the files in blue can be modified d 12 23 DoclD027272 Rev 2 UM1847 STM32CubeF1 firmware package overview For each board a set of examples are provided with pre configured projects for EWARM MDK ARM TrueSTUDIO and SW4STM32 toolchains Figure 4 shows the projects structure for the STM3210C EVAL board Figure 4 STM32CubeF1 examples overview Projects Ej STM3210C EVAL S di Applications FatFs FreeRTOS IAP LwIP STemWin USB Device USB Host Release Notes html Examples ADC BSP CRC DAC GPIO 12S IWDG RCC RTC SMARTCARD TIM UART Release Notes html Templates EWARM Inc MDK ARM Src SW4STM32 TrueSTUDIO F readme bet Release Notes html i STM3210E EVAL Ec Ee e Ee E E REID RTT RT ER 8 ye es STM32F103RB Nucleo STM32VL Discovery
14. adus 7 2 1 1 Board Support Package BSP 0 0 0 cee ee 8 2 1 2 Hardware Abstraction Layer HAL 0 00 c eee eee eee 8 2 1 3 Basic peripheral usage examples 2000 eee eee eee 8 2 2 tevel rees gated a aie ace aoe oo BA Ga RS ae aia nau a re wnt gaa dh bas 8 2 2 1 Middleware components 00000 eect eee e nets 8 2 2 2 Examples based on the middleware components 9 2 3 EBTIp DEED 9 3 STM32CubeF1 firmware package overview 10 3 1 Supported STM32F 1 devices and hardware 10 3 2 Firmware package overview 2 ee ee 11 4 Getting started with STM32CubeF1 15 4 1 Running your first example 050002 eee 15 4 2 Developing your own application 00020000 0 eee 16 4 3 Using STM32CubeMX to generate initialization C code 19 4 4 Getting STM32CubeF 1 release updates 0002 2c 19 4 4 1 Installing and running the STM32CubeUpdater program 19 5 FAQ wo dons seis wre nelli Gee arenes Se ee ace saree Sree ree aes 20 5 1 What is the license scheme for the STM32CubeF1 firmware 20 5 2 What boards are supported by the STM32CubeF1 firmware package 20 5 3 Is there any link with Standard Peripheral Libraries 20 5 4 Does the HAL drivers take benefit from interrupts or DMA How can this be controlled 2 2 00 00 cee 20 5 5 Are any examples
15. beds a microSD connector and a joystick in addition to the LCD In the BSP component the dedicated drivers for the Arduino shield are available Their use is illustrated through either the provided BSP example or in the demonstration firmware without forgetting the FatFS middleware application The STM32CubeF 1 firmware is able to run on any compatible hardware The user simply updates the BSP drivers to port the provided examples on his own board if this later has the same hardware features LED LCD display buttons Firmware package overview The STM32CubeF 1 firmware solution is provided in one single zip package having the structure shown in Figure 3 DoclD027272 Rev 2 11 23 STM32CubeF1 firmware package overview UM1847 Figure 3 STM32CubeF1 firmware package structure STM32Cube FW F1 V1 0 0 _htmresc BSP drivers for the supported boards Documentation Evaluation board Discovery kit gt Drivers Nucleo kit jp BSP IM EM Ve Components STM3210C EVAL Contains STMS2F 1x STM3210E_EVAL s STM32F1xx HAL drivers for al CMSISfiles that define the STM32F xx Nucleo beripherals peripheral registe es STM32VL Discovery declarations bit definitions and address mapping CMSIS STemWin professional stack STM32Ftxx HAL Driver coming from SEGGER and available in binary formal i Middlewares 3 ST SB Device Lib rting HID 3 evice Libra supportn amp STemWin SC CDC and DF
16. dard Peripheral Libraries have access to migration guides Although existing Standard Peripheral Libraries are supported they are not recommended for new designs Does the HAL drivers take benefit from interrupts or DMA How can this be controlled Yes they do The HAL layer supports three API programming models polling interrupt and DMA with or without interrupt generation Are any examples provided with the ready to use toolset projects Yes STM32CubeF 1 provides a rich set of examples and applications around 90 They come with the pre configured projects for IAR Keil and GCC toolchains 3 DoclD027272 Rev 2 UM1847 FAQ 5 6 5 7 5 8 d How are the product peripheral specific features managed The HAL drivers offer extended APIs i e specific functions as add ons to the common API to support features available on some products lines only How can STM32CubeMX generate code based on embedded software STM32CubeMxX has a built in knowledge of STM32 microcontrollers including their peripherals and software that allows to provide a graphical representation to the user and generate h c files based on user configuration How can get regular updates on the latest STM32CubeF1 firmware releases The STM32CubeF 1 firmware package comes with an updater utility STM32CubeUpdater that can be configured for automatic or on demand checks for new firmware package updates new releases or and patches
17. e build upon layers such as the middleware layer to implement their functions without knowing in depth the MCU used This improves the library code re usability and guarantees an easy portability on other devices In addition thanks to its layered architecture the STM32CubeF1 offers full support of all STM32F1 series The user has only to define the right macro in stm32f1xx h Table 1 gives the macro to be defined depending on the STM32F 1 device used This macro must also be defined in the compiler preprocessor Table 1 Macros for STM32F1 series Macro defined in stm32f1xx h STMS32F100xB STM32F1 devices STM32F100C4 STM32F100R4 STM32F100C6 STM32F100R6 STM32F100C8 STM32F100R8 STM32F100V8 STM32F100CB STM32F100RB STM32F100VB STM32F 100xE STM32F100RC STM32F100VC STM32F100ZC STM32F100RD STM32F100VD STM32F100ZD STM32F100RE STM32F100VE STM32F100ZE STMS32F101x6 STM32F101xB STM32F101C4 STM32F101R4 STM32F101T4 STM32F101C6 STM32F101R6 STM32F101T6 STM32F101C8 STM32F101R8 STM32F101T8 STM32F101V8 STM32F101CB STM32F101RB STM32F101TB STM32F101VB STMS32F101xE STM32F101RC STM32F101VC STM32F101ZC STM32F101RD STM32F101VD STM32F101ZD STM32F101RE STM32F101VE STM32F101ZE STM32F101xG STM32F 102x6 STM32F101RF STM32F101VF STM32F101ZF STM32F101RG STM32F101VG STM32F101ZG STM32F102C4 STM32F102R4 STM32F102C6 STM32F102R6 STM32F 102xB STM32F102C8 STM32F102R8 ST
18. formation 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 d DoclD027272 Rev 2 23 23
19. hether to perform manual or automatic checks For more details on Updater configuration refer to section 3 of STM32CubeMX user manual UM1718 DoclD027272 Rev 2 19 23 FAQ UM1847 5 1 5 2 5 3 5 4 5 5 20 23 FAQ What is the license scheme for the STM32CubeF1 firmware The HAL is distributed under a non restrictive BSD Berkeley Software Distribution license The middleware stacks made by STMicroelectronics USB Host and Device Libraries STemWin come with a licensing model allowing easy reuse provided it runs on an STMicroelectronics device The middleware based on well known open source solutions FreeRTOS and FatFs have user friendly license terms For more details refer to the license agreement of each middleware What boards are supported by the STM32CubeF1 firmware package The STM32CubeF 1 firmware package provides BSP drivers and ready to use examples for the following STM32F1 boards STM3210E EVAL STM3210C EVAL STM32VLDISCOVERY and NUCLEO F103RB Is there any link with Standard Peripheral Libraries The STM32Cube HAL layer is the replacement of the Standard Peripheral Library The HAL APIs offer a higher abstraction level compared to the standard peripheral APIs The HAL focuses on peripheral common features rather than hardware Its higher abstraction level allows defining a set of user friendly APIs that can be easily ported from one product to another Customers currently using Stan
20. ies STM32CubeF 1 is fully compatible with STM32CubeMX code generator that allows to generate initialization code The package includes a low level hardware abstraction layer HAL that covers the microcontroller hardware together with an extensive set of examples running on STMicroelectronics boards The HAL is available in open source BSD license for user convenience STM32CubeF1 package also contains a set of middleware components with the corresponding examples They come in free user friendly license terms e Full USB Host and Device stack supporting many classes Host Classes HID MSC CDC Audio MTP Device Classes HID MSC CDC Audio DFU e STemWin a professional graphical stack solution available in binary format and based on STMicroelectronics partner solution SEGGER emWin e CMSIS RTOS implementation with FreeRTOS open source solution e FAT File system based on open source FatFS solution e TCP IP stack based on open source LwIP solution Several applications and demonstrations implementing all these middleware components are also provided in the STM32CubeF1 package Figure 1 STM32CubeF1 firmware components Evaluation Discovery STM32 Nucleo i Utilities Touch FAT file TCP IP USB Library Graphics system RTOS CMSIS Middleware level Utilities Board Support Package BSP Hardware Abstraction Layer HAL
21. leware is a set of libraries covering USB Host and Device Libraries STemWin FreeRTOS FatFS and LwIP Horizontal interactions between the components of this layer is done directly by calling the feature APIs while the vertical interaction with the low level drivers is done through specific callbacks and static macros implemented in the library system call interface For example the FatFs implements the disk I O driver to access microSD drive or the USB Mass Storage Class DoclD027272 Rev 2 Ly UM1847 STM32CubeF1 architecture overview 2 2 2 2 3 d The main features of each middleware component are as follows e USB Host and Device Libraries Several USB classes supported Mass Storage HID CDC DFU Support of multi packet transfer features that allows sending big amounts of data without splitting them into maximum packet size transfers Use of configuration files to change the core and the library configuration without changing the library code Read Only 32 bit aligned data structures to handle DMA based transfer in high speed modes Support of multi USB OTG core instances from user level through configuration file This allows to perform operations with more than one USB host device peripheral RTOS and Standalone operation Link with low level driver through an abstraction layer using the configuration file to avoid any dependency between the Library and the low level drivers e
22. rupts and DMA programming model to accommodate any application requirements For more details on how to use each peripheral refer to the rich examples set provided in the STM32CubeF1 package If your application has some real time constraints you can found a large set of examples showing how to use FreeRTOS and integrate it with all middleware stacks provided within STM32CubeF 1 This can be a good starting point to develop your application In the default HAL implementation SysTick timer is used as timebase it generates interrupts at regular time intervals If HAL Delay is called from peripheral ISR process make sure that the SysTick interrupt has higher priority numerically lower than the peripheral interrupt Otherwise the caller ISR process will be blocked Functions affecting timebase configurations are declared as weak to make override possible in case of other implementations in user file using a general purpose timer for example or other time source For more details refer to HAL TimeBase example 3 DoclD027272 Rev 2 UM1847 Getting started with STM32CubeF1 4 3 4 4 4 4 1 3 Using STM32CubeMX to generate initialization C code An alternative to steps 1 to 6 described in Section 4 2 consists in using the STM32CubeMX tool to generate code to initialize the system peripherals and middleware steps 1 to 6 above through a step by step process 1 Select the STMicroelectronics STM32 microcontroller that ma
23. tches the required set of peripherals 2 Configure each required embedded software thanks to a pinout conflict solver a clock tree setting helper a power consumption calculator and the utility performing MCU peripheral configuration e g GPIO or USART and middleware stacks e g USB 3 Generate the initialization C code based on the configuration selected This code is ready to use within several development environments The user code is kept at the next code generation For more information please refer to STM32CubeMX user manual UM1718 Getting STM32CubeF1 release updates The STM32CubeF 1 firmware package comes with an updater utility STM32CubeUpdater also available as a menu within STM32CubeMX code generation tool The updater solution detects new firmware releases and patches available from www st com and proposes to download them to the user s computer Installing and running the STM32CubeUpdater program Follow the sequence below to install and run the STM32CubeUpdater 1 To launch the installation double click the SetupSTM32CubeUpdater exe file 2 Accept the license terms and follow the different installation steps 3 Upon successful installation STM32CubeUpdater becomes available as an STMicroelectronics program under Program Files and is automatically launched The STM32CubeUpdater icon appears in the system tray Right click the updater icon and select Updater Settings to configure the Updater connection and w
24. ug gt Run F5 e TrueSTUDO a Open the TrueSTUDIO toolchain b Click File gt Switch Workspace gt Other and browse to TrueSTUDIO workspace directory c Click File gt Import select General Existing Projects into Workspace and then click Next d Browse to the TrueSTUDIO workspace directory and select the project e Rebuild all project files select the project in the Project explorer window then click Project gt build project menu f Run program Run gt Debug F11 e SWASTM32 a Open the SWASTM32 toolchain b Click File gt Switch Workspace gt Other and browse to the SWASTM32 workspace directory c Click File gt Import select General Existing Projects into Workspace and then click Next d Browse to the SW4STM32 workspace directory and select the project e Rebuild all project files select the project in the Project explorer window then click Project gt build project menu f Run program Run gt Debug F11 Developing your own application This section describes the steps required to create your own application using STM32CubeF1 1 Create your project To create a new project you can either start from the Template project provided for each board under Projects lt STM32xxx_yyy gt Templates or from any available project a The workspace name may changes from one example to another 3 DoclD027272 Rev 2 UM1847 Getting started with STM32CubeF1 under Projects lt ST
Download Pdf Manuals
Related Search
Related Contents
取扱説明書 MODEL 8246 プリンタ 機能設定 MANUAL DO USUÁRIO Coifa Vetro Coifa Arketto 2. PRECAUTIONS 6. REMOTE CONTROL 1. FEATURES BEOPLAY V1 Philips 42PFL3508G 42" Full HD Smart TV Wi-Fi Black Conference Proceedings 2013 alpha profile 1500 alpha profile 1500 "q" A - Maison-facile.com 取扱説明書 Manual Técnico EC 3-130 (GRANDE).cdr Copyright © All rights reserved.
Failed to retrieve file