• STMicroelectronics Community
  • STM32 MCUs products
  • How to run or add STemwin library projects on STM3...
  • Subscribe to RSS Feed
  • Mark Topic as New
  • Mark Topic as Read
  • Float this Topic for Current User
  • Printer Friendly Page

How to run or add STemwin library projects on STM32F429 Discovery with True Studio

miracaydogan

  • Mark as New
  • Email to a Friend
  • Report Inappropriate Content

‎2017-07-17 02:10 AM

  • All forum topics
  • Previous Topic

Amel NASRI

‎2017-07-17 03:38 AM

projects stm32f429i discovery applications stemwin

  • STM32H747I-DISCO tearing in double buffering in STM32 MCUs products 2024-03-06
  • What hardware & software tools are needed for STM32 development? in STM32 MCUs products 2024-02-22
  • Unable to get LTDC working on STM32H735G-DK in STM32 MCUs TouchGFX and GUI 2024-02-18
  • RNDIS over USB STM32F746-Discovery ping time out problem in STM32 MCUs Embedded software 2024-02-14
  • USB OTG dual role - auto switch over - configuring in STM32 MCUs Embedded software 2024-01-12

Sysprogs

Developing Embedded GUI using STemWin Library

This tutorial shows how to create a basic GUI application for the STM32F429I-Discovery board using the STemWin library. We will start with a basic example shipped with the STM32 SDK, will show how to locate different demos inside it and will create a basic demo using the TreeView control to show how the message handling works.

01-prjname

#include "main.h" #include "rtc.h" #include "GUIDEMO.h" #include "WM.h" static bool s_bDone; extern "C" void RunExperiments() {     WM_HWIN                hWin, hClient, hTree;     int                    xSize, ySize, xSizeClient, ySizeClient;          GUI_WIDGET_CREATE_INFO controlList[] = {         { FRAMEWIN_CreateIndirect, "Explorer", 0, 0, 0, 0, 0 },         { TREEVIEW_CreateIndirect, NULL, GUI_ID_TREEVIEW0, 0, 0, 0, 0 },     };     xSize            = LCD_GetXSize();     ySize            = LCD_GetYSize();     controlList[0].xSize = xSize / 2;     controlList[0].ySize = ySize;     controlList[1].xSize = xSize / 2;     controlList[1].ySize = ySize;     hWin             = GUI_CreateDialogBox(controlList, GUI_COUNTOF(controlList), DialogCallback, WM_HBKWIN, 0, 0);     hClient          = WM_GetClientWindow(hWin);     xSizeClient      = WM_GetWindowSizeX(hClient);     ySizeClient      = WM_GetWindowSizeY(hClient);     hTree            = WM_GetDialogItem(hWin, GUI_ID_TREEVIEW0);     WM_SetSize(hTree, xSizeClient, ySizeClient);     while (!s_bDone)     {         GUI_Exec();     }     WM_DeleteWindow(hWin); }

static void DialogCallback(WM_MESSAGE * pMsg) {     WM_HWIN hItem, hDlg;     hDlg = pMsg->hWin;     switch (pMsg->MsgId)     {     case WM_INIT_DIALOG:         hItem = WM_GetDialogItem(hDlg, GUI_ID_TREEVIEW0);         PopulateTreeView(hItem);         break;     case WM_NOTIFY_PARENT:         switch (pMsg->Data.v)         {         case WM_NOTIFICATION_CLICKED:             if (WM_GetId(pMsg->hWinSrc) == GUI_ID_TREEVIEW0)             {                 WM_HWIN hItem = TREEVIEW_GetSel(pMsg->hWinSrc);                 unsigned char tmp[32];                 TREEVIEW_ITEM_GetText(hItem, tmp, sizeof(tmp));                 printf("%s\n", tmp);             }             break;         }         break;     } }

static void PopulateTreeView(WM_HWIN hTree) {     TREEVIEW_ITEM_Handle hBook, hPage;     char tmp[128];     for (int i = 0; i < 3; i++)     {         sprintf(tmp, "Book %d", i);         if (!i)             hBook = TREEVIEW_InsertItem(hTree, TREEVIEW_ITEM_TYPE_NODE, 0, 0, tmp);         else             hBook = TREEVIEW_InsertItem(hTree, TREEVIEW_ITEM_TYPE_NODE, hBook, TREEVIEW_INSERT_BELOW, tmp);                      for (int j = 0; j < 5; j++)         {             sprintf(tmp, "Page %d", j);             if (!j)                 hPage = TREEVIEW_InsertItem(hTree, TREEVIEW_ITEM_TYPE_LEAF, hBook, TREEVIEW_INSERT_FIRST_CHILD, tmp);             else                 hPage = TREEVIEW_InsertItem(hTree, TREEVIEW_ITEM_TYPE_LEAF, hPage, TREEVIEW_INSERT_BELOW, tmp);         }     }     TREEVIEW_SetAutoScrollH(hTree, 1);     TREEVIEW_SetAutoScrollV(hTree, 1);     TREEVIEW_ITEM_Expand(TREEVIEW_GetItem(hTree, 0, TREEVIEW_GET_FIRST));     WM_SetFocus(hTree); }

11-semihost

  • ← Developing Remote Linux Projects with VisualGDB and VirtualBox
  • Importing CMake-based Android Studio projects in VisualGDB →
  • STM32F4 Discovery

Libraries and tutorials for STM32F4 series MCUs by Tilen Majerle

  • STM32F429 / STM32F429 Discovery

Library 50- STemWin for STM32F429-Discovery

by tilz0R · Published January 12, 2015 · Updated March 9, 2015

ST provides emWin library from Segger. It is professional GUI ( G raphical U ser I nterface), optimized for speed and performance for microcontrollers. ST has it’s own implementation, called STemWin. With this GUI, you can do many thing, of use simple buttons, dialogs, text boxes, to playing videos, displaying pictures, menus, etc. I suggest you that you go to segger’s website and read more about this very useful tool.

In my library, I’ve some changes from original ST’s example for STM32F429-Discovery board, because it has external ram (which is necessary for professional GUI) and LCD on board.

This library is just implementation (behind the scenes) to get emWin in working state on discovery board. How and what to do to use it is on you to take a look on emWin datasheet.

  • Use GUI on STM32F429-Discovery board
  • Compatibility with emWin professional GUI
  • External ram is used
  • Screen rotation supported
  • Touch screen supported

Dependencies

  • STM32F4xx RCC
  • STM32F4xx GPIO
  • STM32F4xx FMC
  • STM32F4xx LTDC
  • STM32F4xx DMA2D
  • STM32F4xx SPI
  • STM32F4xx I2C
  • All files are in one packet at the end of this post

Screen rotation

I’ve made support for screen rotation. You need more ram if you want screen rotation. By default this mode is disabled and if you want to use it, you have to open defines.h file, and add define like one below:

Then look at my functions and enumeration section to see how to properly use function for rotate screen.

Functions and enumerations

  • Example below provides you one progress bar and 5 buttons
  • first button is to activate other 4 buttons
  • 4 buttons are for on/off 2 leds on discovery board

ST emWin button waits to be pressed

ST emWin button already pressed

Share this to other users:

  • Click to print (Opens in new window)
  • Click to email this to a friend (Opens in new window)
  • Click to share on Facebook (Opens in new window)
  • Click to share on Google+ (Opens in new window)
  • Click to share on Twitter (Opens in new window)
  • Click to share on LinkedIn (Opens in new window)
  • Click to share on Pinterest (Opens in new window)
  • Click to share on Tumblr (Opens in new window)
  • Click to share on Reddit (Opens in new window)
  • Click to share on Pocket (Opens in new window)

Tags: dma2d emwin external ram gpio graphical user interface gui ltdc segger stemwin stm32f429 stm32f429-discovery STMPE811 touch

' src=

Owner of this site. Application engineer, currently employed by STMicroelectronics. Exploring latest technologies and owner of different libraries posted on Github.

You may also like...

