cancel
Showing results for 
Search instead for 
Did you mean: 

Documentation of X-Cube Display

MGuth.1
Associate III

Hi all

I'm planing to run a 16-bit TFT display with a NUCLEO U575 board. I already managed to get it running via FMC and a custom written library as stated in this thread. So the Display, the NUCLEO and the interface is running fairly well.

However, as I'm planing to run the display with TouchGFX later, I'd like to use the ST7789V driver provided by STM in the X-Cube Display package. But I don't get it running with my setup. When I try to control the display with the X-Cube package, My actual code that I'm trying to run the display with is shown below. (For now I only want to get it run in a very bare code - no DMA, no TouchGFX, ... I just want to do it step by step :) )

I can turn on the display (line 4)- showing the content that's still stored in the controllers RAM. But when it comes to line 10 (FillRGBRectangular) I'm getting no change on the screen at all.

while(1){
BSP_LCD_DisplayOff(my_LCD);
HAL_Delay(500);
BSP_LCD_DisplayOn(my_LCD);
HAL_Delay(500);
BSP_LCD_Init(my_LCD, LCD_ORIENTATION_PORTRAIT);
HAL_Delay(500);
BSP_LCD_SetDisplayWindow(my_LCD, 0, 0, 240, 320);
HAL_Delay(500);
BSP_LCD_FillRGBRect(my_LCD, 0,0xFFFFFF , 10, 10, 100, 100);
}

As I like to investigate (and learn) about the mistake myself I'm looking for some proper documentation on how to set up the X-Cube Display package. UM2787 - Getting started with the X-Cube Display Expansion Package didn't really help a lot as the information is very general.

Does anyone of you know a better how-to for the X-Cube Display package?

Can the ST7789V driver delivered with the X-Cube Display package be used as standalone? So without DMA, OS-settings, TouchGFX,...?

A brief summary of my setup:

  • Nucleo U575
  • 2.8 inch 240x320px TFT display driven by a ST7789V controller
  • connected through a PCB I designed myself (proven to run with my self written ST7789V-driver)
  • FMC Bank1 activated and configured as for my self written ST7789V driver
  • in Software Packs: STMicroelectronics X-CUBE-DISPLAY 2.2.0 -> Board Part LCD ST7789V -> FMC (also activated in the Pinout&Configuration part in CubeMX, tried it with several different settings for RTOS, Device Application (custom) (de-)activated,...)

Thanks in advance

Matthias

5 REPLIES 5
MM..1
Chief II

Sorry , but your code while is ugly.

And around learn X-CUBE zips is examples. LCD management is primary two type with - without framebuffer. Plus for quick animated engine both need sync with memory management.

MGuth.1
Associate III

Hi

thanks for your answer.

I already loaded the examples and tried to understand them. I just think they are too bloated for me to understand the very basics. I'd like to do it step by step. That's how I learn best and that's why I don't configure a complete project with TouchGFX, DMA2D, ... I really need to understand the basics on how to use that ST7789V-driver by ST first.

What do you mean with "your code while is ugly"? It's just a few lines of code checking if the LCD is showing anything - any response at all...

After last while command fill your code go back to start and off lcd = you see nothing, or maybe in next on...

MGuth.1
Associate III

ok, that's true. But as you said I think it should work on the next display_on()

MM..1
Chief II

Back to your trouble, BSP is drivers writed for boards prepared for demo. If you try learn, go into every BSP call and check if your hw do what neeed.

Rewrite BSP and your while start work.

And any display controller, too ST7789V have many modes and interfaces, you need read and apply in BSP pdf for LCD + pdf for controller.

For example backlight is controlled internaly or externaly usw.