Mastering Microcontroller: STM32-LTDC, LCD-TFT, LVGL (MCU3)

Step by step guide to microcontroller based embedded graphics system , Interfacing, and building graphical UI using LVGL

Ratings: 4.29 / 5.00




Description

In this course, you learn the embedded graphics systems and programming part of it along with using  LVGL  for creating UI applications.

In the first part of the course, you will learn,

1. Basics of embedded graphics systems

2. how to interface an LCD-TFT display to the microcontroller board.

3. How to use the LTDC  peripheral of the STM32 microcontroller,

4. How to communicate between the microcontroller and the TFT display using MIPI DPI and MIPI DBI

5. Bare metal programming

In this part you are going to write all the code, completely from scratch, that is using register-level programming.

In  the second part, you will learn,

1. Introduction to  LVGL ( an open-source graphics library for microcontrollers)

2. Using LVGL in STM32 projects

3. LVGL widgets and their usage, APIs

4. Create UI application using LVGL

5. Testing LVGL application on PC simulator and different STM32 development boards

6. Student project

In this course I will show you how you can create an embedded graphics application for 3 different boards simultaneously

you can either use the STM32F429 Discovery board or STM32F74x Discovery board or you can use any STM32 board with external TFT LCD interfaced via the SPI interface.

Please read the course description carefully and you may also watch free preview videos before enrolling in this course.


Hardware requirements:

If you want to test the code developed for target hardware, you would need any one of the below-mentioned board

For more information please watch the preview videos above.

1. 32F429IDISCOVERY Discovery kit with STM32F429ZI MCU  (Explained in the course)

or

2. 32F746GDISCOVERY Discovery kit (STM32F746NG MCU)   (Explained in the course)

or

3. STM32F7508-DK Discovery kit with STM32F750N8 MCU

or

4. STM32F4DISCOVERY Discovery kit with STM32F407VG MCU + External ILI9341 TFT-LCD interfaced via SPI  (Explained in the course)

or

5. Any stm32 board + External ILI9341 TFT-LCD interfaced via SPI

6. USB logic analyzer (Optional )

7. Jumper wires if you are using hardware option 4 or 5

Note: LVGL applications can be tested on a PC simulator without the need for any target hardware.


Software requirements:

STM32CUBEIDE



Learning order of FastBit Embedded Brain Academy Courses,

If you are a beginner in the field of embedded systems, then you can take our courses in the below-mentioned order.

This is just a recommendation from the instructor for beginners.

1) Microcontroller Embedded C Programming: absolute beginners(Embedded C)

2) Embedded Systems Programming on ARM Cortex-M3/M4 Processor(ARM Cortex M4 Processor specific)

3) Mastering Microcontroller with Embedded Driver Development(MCU1)

4) Mastering Microcontroller: TIMERS, PWM, CAN, RTC,LOW POWER(MCU2)

5) Mastering Microcontroller: STM32-LTDC, LCD-TFT, LVGL(MCU3)

6) Embedded System Design using UML State Machines(State machine)

7) Mastering RTOS: Hands-on FreeRTOS and STM32Fx with Debugging(RTOS)

8) ARM Cortex M Microcontroller DMA Programming Demystified(DMA)

9) STM32Fx Microcontroller Custom Bootloader Development(Bootloader)

10) Embedded Linux Step by Step using Beaglebone Black(Linux)

11) Linux device driver programming using Beaglebone Black(LDD1)

What You Will Learn!

  • Embedded graphics systems
  • Interfacing RGB TFT LCD using MIPI DPI and MIPI DBI
  • Interfacing SPI based TFT-LCD display and programming
  • STM32 LTDC configuration and programming
  • STM32 LTDC Layers programming
  • Running LVGL on simulator and on STM32 microcontroller
  • Using LVGL objects, widgets , styles , animations, menus,etc
  • Step by step LVGL UI exercises
  • Covering three major hardware development boards STM32F439 discovery , STM32F746 discovery and STM32F407+External LCD
  • Register level step by step programming and demonstration

Who Should Attend!

  • Anyone who wants to learn and apply embedded systems programming