Getting started with STM32 step-by-step

  • Getting started with STM32 step-by-step

September 29, 2018

 by tilz0R · Published September 29, 2018

PWM graph

  • STM32F4 PWM tutorial with TIMERs

May 11, 2014

 by tilz0R · Published May 11, 2014 · Last modified April 29, 2016

How to use scanf with USART

How to use scanf with USART

September 13, 2015

 by tilz0R · Published September 13, 2015 · Last modified September 18, 2015

  • Next story How to properly set clock speed for STM32F4xx devices
  • Previous story Library 49- One-Time programmable (OTP) bytes on STM32F4
  • Tutorial - Jump to system memory from software on STM32
  • All STM32F4 libraries
  • STM32F4 External interrupts tutorial
  • STM32F4 FFT example
  • STM32 tutorial: Efficiently receive UART data using DMA

Recent comments

  • How to use UART DMA RX on STM32F103 MCU on STM32 tutorial: Efficiently receive UART data using DMA
  • STM32Cube Ecosystem | Andreas' Blog on How to properly enable/disable interrupts in ARM Cortex-M?
  • STM32 delay ms function : Software delay vs HAL Delay function on Library 03- STM32F4 system clock and delay functions
  • Project: EOGee – Programming the EOGlass microcontrollers | Matt's Projects on Tutorial – Jump to system memory from software on STM32
  • c – Control AMIS-30543 with STM32F030R8 via SPI – ThrowExceptions on Library 02- STM32F429 Discovery GPIO tutorial with onboard leds and button
  • ARM Cortex-M
  • ESP8266 & ESP32
  • STM32F429 Discovery
  • STM32F7 Discovery
  • Uncategorized

Recent posts

  • TouchGFX simulator development in Visual Studio Code with CMake
  • STM32U5 – DMA for UART TX and RX
  • Manage embedded software libraries with STM32CubeMX
  • C code style and coding rules
  • Tutorial: Control WS2812B leds with STM32
  • December 2022
  • August 2022
  • October 2018
  • September 2018
  • December 2017
  • November 2017
  • November 2016
  • January 2016
  • December 2015
  • November 2015
  • October 2015
  • September 2015
  • August 2015
  • February 2015
  • January 2015
  • December 2014
  • November 2014
  • October 2014
  • September 2014
  • August 2014

Which STM32 family is your favorite?

  • STM32F series - General purpose microcontrollers
  • STM32G series - Next generation general purpose microcontrollers
  • STM32L series - Low-Power series
  • STM32MP series - Microprocessors
  • STM32W series - Wireless microcontrollers
  • STM32U series - Ultra-Low-Power series

View Results

STEmWin on STM32F429I-Discovery with SW4STM32 (Part 2)

In this tutorial we will add LCD and touch screen drivers to our project.

We first need to create directories for the files we need.

We need to create BSP folder with subfolders inside Drivers folder as on following image and Utilities folder for fonts:

Now let’s add the files. We need to copy:

stm32f429i_discovery.c

stm32f429i_discovery_io.c

stm32f429i_discovery_lcd.c

stm32f429i_discovery_sdram.c

stm32f429i_discovery_ts.c

from folder:

C:\Users\…\STM32Cube\Repository\STM32Cube_FW_F4_V1.19.0\Drivers\BSP\STM32F429I-Discovery

to folder src under BSP folder

we also need to copy header files:

stm32f429i_discovery.h

stm32f429i_discovery_io.h

stm32f429i_discovery_lcd.h

stm32f429i_discovery_sdram.h

stm32f429i_discovery_ts.h

to folder inc  under BSP folder:

We need to copy folders with files for display and touch screen ICs to components folder from:

C:\Users\…\STM32Cube\Repository\STM32Cube_FW_F4_V1.19.0\Drivers\BSP\Components

to Components Folder:

We also need:

C:\Users\…\STM32Cube\Repository\STM32Cube_FW_F4_V1.19.0\Drivers\BSP\Components\Common

to Common subfolder inside Components:

And last ones are fonts, from folder:

C:\Users\…\STM32Cube\Repository\STM32Cube_FW_F4_V1.19.0\Utilities

to  Utilities subfolder in our project:

Now we need to tell our compiler where to find all these files. We need to right click on our project and select Properties :

Next we go to C/C++ General -> Paths and Symbols -> GNU C:

We click on Add… and add all the paths as in following screenshot and click OK:

Now we are ready to start coding.

First we need to include BSP headers. We add include files between  USER CODE BEGIN Includes  and  USER CODE END Includes . We ALWAYS write code between USER CODE BEGIN… and USER CODE END… , because these are parts that are not changed when regenerating files from CubeMX.

We add a little test code to test if all works:

We compile the code and upload it to our discovery board and we should see green screen with our usual “Hello world!”.

When we upload it for the first time we need to right click our project and select Run As -> 1 Ac6 STM32 C/C++ Application (marked red). After that we can just select our program under green circle with arrow inside in top menu (marked blue), or if it was current program we selected last, we can just click it.

This is the end of second part of our tutorial. Next part won’t be soon because I have a lot of problems with it, but I finished this one because we need it to test SkinMan and KnobMan. You can read about them here . Well we are not done yet. As I was reading this article by myself I saw I din’t finished it, there is no touch screen support here yet.

Well, let’s do that now.

We already added all the needed files, now we need to include them, initialize the touch screen and write routines for it.

