STM32 Display Tutorial

Get started with the programming of displays based on the microcontroller STM32F429BIT6 with our tutorials. The tutorials are written for beginners. But even for experts, the programming examples regarding the initialization of the registers can make the switch to the STM32F4 series much easier.

For a quick start, the display, programming adapter and an ST-Link from ST are sufficient. We advise and deliver from a single source: +49 (0)8142 / 305050 or m.bittner@ebs-systart.com.

Getting Started - STM32CubeIDE - Integrated Development Environment for STM32

In this tutorial, you will learn the basics of how to successfully commission and program our display modules. It shows you how to set up the STM32CubeIDE IDE and connect the display module to work with it. After successfully compiling and flashing the provided source code, the display is initialized. First the logo of EBS-SYSTART GmbH and then that of our 2-in-1 display modules will be shown.

System STM32CubeIDE is a free Eclipse-based IDE developed by OpenSTM32. It can be used to program the various microcontrollers from STMicroelectronics. Our display modules all use the microcontroller STM32F429BIT6. The code examples that we provide here for free are based on the Standard Peripherals Library, which comes from STMicroelectronics.

Getting-Started_Tutorial.pdf

Getting-Started_ioc_source-bin-files.zip

Level 1 - Pixelating Graphics

In this tutorial, we will show you the basic functions that you can use to display various graphic elements and text on the LCD display. These features include:

  • Drawing Lines
  • Drawing rectangles
  • Drawing pixel graphics
  • Writing Texts

After successfully compiling and flashing the source code, a blue background with the text "Hello World!" and "I'm italic." is displayed in red after a short start sequence. Furthermore, a small smiley icon and various lines are drawn. On the small green rectangle in the background of the "Hello World!" lettering, you can see how the text behaves with transparent background.

As you will see in the sample code, the pixels of the graphics must be stored as an array in a certain form. This conversion can be carried out automatically using software. We recommend the free program "lcd-image-converter" from riuson. The different fonts for writing text are also generated through this tool.

Level_1_Tutorial.pdf

Level_1_ioc_source-bin-files.zip

Level 2 - Touch Events and USB

In this tutorial, the touch panel of our display modules is put into operation. The panel has an integrated circuit for evaluating touch events and communicates these events to the STM32 microphone scooter via I2C. A distinction is made between touch and release events. The coordinates and the type of event are sent to a connected PC via the USB Type-B socket. After successfully compiling and flashing the source code, you will see the lettering "Touch Me!" after a short start sequence. Every time you touch the display, a string with the coordinates and the type of event is sent via USB to a connected PC. Furthermore, depending on whether you press into the upper left quarter or not, the display lights up briefly green or red.

Using classic polling, the touch panel is queried for events and the coordinates are read. The STM32 microcontroller evaluates the queried data and sends this data via a UART to USB converter from FTDI to a connected PC.

Level_2_Tutorial.pdf 

Level_2_ioc_source-bin-files.zip

Level 3 - Digital Picture Frame

This tutorial shows how you can use the Display Board as a digital picture frame. For this you need a microSD card, which contains the desired images in JPEG format. After the successful compilation and flashing of the source code, the images on the microSD card are displayed one after the other on the display after a short start sequence. This is done in a continuous loop.

Die SD-Karte wird zunächst nach JPEGs durchsucht. Zur Bearbeitung des Dateisystems auf der SD-Karte wird die freie Bibliothek FatFs von ELM-Chan mit Erweiterungen von Tilen Majerle benutzt. Die gefundenen Bilder werden daraufhin nacheinander dekodiert und auf dem Display dargestellt. Für das Dekodieren der JPEGs wird die freie Bibliothek LibJPEG verwendet.

Level_3_Tutorial.pdf

Level_3_ioc_source-bin-files.zip

Level 4 - Ethernet and Echo Server

This tutorial shows how to connect Ethernet to the Display Board and use it as a TCP Echo server. For this, you will need our Ethernet breakout board. After successful compilation and flashing of the source code, the IP address and the port number under which you can connect to the display board are displayed after a short start sequence.

In this example package, the HAL Library from STMicroelectronics is used instead of the Standard Peripheral Library (SPL). To get the example up and running, you need the CubeIDE. You can connect to the display module via test software (we recommend the SocketTest program) and send messages to it. These are then sent back one-to-one by the Echo server.

Level_4_Tutorial.pdf 

Level_4_ioc_source-bin-files.zip

Level 5 - WiFi - Weather Station

In this tutorial, you will be shown how to use the BME680 temperature, barometric pressure, humidity, and air quality sensor from Bosch. This sensor is installed on the 5.0 inch and 4.3 inch display boards. After successful compilation and flashing of the source code, the various values that can be recorded by the sensor are displayed on the display after a short start sequence. In addition, the display board builds a WiFi network. Any device can be connected to the WiFi network in order to then monitor the sensor values via a webpage.

The BME680 is connected to the ESP32-WROOM-32 module on the display board via an SPI interface. This module regularly queries the sensor for its data and hosts a web server. Through this web server, you can track the sensor data on any WiFi-enabled device in your browser. There is a UART connection between the ESP32-WROOM module and the STM32 chip. In addition, the microcontroller of the ESP32-WROOM regularly asks for the values obtained from the BME680 and displays them on the display.

Level_5_Tutorial.pdf 

Level_5_ioc_source-bin-files.zip

Level 6 - BLE - String Transfer

In this tutorial you will be shown how to use the BLE module on the 4.3 inch and the 5.0 inch display. After successfully compiling and flashing the source code, you can connect to the BLE module after a short start sequence using a smartphone app and send strings to the display. These strings are then output to the display. With the help of the smartphone app, the position and the color of the string can be set/changed.

The BMD-300 BLE module is connected to the STM32F429BIT6 via UART. The firmware initializes the BMD-300 module and the BMD-300 module starts with advertising. With the nRF-Connect smartphone app, you can connect to the BMD-300 module and transfer strings of up to 19 characters.

Level_6_Tutorial.pdf 

Level_6_ioc_source-bin-files.zip

Support

We are more than happy to discuss all your requirements and wishes. You can contact us by phone at +49 (0)8142 / 305050 or via email m.bittner@ebs-systart.com.

Navigation