First we need to add include for touch screen ( #include “stm32f429i_discovery_ts.h” ):

Next we need to initialize it ( BSP_TS_Init(240, 320); ):

We also need some way of checking if screen was touched and where. For this we will create new function called  BSP_Touch_Update() .

Here is the code and I will try to explain simply what it does:

First we define a few variables, one of them as static , this means that variable stays alive while program runs, even when program runs outside this routine.

After that we call  BSP_TS_GetState(&ts); which gets data from touch screen controller.

With  if(ts.TouchDetected > 0) we check if screen was touched and if it was we do following:

  • xDiff = (prev_state.X > ts.X) ? (prev_state.X – ts.X) : (ts.X – prev_state.X);  here we check if prev_state.X > ts.X if so we do  prev_state.X – ts.X  else we do  ts.X – prev_state.X
  • then we check if difference from previous touch was more than 3 in either direction, with this we avoid multiple detection of one touch
  • with  if(ts.TouchDetected > 0) and ts.TouchDetected = 1; we tell the routine to just take one touch data if multiple has been detected
  • then we check if our touch was inside a window we chose and we set the ts_changed value to one or two to let the main program know what we detected, if ts_changed == 0 it means that there was no touch detected
  • at the end we set prev_state to new values

we also need to define variable ts_changed and set it’s value to 0 (no touch detected):

for this we also need to create structure inside main.h:

and we need to define private function:

now we can start to read our touches. For this we will add calls to  BSP_Touch_Update() inside our while loop inside main and we will toggle red LED if we get back ts_changed value as 1:

We also need to add one line of code to draw rectangle on display, so that we will know where to touch:

We put  BSP_LCD_DrawRect(80, 80, 80, 40); in our program.

Now when we run our program, we see green screen with dark rectangle. If we touch inside it, red LED will toggle for each touch.

Now that touch works, we are done with this article.

Thank you, for following me along!

  • Privacy Overview
  • Strictly Necessary Cookies

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.

Strictly Necessary Cookie should be enabled at all times so that we can save your preferences for cookie settings.

If you disable this cookie, we will not be able to save your preferences. This means that every time you visit this website you will need to enable or disable cookies again.

OpenSTM32 logo

OpenSTM32 Community

The stm32 systems resource.

  • I forgot my password

SW4STM32 and SW4Linux fully supports the STM32MP1 asymmetric multicore Cortex/A7+M4 MPUs

  • System Workbench for STM32
  • Thread actions
  • Print this page
  • Print all pages

How to add stemwin in a running freertos project

Stephan

Hi, I finally was able to run a FreeRTOS project on my discovery429I. Everything works well, now I want to add stemwin to start using the display, but I have no idea how to add it. Can someone give me a link where it is explained (I tried google, but nothing usefull) or explain how to start implementing the stemwin library and how to get working the display.

Thanks for your help, Stephan

Hi, it is the wrong forum for this topic, or it is too easy and I just don’t get it working? I tried again, but I am even not sure how to start. Is there a step by step tutorial on how to add STEmwin to a FreeRTOS project? Or can someone post a running project so that I can understand which files I need and who it is integrated in a FreeRTOS project?

Thanks, Stephan

dautrevaux

Hi Stephan,

Question

However, when you succeed, don’t hesitate to explain on the forum how it should be done. It may help others and, if you want, it may later be converted in a tutorial on the website.

HankB

Hi Stephan, The question was definitely not too easy for me to address. I have added STemWin to (non-RTOS) projects and found it challenging.

As Bernard suggested, you can seek help at the Segger forums.

You can also look at the document (C:\Users\Henry\STM32Cube\Repository\STM32Cube_FW_F4_V1.6.0\Middlewares\ST\STemWin\Documentation\STemWin526.pdf on my PC) in the STemWin directory which describes what is needed to add STemWin to any project. It is generic but will familiarize you with the requirements.

You can get a head start by examining the example projects that involve STemWin. (On my Windows PC: C:\Users\Henry\STM32Cube\Repository\STM32Cube_FW_F4_V1.6.0\Projects\STM32F429I-Discovery\Applications\STemWin\STemWin_HelloWorld) It includes all of the code that you need to get STemWin working with the STM32F429I-DISCO board but without the RTOS. I think that the RTOS parts may not be too difficult to add.

Hi, Thanks for your answers. In these weeks I’m very busy, but I will go on with the graphic lib as soon as I have time. Once I’m able to get it working I will post my solutions. If in the meanwhile someone else has some progress or a running project, please post it.

  • My user details
  • My login details
  • Last Changes
  • Multiple Print
  • List Forums
  • List Galleries

Newest Forum Posts

  • Unable to install the STM32 workbench for Windows 64bit system. by sayli , 2024-04-07 12:23
  • Unable to install the STM32 workbench for Windows 64bit system. by jasonandmonte , 2024-03-12 06:45
  • Unable to install the STM32 workbench for Windows 64bit system. by jasonandmonte , 2024-03-12 06:42
  • Problems with downloading the standard library by zhangyuge , 2024-02-24 08:36
  • help modbus tcp or mqtt over ip by sitesnima , 2024-01-30 19:09
  • Unable to install the STM32 workbench for Windows 64bit system. by Sneha Shukla , 2024-01-12 07:35
  • I can not find SW4STM32.zip, can anyone please help me ? by nayan123 , 2024-01-10 08:01
  • I can not find SW4STM32.zip, can anyone please help me ? by fredvangoolen , 2024-01-08 21:32
  • Acquisition System on STM32F103 with fs 100kHz double channel by ChristianPC16 , 2024-01-07 19:19
  • I can not find SW4STM32.zip, can anyone please help me ? by mecede , 2023-12-30 08:31

Newest FAQs

  • System Workbench for STM32 - Project creation
  • System Workbench for STM32 - Debugging
  • System Workbench for STM32 - Installation

Last-Modified Blogs

projects stm32f429i discovery applications stemwin

Welcome to Embedded Wizard

Basic concepts

Working with Embedded Wizard

Build Environments

Getting started with Microchip

Getting started with NXP

Getting started with STM

STM32F407 Discovery

STM32F412 Discovery

STM32F429 Discovery

STM32F429 Evalboard

STM32F469 Discovery

STM32F469 Evalboard

STM32F746 Discovery

STM32F756 Evalboard

STM32F769 Discovery

STM32F769 Evalboard

STM32H743 Evalboard

STM32L4R9 Discovery

Getting started with Raspberry Pi

Getting started with JavaScript/WebGL

Embedded Wizard Studio

Programming language Chora

Framework Mosaic

Platform Integration Aspects

Release notes

Getting started with STM: STM32F429 Discovery

projects stm32f429i discovery applications stemwin

STM32F429 Discovery board (STM32F429I-DISC1).

The following article explains all necessary steps to create an Embedded Wizard UI application suitable for the STM32F429 Discovery board. Please follow these instructions carefully and step by step in order to ensure that you will get everything up and running on your target. Moreover, this article assumes, that you are familiar with the basic concepts of Embedded Wizard.

Prerequisites

First of all, you need the following hardware components:

★ STM32F429 Discovery board from STMicroelectronics (STM32F429I-DISC1)

★ USB cable to connect the board with your PC

Make sure that you have got the following software packages:

★ Embedded Wizard Studio Free or Embedded Wizard Studio Pro

★ Embedded Wizard STM32 Platform Package

★ Embedded Wizard Build Environment for STM32F429 Discovery

If you want to use the Free edition of Embedded Wizard Studio and the STM32 Platform Package, please register on our website and select the target STM32F429 Discovery . Then you can download the above software packages.

All customers who licensed Embedded Wizard can visit our download center to get the above software packages.

Installing Tools and Software

★ Step 1: Install the latest version of Embedded Wizard Studio.

★ Step 2: Install the Embedded Wizard STM32 Platform Package.

★ Step 3: Download the STM32 ST-LINK utility and install it. Test the connection from PC to Discovery board and the proper installation of the USB drivers: Connect the Discovery board with your PC via USB (make sure to use the ST-LINK USB connector) and start the previously installed STM32 ST-LINK utility. Select the menu item Target ➤ Connect and verify that the connection could be established successfully. Finally, close the STM32 ST-LINK utility.

★ Step 4: Unpack the provided Embedded Wizard Build Environment for STM32F429 Discovery to your local file system (e.g. C:\STM32\STM32F429-Discovery ).

• ST-LINK_Utility_Path - Absolute path of your installed STM32 ST-LINK utility (Step 3).

Exploring the Build Environment

The provided Embedded Wizard Build Environment for STM32F429 Discovery contains everything you need to create, compile, link and flash an Embedded Wizard UI application for the STM32F429 target. After unpacking, you will find the following subdirectories and files:

• StartGccBuildEnvironment.bat - This script file is provided to start a windows command line to build your GUI applications for the target. Don't forget to set the path of your installed ST-LINK utility.

• \Application - This folder contains ready-to-use projects to compile and link an Embedded Wizard generated UI application. They are used for all provided examples and they can be used to build your own UI applications.

• \GeneratedCode - This folder is used to receive the generated code from an Embedded Wizard UI project. All template projects are building the UI application out of this folder. You can create your own UI project and generate the code into the subdirectory \GeneratedCode without the need to adapt the project.

• \Project - This folder contains the prepared projects for GCC (make), IAR Embedded Workbench, Keil MDK-ARM and Atollic TrueSTUDIO.

• \Source - This folder contains the main.c file, a configuration file for FreeRTOS and the device driver C/H files used for the DeviceIntegration example.

• \Examples - This folder contains a set of demo applications. Each example is stored in a separate folder containing the entire Embedded Wizard UI project. Every project contains the necessary profile settings for the STM32F429 target. The following samples are provided:

• \HelloWorld - A very simple project that is useful as starting point and to verify that the entire toolchain, your installation and your board is properly working.

• \ColorFormats - This project demonstrates that every UI application can be generated for different color formats: RGBA8888, RGB888, RGBA4444, RGB565, Index8 and LumA44.

• \ScreenOrientation - This demo shows, that the orientation of the UI application is independent from the physical orientation of the display.

• \DeviceIntegration - This example shows the integration of devices into a UI application and addresses typical questions: How to start a certain action on the target? How to get data from a device?

• \GraphicsAccelerator - This application demonstrates the graphics performance of the DMA2D hardware graphics accelerator. Sets of basic drawing operations are executed permanently and continuously, while the user can switch on/off the hardware accelerator.

• \AnimatedList - This demo shows the implementation of some fancy scrollable list widgets to set a time and a day of the week. The speciality of this sample application is the magnification effect of the centered list items and the soft fade-in/fade-out effects.

• \BrickGame - The sample application BrickGame implements a classic "paddle and ball" game. In the game, a couple of brick rows are arranged in the upper part of the screen. A ball travels across the screen, bouncing off the top and side walls of the screen. When a brick is hit, the ball bounces away and the brick is destroyed. The player has a movable paddle to bounce the ball upward, keeping it in play.

• \ClimateCabinet - The ClimateCabinet demo shows the implementation of a control panel for a climatic exposure test cabinet. The user can define a heating time, a nominal temperature and humidity, a dwell time and the final cooling time.

• \WaveformGenerator - This WaveformGenerator demo application combines waveforms with different amplitudes and frequencies. The implementation shows the usage of the class Charts::Graph to paint a list of coordinates.

• \PlatformPackage - This folder contains the necessary source codes and/or libraries of the STM32 Platform Package: Several Graphics Engines for the different color formats (RGBA8888, RGB888, RGBA4444, RGB565, Index8 and LumA44) and the Runtime Environment (in the subdirectory \RTE ).

• \TargetSpecific - This folder contains all configuration files and platform specific source codes. The different ew_bsp_xxx files implement the bridge between the Embedded Wizard UI application and the underlying board support package (STM32 hardware drivers) in order to access the display, the graphics accelerator, the serial interface and the clock.

• \ThirdParty - This folder contains third-party source codes and tools:

• \gcc-arm-none-eabi - This folder contains a subset of the GCC ARM embedded toolchain to compile the examples.

• \Make - This folder contains a make tool to build the entire GUI application via command line.

• \STM32Cube_FW_F4 - This folder contains the necessary subset of the STM32CubeF4 embedded software for STM32F4 series used for the Embedded Wizard UI applications (HAL, BSP, drivers, FreeRTOS).

• \TLSF - This folder contains the memory manager used for the Embedded Wizard UI applications.

• \Xprintf - This folder contains a helper module for printing debug messages.

Creating the UI Examples

For the first bring up of your system, we recommend to use the example 'HelloWorld':

projects stm32f429i discovery applications stemwin

Example 'HelloWorld' within Embedded Wizard Studio.

The following steps are necessary to generate the source code of this sample application:

★ Navigate to the directory \Example\HelloWorld .

★ Open the project file HelloWorld.ewp with your previously installed Embedded Wizard Studio. The entire project is well documented inline. You can run the UI application within the Prototyper by pressing Ctrl + F5 .

★ To start the code generator, select the menu items Build ➤ Build this profile - or simply press F8 . Embedded Wizard Studio generates now the sources files of the example project into the directory \Application\GeneratedCode .

Compiling, Linking and Flashing

The following steps are necessary to build and flash the Embedded Wizard UI sample application using the GCC ARM embedded toolchain:

★ Navigate to the top level of the Build Environment.

★ Open StartGccBuildEnvironment.bat - as a result, a windows command line window should open. In case there are error messages, please edit the file and double-check the path settings.

★ Now start compiling, linking and flashing:

make make install

If everything works as expected, the application should be built and flashed to the STM32F429 target.

projects stm32f429i discovery applications stemwin

Example 'HelloWorld' running on STM32F429 Discovery board.

All other examples can be created in the same way: Just open the desired example with Embedded Wizard Studio, generate code and rebuild the whole application using simply:

make install

Creating your own UI Applications

In order to create your own UI project suitable for the STM32F429 target, you can create a new project and select the STM32F429 Discovery project template:

projects stm32f429i discovery applications stemwin

As a result you get a new Embedded Wizard project, that contains the necessary Profile attributes suitable for the STM32F429 Discovery board:

projects stm32f429i discovery applications stemwin

The following profile settings are important for your target:

★ The attribute PlatformPackage should refer to an installed STM32 Platform Package.

★ The attribute ScreenSize should correspond to the display size of the STM32F429 Discovery board.

★ The attributes FormatOfBitmapResources and FormatOfStringConstants can be set to DirectAccess in case that the resources should be taken directly from flash memory. By default these attributes are set to Compressed .

★ The attribute OutputDirectory should refer to the \Application\GeneratedCode directory within your Build Environment. By using this template, it will be very easy to build the UI project for your target.

★ The attribute CleanOutputDirectories should be set to true to ensure that unused source code within the output directory \Application\GeneratedCode will be deleted.

★ The attribute PostProcess should refer to \Application\Project\EWARM\EWARM_ew_post_process.cmd if you are working with IAR Embedded Workbench or to \Application\Project\MDK-ARM\MDK-ARM_ew_post_process.cmd if you are working with Keil MDK-ARM or to \Application\Project\TrueSTUDIO\STM32F429-Discovery\TrueSTUDIO_ew_post_process.cmd if you are working with Atollic TrueSTUDIO. In case of the GCC ARM embedded toolchain leave it blank

Now you can use the template project in the same manner as it was used for the provided examples to compile, link and flash the binary.

After generating code, please follow these steps, in order to build your own UI application:

★ Start the batch file 'StartGccBuildEnvironment.bat'. Again, a windows command line window should open.

★ Start compiling, linking and flashing:

Most of the project settings are taken directly out of the generated code, like the color format or the screen orientation. Only a few additional settings can be configured directly within the Makefile , like the usage of the FreeRTOS operating system.

Console output

In order to receive error messages or to display simple debug or trace messages from your Embedded Wizard UI application, a serial terminal like 'Putty' or 'TeraTerm' should be used.

★ As soon as you connect your STM32F429 target with the PC via USB, a STMicroelectronics STLink Virtual COM Port (COMx) appears within your system device list. Open the device manager to get the number of the installed COM port.

★ Now you can open your terminal application and connect it via COMx with the following settings: 115200-8-N-1

projects stm32f429i discovery applications stemwin

This terminal connection can be used for all trace statements from your Embedded Wizard UI applications or for all debug messages from your C code.

Using IAR Embedded Workbench

If you want to use the IAR Embedded Workbench instead of the GCC ARM embedded toolchain, please follow these instructions:

The subdirectory \Application\Project\EWARM contains a template project that is commonly used for all provided Embedded Wizard examples. All Embedded Wizard examples will store the generated code within the common /Application/GeneratedCode folder.

The generated code of an Embedded Wizard example is imported automatically to the IAR Embedded Workbench project using the Project Connection mechanism.

To establish this automatic project import a post process has to be added to the Profile settings within Embedded Wizard Studio:

★ Open the desired Embedded Wizard example project.

★ Select the Profile and set the attribute PostProcess to the file ..\..\Application\Project\EWARM\EWARM_ew_post_process.cmd .

After the Embedded Wizard code generation the installed post process will generate a ewfiles.ipcf file, that controls the import to the IAR Embedded Workbench project.

After returning to IAR Embedded Workbench, the latest generated code and the suitable Embedded Wizard Platform Package will be imported to the IAR Embedded Workbench project (depending on the color format and the screen orientation selected in the Embedded Wizard Profile).

If the color format or the screen orientation was changed, please do a complete rebuild of the IAR Embedded Workbench project.

Using Keil MDK-ARM

If you want to use the Keil MDK-ARM toolchain instead of the GCC ARM embedded toolchain, please follow these instructions:

The subdirectory \Application\Project\MDK-ARM contains a template project that is commonly used for all provided Embedded Wizard examples. All Embedded Wizard examples will store the generated code within the common /Application/GeneratedCode folder.

The generated code of an Embedded Wizard example is imported automatically to the Keil MDK-ARM project using the CMSIS PACK mechanism.

The following steps are needed to establish this automatic project import:

★ Install Tara.Embedded_Wizard_Launcher.x.x.x.pack by double clicking. You will find the file within the subdirectory \Application\Project\MDK-ARM .

★ Select the Profile and set the attribute PostProcess to the file ..\..\Application\Project\MDK-ARM\MDK-ARM_ew_post_process.cmd .

After the Embedded Wizard code generation the installed post process will generate a ewfiles.gpdsc file, that controls the Keil MDK-ARM project import.

In Keil MDK-ARM a dialog appears: "For the current project new generated code is available for import". After confirmation, the latest generated code and the suitable Embedded Wizard Platform Package will be imported to the Keil MDK-ARM project (depending on the color format and the screen orientation selected in the Embedded Wizard Profile).

If the color format or the screen orientation was changed, please do a complete rebuild of the Keil MDK-ARM project.

Using Atollic TrueSTUDIO

If you want to use the Atollic TrueSTUDIO toolchain instead of the GCC ARM embedded toolchain, please follow these instructions:

The subdirectory \Application\Project\TrueSTUDIO contains a template project that is commonly used for all provided Embedded Wizard examples. All Embedded Wizard examples will store the generated code within the common /Application/GeneratedCode folder.

★ Select the Profile and set the attribute PostProcess to the file ..\..\Application\Project\TrueSTUDIO\STM32F429-Discovery\TrueSTUDIO_ew_post_process.cmd .

After the Embedded Wizard code generation the installed post process will adapt the .cproject XML file. All necessary libraries and include paths (depending on the color format and screen rotation) will be set automatically.

The given TrueSTUDIO example under \Application\TrueSTUDIO contains a workspace which has all adaptions for an Embedded Wizard project. For using this within Atollic TrueSTUDIO do following steps:

★ Open Atollic TrueSTUDIO and select the directory \Application\Project\TrueSTUDIO as workspace directory.

★ To import the C project, select the menu item File - Import and choose General - Existing Projects into Workspace and press Next .

★ Choose Select root directory - Browse and select the directory \Application\Project\TrueSTUDIO\STM32F429-Discovery .

★ Press Finish .

★ To compile the project select Project - Build Project .

★ Choose a Run or Debug Configuration under Run - Debug History .

If the color format or the screen orientation was changed, please do a clean in Atollic TrueSTUDIO.

Custom specific hardware

In order to bring-up an Embedded Wizard generated UI application on your STM32 custom hardware, you can use the provided Embedded Wizard Build Environment for STM32F429 Discovery as a template. The subdirectory \TargetSpecific contains all configuration files and platform specific source codes. Assuming that your custom hardware is similar to the STM32F429 Discovery board, the following adaptations or configurations are typically necessary:

★ System clock ( ew_bsp_system.c ) - The first and the important step is to configure the system and peripheral clock. Depending on your hardware you can use the internal or external clock as source. Please take care that your LTDC and USART are connected to the selected clock source and configured correctly. The Embedded Wizard UI application runs independent from the chosen system frequency, however, with a slow system clock, all components need more time for their tasks (e.g. display refresh).

★ SDRAM ( ew_bsp_system.c ) - The SDRAM configuration has to be adapted to your particular SDRAM. Please use a memory test to ensure that writing and reading works properly. If the start address and/or the size of the SDRAM has changed, please adapt the settings for the framebuffer and the memory pool within the file main.c .

★ USART ( ew_bsp_serial.c ) - Typically, the USART configuration just requires a new pinout according your hardware layout. The usage of the serial connection is highly recommended in order to get status and debug messages during runtime.

★ LTDC ( ew_bsp_display.c ) - The LTDC is an integrate display controller which allows you to connect many different display types to a STM32 device. Here you have to adjust the interface to your display. It is important to adjust your pinout, polarity, timings, color format and layer settings according your dedicated display. For more details concerning LTDC settings please have a look to AN4861 . In case you are using a MIPI-DSI display, please use the Build Environment for STM32F469-Discovery as template.

★ Touch ( ew_bsp_touch.c ) - If your application requires touch support, you can integrate a given touch driver provided by the touch controller manufacturer or write your own. As a result the current touch position should be returned.

As soon as these steps are done, you can create your own GUI application or use one of the provided examples. If the size of your display is different compared to the display of the STM32F746 Discovery board (240x320 pixel), please adapt the attribute ScreenSize of the UI project and the size of the framebuffer within the file main.c accordingly.

Embedded Wizard is a product of TARA Systems GmbH

Concept and implementation by Paul Banach and Manfred Schweyer

Copyright © 2024 TARA Systems GmbH • About us • Contact • Imprint • Privacy Policy

Search code, repositories, users, issues, pull requests...

Provide feedback.

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly.

To see all available qualifiers, see our documentation .

  • Notifications

STM32Cube MCU Full Package for the STM32F4 series - (HAL + LL Drivers, CMSIS Core, CMSIS Device, MW libraries plus a set of Projects running on all boards provided by ST (Nucleo, Evaluation and Discovery Kits))

STMicroelectronics/STM32CubeF4

Folders and files, repository files navigation, stm32cubef4 mcu firmware package.

latest tag

This repository has been created using the git submodule command. Please refer to the "How to use" section for more details.

STM32Cube is an STMicroelectronics original initiative to ease developers' life by reducing efforts, time and cost.

STM32Cube covers the overall STM32 products portfolio. It includes a comprehensive embedded software platform delivered for each STM32 series.

  • The CMSIS modules (core and device) corresponding to the ARM(tm) core implemented in this STM32 product.
  • The STM32 HAL-LL drivers, an abstraction layer offering a set of APIs ensuring maximized portability across the STM32 portfolio.
  • The BSP drivers of each evaluation, demonstration or nucleo board provided for this STM32 series.
  • A consistent set of middleware libraries such as RTOS, USB, FatFS, graphics, touch sensing library...
  • A full set of software projects (basic examples, applications, and demonstrations) for each board provided for this STM32 series.

The STM32CubeF4 MCU Package projects are directly running on the STM32F4 series boards. You can find in each Projects/ Board name directories a set of software projects (Applications/Demonstration/Examples).

Some middleware libraries and projects are unavailable in this repository

In this repository, the middleware libraries listed below along with this list of projects (demos, applications, and examples) using them, are not available as they (the middleware libraries) are subject to some restrictive license terms requiring the user's approval via a "click thru" procedure.

  • ./Middlewares/ST/STM32_Audio
  • ./Middlewares/ST/STemWin
  • ./Middlewares/ST/TouchGFX

If needed, they can be found inside the full firmware package available on our website st.com and downloadable from here . You will be prompted to login or to register in case you have no account.

Release note

Details about the content of this release are available in the release note here .

This repository has been created using the git submodule command. Please check the instructions below for proper use. Please check also the notes at the end of this section for further information.

  • To clone this repository along with the linked submodules, option --recursive has to be specified as shown below.
  • To get the latest updates , in case this repository is already on your local machine, issue the following two commands (with this repository as the current working directory ).
  • To use the same firmware version as the one available on st.com , issue the command below after specifying the targeted vX.Y.Z version. This should be done after the command(s) indicated in instruction (1) or in instruction (2) above have been successfully executed.
  • To avoid going through the above instructions and directly clone the same firmware version as the one available on st.com , issue the command below after specifying the targeted vX.Y.Z version.
  • The latest version of this firmware available on GitHub may be ahead of the one available on st.com or via STM32CubeMX . This is due to the rolling release process deployed on GitHub. Please refer to this post for more details.
  • Option --depth 1 specified in instruction (4) above is not mandatory. It may be useful to skip downloading all previous commits up to the one corresponding to the targeted version.
  • If GitHub "Download ZIP" option is used instead of the git clone command, then the different submodules have to be collected and added manually .

Boards available

  • STM32F4-Discovery
  • STM32F401-Discovery
  • STM32F401RE-Nucleo
  • STM32F410xx-Nucleo
  • STM32F411E-Discovery
  • STM32F411RE-Nucleo
  • STM32F412G-Discovery
  • STM32F412ZG-Nucleo
  • STM32F413H-Discovery
  • STM32F413ZH-Nucleo
  • STM32F429I-Discovery
  • STM32F429ZI-Nucleo
  • STM32F446ZE-Nucleo
  • STM32429I_EVAL
  • STM32439I_EVAL
  • STM3240G_EVAL
  • STM3241G_EVAL
  • STM32446E_EVAL
  • STM32446E-Nucleo
  • STM32469I_EVAL
  • STM32469I-Discovery

Troubleshooting

Please refer to the CONTRIBUTING.md guide.

Code of conduct

Security policy, contributors 11.

@ALABSTM

  • Assembly 22.6%
  • Python 0.0%

ParkNews Logo

  • About ParkNews
  • Privacy Policy

FEIG ELECTRONIC: Moscow-City Skyscrapers Streamline Parking Access and Control with Secure RFID

Feig electronic partners with isbc group to deploy ucode dna rfid security and parking access control solution in moscow business district.

Weilburg, Germany  — December 3,  2019  —  FEIG ELECTRONIC , a leading global supplier of radio frequency identification (RFID) readers and antennas with fifty years of industry experience, announces deployment of the UCODE DNA RFID security and parking contactless identification solution in the Moscow International Business Center, known as Moscow-City, one of the world’s largest business district projects.

The management of Moscow-City not only selected long-range, passive UHF RFID to implement in its controlled parking areas, it also chose to implement UCODE DNA , the highest form of secure RAIN RFID technology, developed by NXP Semiconductors.

projects stm32f429i discovery applications stemwin

Panoramic view of Moscow city and Moskva River at sunset. New modern futuristic skyscrapers of Moscow-City – International Business Center, toned

“Underscoring NXP’s innovation and leadership in developing advanced RAIN RFID technologies, our UCODE DNA was chosen to be incorporated with the FEIG and ISBC implementation of the contactless identification system in the prestigious Moscow-City,” said Mahdi Mekic, marketing director for RAIN RFID with NXP Semiconductors. “This exciting project represents yet another successful deployment of NXP’s contactless portfolio, and showcases our continued ability to meet the high-security requirements of highly demanding applications without compromising user convenience.”

“UCODE DNA is considered the only identification technology to match the physical protection of a barrier with the cybersecurity necessary to truly protect entrances from unauthorized access,” said Manuel Haertlé, senior product manager for FEIG Electronic. “As a respected contactless payment technology company, FEIG applies security know-how from its payment terminals, which are fully certified according to the latest high-class security standards, into our RFID systems. FEIG vehicle access control RFID readers incorporate advanced secure key storage elements, supporting various methods for secure key injection.”

FEIG’s partner ISBC Group provided the knowledge and support for this successful implementation using  FEIG’s long-range UHF RFID . The resulting system enables authorized vehicle entry into areas reserved for private residential use or corporate tenants, while also allowing availability of temporary, fee-based visitor parking. Thanks to the cryptographic authentication of UCODE DNA, both the tag and reader must go through an authentication procedure before the reader will validate the data from the tag, which is transmitted wirelessly. This level of authentication is typically used in the most secure data communication networks.

“The system’s two-step authentication means that only authorized equipment can handle the secure protocol and the data exchange with the UCODE DNA based tag. Without the required cryptographic secrets, other readers would query the tag in vain, because the tag’s response cannot be interpreted or understood,” said Andrey Krasovskiy, director of the RFID department at ISBC Group. “On top of this, each data exchange in the authentication process is unique, so even if a malicious actor were to intercept the communication, the transmission is only good for a single exchange and the tag’s unique identity is protected from cloning.”

Established in 1992 and still growing, Moscow-City is the revitalization and transformation of an industrial riverfront into a new, modern, vibrant and upscale business and residential district. A mix of residential, hotel, office, retail and entertainment facilities, it is located about four kilometers west of Red Square along the Moscow River. Twelve of the twenty-three planned facilities have already been completed, with seven currently under construction. Six skyscrapers in Moscow-City reach a height of at least 300 meters, including Europe’s tallest building, Federation Tower, which rises more than 100 stories.

Partnering with ISBC and deploying FEIG Electronic RFID solutions, the Moscow International Business Center is delivering security and access control to its city center today, as it grows into the city of tomorrow.

About FEIG ELECTRONIC

FEIG ELECTRONIC GmbH, a leading global supplier of RFID readers and antennas is one of the few suppliers worldwide offering RFID readers and antennas for all standard operating frequencies: LF (125 kHz), HF (13.56 MHz), UHF (860-960 MHz). A trusted pioneer in RFID with more than 50 years of industry experience, FEIG ELECTRONIC delivers unrivaled data collection, authentication, and identification solutions, as well as secure contactless payment systems. Readers from FEIG ELECTRONIC, which are available for plug-in, desktop, and handheld applications, support next-generation contactless credit cards, debit cards, smart cards, NFC and access control credentials to enable fast, accurate, reliable and secure transactions. For more information, visit:  www.feig.de/en

Founded in Moscow in 2002, ISBC Group provides knowledge and support to integrators for their successful implementation of RFID and smart card-based solutions. The company specializes in the distribution of smart card equipment, contact and contactless card manufacturing, smart card and RFID personalization services, and information security.  Its Research and Design Center is focused specifically on RFID, primarily HF and UHF solutions with NXP tags, and software development for the smart card industry. For more information visit:  https://isbc-cards.com/

← Previous Post

Next Post →

Privacy Overview

STM32CubeF4

Design Win

STM32Cube MCU Package for STM32F4 series (HAL, Low-Layer APIs and CMSIS, USB, TCP/IP, File system, RTOS, Graphic - and examples running on ST boards)

Product overview

Description.

projects stm32f429i discovery applications stemwin

STM32Cube is an STMicroelectronics original initiative to significantly improve developer productivity by reducing development effort, time and cost. STM32Cube covers the whole STM32 portfolio.

STM32Cube includes STM32CubeMX, a graphical software configuration tool that allows the generation of C initialization code using graphical wizards.

It also comprises the STM32CubeF4 MCU Package composed of the STM32Cube hardware abstraction layer (HAL) and the low-layer (LL) APIs, plus a consistent set of middleware components (RTOS, USB, FAT file system, Graphics and TCP/IP). TouchGFX graphic software stack is also included in the STM32CubeF4 MCU Package as a part of the STM32Cube ecosystem. It is available free of charge for production and redistribution on STM32 microcontrollers. All embedded software utilities are delivered with a full set of examples running on STMicroelectronics boards.

The STM32Cube HAL is an STM32 embedded software layer that ensures maximized portability across the STM32 portfolio, while the LL APIs make up a fast, light-weight, expert-oriented layer which is closer to the hardware than the HAL. HAL and LL APIs can be used simultaneously with a few restrictions.

Both the HAL and LL APIs are production-ready and have been developed in compliance with MISRA-C ® :2004 guidelines with some documented exceptions (reports available on demand) and ISO/TS 16949. Furthermore, ST-specific validation processes add a deeper-level qualification.

STM32CubeF4 gathers in one single package all the generic embedded software components required to develop an application on STM32F4 microcontrollers. Following STM32Cube initiative, this set of components is highly portable, not only within the STM32F4 Series but also to other STM32 Series. In addition, the low-layer APIs provide an alternative, high-performance, low-footprint solution to the STM32CubeF4 HAL at the cost of portability and simplicity.

HAL and LL APIs are available in open-source BSD license for user convenience.

All features

  • Consistent and complete embedded software offer that frees the user from dependency issues
  • Maximized portability between all STM32 Series supported by STM32Cube
  • Hundreds of examples for easy understanding
  • High quality HAL and low-layer API drivers using CodeSonar ® static analysis tool
  • TouchGFX graphics software stack
  • STM32F4-dedicated middleware including USB Host and Device, and TCP/IP
  • Free user-friendly license terms
  • Update mechanism that can be enabled by the user to be notified of new releases

Something went wrong with the server request. Please try again in a few moments.

Project title:, project description:, application:, end application:, nature of business:, military related:, country/region where the software will be used:, request for software successfully submitted. the approval process may take up to 48 hours. after you have been approved, you should receive a link to the requested software via email., get software, recommended for you.

Related Applications

  • Powered patient beds
  • Buy from eStore
  • Contact our sales offices & distributors
  • Partner program
  • Video center
  • ST community
  • Tools & Software
  • Applications
  • Publications
  • X-Reference

Search History

Please log in to show your saved searches.

Please  log in   to show your saved searches.

  • MCU Portfolio
  • Boards & hardware tools
  • Software development tools
  • Embedded software
  • Developer resources
  • MPU Portfolio
  • MCU Developer Zone
  • MPU Developer Zone
  • OUR FLAGSHIP SOFTWARE TOOLS
  • STM32CubeMX
  • STM32CubeIDE

Sorry! Your browser is out-of-date

This browser is out of date and not supported by st.com. As a result, you may be unable to access certain features. Consider that modern browsers:

  • are more secure and protect better during navigation
  • are more compatible with newer technologies
  • provide a better experience and features

So why not taking the opportunity to update your browser and see this site correctly?

Did you know?

Please provide email

Please enter code

Congratulations!

Simple subscription

You can start following this product to receive updates when new Resources, Tools and SW become available. It's easy and takes only 1 minute.

You are now subscribed to - STM32CubeF4

You can re-use the validation code to subscribe to another product or application.

  • Hispanoamérica
  • Work at ArchDaily
  • Terms of Use
  • Privacy Policy
  • Cookie Policy

8 Projects that Exemplify Moscow's Urban Movement

projects stm32f429i discovery applications stemwin

  • Written by Marie Chatel
  • Published on July 27, 2016

When it comes to urbanism these days, people’s attention is increasingly turning to Moscow . The city clearly intends to become one of the world’s leading megacities in the near future and is employing all necessary means to achieve its goal, with the city government showing itself to be very willing to invest in important urban developments (though not without some criticism ).

A key player in this plan has been the Moscow Urban Forum . Although the forum’s stated goal is to find adequate designs for future megacities, a major positive side-effect is that it enables the city to organize the best competitions, select the best designers, and build the best urban spaces to promote the city of Moscow. The Forum also publishes research and academic documents to inform Moscow’s future endeavors; for example, Archaeology of the Periphery , a publication inspired by the 2013 forum and released in 2014, notably influenced the urban development on the outskirts of Moscow, but also highlighted the importance of combining urban development with the existing landscape.

projects stm32f429i discovery applications stemwin

Concluding earlier this month, the 2016 edition of the Moscow Urban Forum focused on smart cities and the impact of technology on the ways we interact with people and use public infrastructure and civic spaces. The 2016 Forum invited city officials, urbanists, and architectural practitioners – including Yuri Grigoryan from Project MEGANOM ; Pei Zhu from Studio Pei Zhu ; Hani Rashid from Asymptote ; Reinier de Graaf from OMA ; Yosuke Hayano from MAD Architects ; and Kengo Kuma from Kengo Kuma Architects – to share about their knowledge and experiences in urban design. With the city looking forward to the built results of the latest Forum, we take a look back at some of the major developments in Moscow that have emerged in the past five years.

1) Gorky Park and Garage Museum

projects stm32f429i discovery applications stemwin

In 2010 the city government decided to improve Muscovites’ urban environment and create public spaces, and Gorky Park was the first project of note. The Russian equivalent of Central Park, it used to attract masses of tourists to its amusement park, but no residents would spend time there. Its reconstruction began in 2011 and featured infrastructure for strolling, sport, work, culture and leisure.

Inside the park lies the Garage Museum of Contemporary Art , a landmark building from the Brezhnev communist era which was renovated and transformed by OMA in 2015. The Dutch firm kept the original structure “as found,” only repairing elements from its prefabricated concrete walls – often clad with brick and decorative green tiles. Instead, the redesign focused on a double-skin facade of polycarbonate plastic that enclosed the original structure and preserved it from decay.

projects stm32f429i discovery applications stemwin

2) Zaryadye Park, Diller Scofidio + Renfro

projects stm32f429i discovery applications stemwin

Due to open in 2018, Zaryadye Park designed by Diller Scofidio + Renfro is probably one of Moscow ’s most cutting-edge projects. Located next to the Kremlin, the Red Square, and St Basil’s Cathedral, the project embodies what the architects calls “Wild Urbanism.” The project notably includes four artificial microclimates that mimic Russian landscape typologies: the steppe, the forest, the wetland and tundra. “It is a park for Russia made from Russia,” as Charles Renfro explains , in that “it samples the natures of Russia and merges them with the city, to become a design that could only happen here. It embodies a wild urbanism, a place where architecture and landscape are one.”

projects stm32f429i discovery applications stemwin

3) Moscow Riverfront, Project Meganom

projects stm32f429i discovery applications stemwin

Russian firm Project Meganom has also designed an ambitious project for Moscow ’s riverfront. Their masterplan also aims for a dialogue between the built and natural environment. A series of linear green spaces follow the river, and lines for pedestrians, cyclists, cars, and public transport are clearly delineated, improving the use of the public squares. River embankments are also transformed to function as areas for activities, communication, education and creativity nodes for public gathering.

projects stm32f429i discovery applications stemwin

4) Krymskaya Embankment, Wowhaus Architecture Bureau

projects stm32f429i discovery applications stemwin

Wowhaus Architecture Bureau recently transformed the 4-lane road at Krymskaya Embankment into a landscape park that connects Gorky Park with Krymsky bridge. The area used to be deserted, but is now reactivated with distinct transit and sport zones, as well as pavilions for artists’ exhibitions. Wave-shaped bicycle ramps, paths, and benches feature on the artificial landscape, which is also used for sledding, skiing, and skating in the winter.

projects stm32f429i discovery applications stemwin

5) Hermitage Museum and ZiL Tower in Moscow, Asymptote Architecture

projects stm32f429i discovery applications stemwin

New York architectural firm Asymptote Architecture are currently building two projects, a 150-meter residential tower and a satellite facility for St Petersburg’s well-known Hermitage Museum , where modern and contemporary art collections will be displayed. Situated in one of Moscow ’s oldest industrial areas, Asymptote’s buildings will lie in place of a Constructivist factory – which explains why the museum was reportedly inspired by El Lissitzky's "Proun" painting, as the terrace interior clearly shows.

projects stm32f429i discovery applications stemwin

6) “My Street”

projects stm32f429i discovery applications stemwin

“My Street” is the largest-scale program led by Moscow ’s government. The project aims to create about 50 kilometers of new pedestrian zones within the city center and periphery. The extensive program aims to solve parking issues, renovate street facades, and repair sidewalks and walkways with delimited areas for public transports, cars, cyclists, and pedestrians. “My Street” also requires a strong governance strategy and coordination; led by the Strelka Institute’s consultation arm KB Strelka , the project also involves 17 Russian and foreign architecture practices that were all individually in charge of one street, square or group of streets. Notable architects include the German firm Topotek 1 , the Dutch group West 8 , and the Russian firm Tsimailo , Lyashenko and Partners.

projects stm32f429i discovery applications stemwin

7) Moscow Metro

projects stm32f429i discovery applications stemwin

Moscow Metro is an architectural masterpiece that has been elaborated on since the 1920s. Its stations from the Stalin era are known for their unique designs with high ceilings, elaborate chandeliers and fine granite and marble cladding. To ensure that Moscow Metro remains an emblem of the city’s urban culture and powerful transportation system, the city’s government organized various competitions for the renovation of some Metro stations. Russian-based practice Nefa Architects was chosen to redesign Moscow’s Solntsevo Metro Station, while Latvian firm U-R-A will transform Novoperedelkino Subway Station . New stations are also being built, including two stations by Russian firms Timur Bashkayev Architectural Bureau and Buromoscow which should be completed by the end of 2018.

projects stm32f429i discovery applications stemwin

8) Luzhniki Stadium

projects stm32f429i discovery applications stemwin

Luzhniki Stadium is Moscow ’s main venue for sporting and cultural events. With Russia hosting the 2018 FIFA World Cup , the stadium should reflect Moscow’s intent to become a leading megacity, which is why $540 million has been spent on construction works. Its renovation mainly focuses on the roof and seating areas, and the capacity is planned to increase up to 81,000 seats. Works will be completed by 2017.

Find out more information and talks on Moscow’s urban development and the future of megacities on Moscow Urban Forum’s YouTube channel .

projects stm32f429i discovery applications stemwin

  • Sustainability

世界上最受欢迎的建筑网站现已推出你的母语版本!

想浏览archdaily中国吗, you've started following your first account, did you know.

You'll now receive updates based on what you follow! Personalize your stream and start following your favorite authors, offices and users.

IMAGES

  1. STM32F429I-Discovery STemWin Application

    projects stm32f429i discovery applications stemwin

  2. [PROJEKT] Przykładowa aplikacja STM32F429I-DISCO na bazie bezpłatnych

    projects stm32f429i discovery applications stemwin

  3. stm32f429i-disco stemwin mario

    projects stm32f429i discovery applications stemwin

  4. STM32F429

    projects stm32f429i discovery applications stemwin

  5. ST STM32F429I Discovery

    projects stm32f429i discovery applications stemwin

  6. STM32F429I DISC1 --TFT STM32CubeIDE + TouchGFX + stm32f429i discovery

    projects stm32f429i discovery applications stemwin

VIDEO

  1. How is AI Going to Revolutionize the Biotech Industry? #ai #drugdiscovery #biotechnology

  2. STM32F407VET6 Black + ILI9341 FSMC + STemWin

  3. STM32F429I-Discovery STemWin Application

  4. STM32F429I-Disco osilaskop ve STM32F0Discovery DAC Uygulaması

  5. STM32F429I Discovery Keil STemWin GUI Button Led Control

  6. STM32F429I DISCOVERY Graphics showcase

COMMENTS

  1. How to run or add STemwin library projects on STM3

    using STemWin. Look for example to the ones in this path:STM32Cube_FW_F4_V1.0\Projects\STM32F429I-Discovery\Applications\STemWin. Examples are ready to use with 4 toolchains: Keil, IAR, SW4SM32 and TrueSTUDIO.

  2. STEmWin on STM32F429I-Discovery with SW4STM32 (Part 3)

    First we need to import STEmWin files to our project. We need to make a few directories in our project, first is GUI in root of our project and then we need two subfolders inc and lib: Then we need to copy: all .h files from C:\Users\…\STM32Cube\Repository\STM32Cube_FW_F4_V1.19.0\Middlewares\ST\STemWin\inc to inc folder we just created

  3. Developing Embedded GUI using STemWin Library

    This tutorial shows how to create a basic GUI application for the STM32F429I-Discovery board using the STemWin library. We will start with a basic example shipped with the STM32 SDK, will show how to locate different demos inside it and will create a basic demo using the TreeView control to show how the message handling works.

  4. Library 50- STemWin for STM32F429-Discovery

    ST provides emWin library from Segger. It is professional GUI ( G raphical U ser I nterface), optimized for speed and performance for microcontrollers. ST has it's own implementation, called STemWin. With this GUI, you can do many thing, of use simple buttons, dialogs, text boxes, to playing videos, displaying pictures, menus, etc.

  5. STEmWin on STM32F429I-Discovery with SW4STM32 (Part 1)

    Here it is important to select Open Project so that our code is imported into SW4STM32. IDE opens and we get this message: We test the code by right-clicking on project name and selecting Build Project: It takes some time and finally we get something like this in Console window at the bottom of our IDE:

  6. STEmWin on STM32F429I-Discovery with SW4STM32 (Part 2)

    This is the second part of our STEmWin tutorial for STM32F429I-Discovery board. ... with SW4STM32 (Part 2) 06.02.2018 17.04.2018 Slemi. In this tutorial we will add LCD and touch screen drivers to our project. ... When we upload it for the first time we need to right click our project and select Run As -> 1 Ac6 STM32 C/C++ Application (marked ...

  7. PDF UM1662 User manual

    To program application (demonstration or example), follow the sequence below: 1. Go under application folder 2. Chose the desired IDE project 3. Double click on the project file (ex. STM32F429I-Discovery_Demo.eww for EWARM) 4. Rebuild all files: Project->Rebuild all 5. Load project image: Project->Debug 6. Run program: Debug->Go

  8. PDF Getting started with STemWin Library

    Introduction. A partnership with Segger Microcontroller GmbH & Co. KG enables STMicroelectronics to provide STemWin Library, a product based on Segger's emWin graphic library. The STemWin Library is a professional graphical stack library enabling the building up of graphical user interfaces (GUIs) with any STM32, LCD/TFT display and LCD/TFT ...

  9. How to add stemwin in a running freertos project

    You can get a head start by examining the example projects that involve STemWin. (On my Windows PC: C:\Users\Henry\STM32Cube\Repository\STM32Cube_FW_F4_V1.6.0\Projects\STM32F429I-Discovery\Applications\STemWin\STemWin_HelloWorld) It includes all of the code that you need to get STemWin working with the STM32F429I-DISCO board but without the RTOS.

  10. STM32F429 with TFT LCD

    In your link many people suggest seeing the working example available in the CubeF4 firmware package at this location: STM32Cube_FW_F4_V1.0\Projects\STM32F429I-Discovery\Applications\STemWin..but I can't figure out where it is. Any help? Okey I just found it, I will take a look Thanks.

  11. Getting started with STM: STM32F429 Discovery

    STM32F429 Discovery board (STM32F429I-DISC1). The following article explains all necessary steps to create an Embedded Wizard UI application suitable for the STM32F429 Discovery board. Please follow these instructions carefully and step by step in order to ensure that you will get everything up and running on your target.

  12. Discovery kit with STM32F429ZI MCU * New order code STM32F429I-DISC1

    With the STM32F429 Discovery kit (32F429IDISCOVERY), users develop applications easily on the STM32F429 high-performance MCUs with Arm ® Cortex ® ‑M4 core. The Discovery kit includes a 2.4" QVGA TFT LCD, an external 64-Mbit SDRAM, an ST‑MEMS gyroscope, a USB OTG Micro-AB connector, LEDs, and push-buttons.

  13. STM32CubeF4 MCU Firmware Package

    STM32Cube is an STMicroelectronics original initiative to ease developers' life by reducing efforts, time and cost.. STM32Cube covers the overall STM32 products portfolio. It includes a comprehensive embedded software platform delivered for each STM32 series. The CMSIS modules (core and device) corresponding to the ARM(tm) core implemented in this STM32 product.

  14. ST STM32F429I Discovery

    First, connect the STM32F429I-DISC1 Discovery kit to your host computer using the USB port to prepare it for flashing. Then build and flash your application. Here is an example for the Hello World application. # From the root of the zephyr repository. west build -b stm32f429i_disc1 samples/hello_world west flash.

  15. FEIG ELECTRONIC: Moscow-City Skyscrapers Streamline Parking Access and

    Weilburg, Germany — December 3, 2019 — FEIG ELECTRONIC, a leading global supplier of radio frequency identification (RFID) readers and antennas with fifty years of industry experience, announces deployment of the UCODE DNA RFID security and parking contactless identification solution in the Moscow International Business Center, known as ...

  16. Moscow

    Discover the latest Architecture news and projects on Moscow at ArchDaily, the world's largest architecture website. Stay up-to-date with articles and updates on the newest developments in ...

  17. STM32CubeF4

    STM32CubeF4 gathers in one single package all the generic embedded software components required to develop an application on STM32F4 microcontrollers. Following STM32Cube initiative, this set of components is highly portable, not only within the STM32F4 Series but also to other STM32 Series.

  18. Moscow Launches New Smart City District as a Living Lab

    The government of Moscow has begun developing an existing district in the city to test nearly 30 new 'smart' technologies for urban development. Home to over 8,000 people, the district is ...

  19. 8 Projects that Exemplify Moscow's Urban Movement

    6) "My Street". "My Street" is the largest-scale program led by Moscow 's government. The project aims to create about 50 kilometers of new pedestrian zones within the city center and ...