Discuss STM32 and TouchGFX implementations, including configuration, debugging, and optimization.
Most recent activity
I read the 4.10.0 User Manual on CanvasWidgetRenderer. I was unsure what it means by "CanvasWidget will not allocate memory dynamically, but will use memory from the buffer kept in CanvasWidget -Renderer."I see the commented line in main.cpp://static uint8_t canvasBuffer[CANVAS_BUFFER_SIZE]; //CanvasWidgetRenderer::setupBuffer(canvasBuffer, CANVAS_BUFFER_SIZE);When I create screens with lineprogressbar the generated files all have :static const uint16_t CANVAS_BUFFER_SIZE = 4800; uint8_t canvasBuffer[CANVAS_BUFFER_SIZE]; CanvasWidgetRenderer::setupBuffer(canvasBuffer, CANVAS_BUFFER_SIZE);Is it better to have one function (CanvasWidgetRenderer::setupBuffer(canvasBuffer, CANVAS_BUFFER_SIZE);) called in main.cpp or have multiple screen call (CanvasWidgetRenderer::setupBuffer(canvasBuffer, CANVAS_BUFFER_SIZE);) ?The application is running fine with multiple calls, but I was just afraid this will create memory problem if the buffer isn't returned during teardown.Thanks for the help!
Hi,I'm trying to generate graphical application code from CubeMx_4.26 for using STemWin and GUI Builder tool for target board STM32F746G discovery board.cubeMX .ioc file are attached, It works when I am generating GUI code with extrnal SDRAM use.But i don't want to use any External SDRAM.Anyone perhaps have a working .IOC 32f746 Disco setup with working StemWin and Guibuilder without use of External SDRAM for me to compare to? or Edit the attached .Ioc file.Thank In advance.Regards,MD
So there's LTDC, STemWin, ili9341 drivers (and others), ChromArt, etc and I'm gathering that there's a lot of overlap on these. Some of the tutorials get into discussion of DSI, DPI, etc displays, which I don't have AFAIK. Is there a good tutorial on how to choose one of these paths and implement an example with it? And NOT using a BSP as that seems to have a lot already setup so I don't learn from it.Example starting point: I'd like to use say a ili9341 display with an F4 or F0 processor, and SPI mode. I don't need any fancy graphics for now, just the ability to draw pixels/lines and show bitmaps. Any text can also just be bitmaps for now. AFAIK, I don't need LTDC or DMA, right? There are ili9341 drivers in the BSP section of the CubeF4 package... are these usable as is without the specific board (for my own board)? Or are there separate non-board-specific drivers?Most importantly, is there a tutorial that explains this without using a pre-setup discovery or nucleo board?Thanks.
Hello,I had started my project in TouchGFX 4.9.3 but I want to continue it in TouchGFX 4.10.0So I upgraded the existing project.And without making changes I flashed the same code.But the board display does not work. It shows as per attached image.Why is it happening?Thanks,Ameya
I am trying to use DCMI on nucleo-144 ST32L4R5 for using OV5640 camera. I generated code for this using CubeMX. But the clock is not being generated on board for DCMI PXCLK. Do I need to anything else for DCMI clock generation. In Cube MX I choose following options for DCMI PCLKGPIO mode -- Alternate Function Push PullGPIO pull-up/pull-down -- No pull-up and no pull-downMaximum output speed -- LowI am new to CubeMx and stm32. How can I resolve my problem
Posted on May 17, 2018 at 16:02Goodday. Loading the default values in STM32f746 disco on STCubeMx, and performing following checks :1. Graphics ticked, STEmwin enabled, Guibuilder enabled2. Corrected the pixel resolutuon 480x2723. Execute Guibuilder from within StCube4. As per STcube manual (UM1718) check CRS, DMA2D, FMC,SDRAM,RCC,LTDC and DSI (all standard activated when loading the 746 Disco default .IOC profile.I am still not getting any display for some reason. I have tried to disable RTOS as well as any other peripherals in the default setup that isnot required with no luck. I suspect a clock setup or something that has not been ticked.Anyone perhaps have a working .IOC 32f746 Disco setup with working StemWin and Guibuilder for me to compare to?thanks a mil#stcubemx #mbedtls-stm32f746g-discovery #stemwin #stemwin-guibuilder
I had X-NUCLEO-NFC05A1(3911B reader), NUCLEO-L476RG(MCU), ST25DV16(tag). 3911B would read message from tag by RF and transmit to MCU by SPI interface. Now I hope the message is displayed at 3.5" LCD. How to select LCD integrated simply? such as SPI or I2C or GPIO interface? stm32 lcd driver software. At the same time I hope some buttons to control system. such as reboot, shutdown MCU and LCD....
..
IDE being used is SW4STM32
There seems to be a problem in the generated project with the OS_TimeMS GUI time not being updated from the main systick. Yes, can modify the generated HAL_TIM_PeriodElapsedCallback to call GRAPHICS_IncTick, but the display still doesn't come up properly. All I want to see is Hello World come up on the screen. Is there some other configuration needed?
Hi,It's written here that STM32H750 has a JPEG hardware encoder / decoder for faster GUI operations.Is there an example for how to use this?Basically I need to know what kind of JPEGs it supports (and how to encode to the right JPEG type), and how to decode them programmatically to present them on the GUI. Is the hardware accelerator applied automatically?Thanks!
I am implementing a settings menu for my particular project I decided to use a common button for rising and descending the values of the parameters but I cant catch which page which is containing the parameter desiring to configure ,swiped
Hello everyone, @Nawres GHARBI I am Trying to Generate code for STM32f746 discovery board, using CUBEMX with STemWin library without used of External SDRAM.Code is build and compiled with Keil MDK ver5 but with No Luck, get display blank or white.[ .ioc file are attached for reference, It works with SDRAM but not when edit for SRAM ] I'd be grateful for any help or advice.RegardsMD
Hi,how can i change color depth for QRCode widgets.My application template is STM32L4r9-Discovery which has a 24-bit screen ,but the QRCode widgets is 12-bit color depth.so i guess could i change QRCode widgets's color depth to 24-bit that i can use this widgets on my application template. Thanks!Best wishes
Hi, I'm using STM32f779NI Eval board, but i have changed the display in board with 24Bit RGB parallel Interface. Is it possible to flash the target directly using TouchGFX Designer.
Hi,If I want to perform a given action on button release and not on button press, what am I supposed to do ?Thanks.
I created a TouchGFX project for the STM32429I-EVAL1 board in CubeMX 5.0.1. I configured all the peripherals needed and verified that the LCD and SDRAM are working correctly. After generating the code in CubeMX I also generated the code in TouchGFX.It seems however that TouchGFX does not draw to the framebuffer address (SDRAM). The values do not change and remain static. Am I missing something to make this work? I included the .ioc file for creating the project.
Hi,How can i draw a line on my display touchscreen with my finger.I have used Graph widget before,but the coordinate point must be monotone increasing。Could i use the method for QrCode,and could you write an example for this。Thanks�?�?�?Best regards
Hello,i use IAR in time limited demo version IAR workbench 8.33.3.20228 (shared compnent 8.2.3.5849)I can't link the generated code from thouchGFX designer : i have the following errors :Error[Li060]: module "AbstractPainter.o(touchgfx_core.a)" contains C++ code built for use with the (E)C++98 library. This code is not link compatible with the new (C++14) library. Error[Li060]: module "Screen.o(touchgfx_core.a)" contains C++ code built for use with the (E)C++98 library. This code is not link compatible with the new (C++14) library. Have you any idea of how to solve this ?Thanksbest regards
Posted on March 07, 2017 at 02:38Hi All,I am trying to interface my STM32f4xx Discovery Board to ST7920 LCD using 8-Parallel Mode. Well I have tried a lot . But the LCD does not display any character. I have followed all the exact initialization procedure for the LCD as per the LCD datasheet. After initialization I just want to desplay hello world on the LCD. But itdoes not work at all . If any one can help. I am attaching the LCD datasheet. Here the code I have made.. . The code compiles and I am even able read the data from the DDRAM and CGRAM of the LCD. But I ma unable to display any data on LCD. #st7920 #st7920-lcd
Looking through the video mode examples that use SDRAM, I see that in BSP_SDRAM_MspInit() a DMA channel is initialised but as far as I can see none of the examples makes use of DMA.Is this a fundamental requirement to operate the SDRAM with the LTDC (an area where I'm having no luck at all!!) or is it just some code left lying about or used in another example?
I have a STM32F746G-Discovery board and the CubeMX and TouchGFX project setup in Atollic.Much of it is functioning. However when I went to edit in the TouchGFX Designer, I had compilation errors when generating code.It seems the Directory \STM32F746DiscoTemplate\STM32F746-DISCO\TouchGFX\touchgfx is missing.it is now in \Middlewares\STNow I have redundant copies on disk, is there a solution?Thanks
I have a few questions about DMA2D.I do not want to create separate topics for each question, so I will be glad if you answer at least one of them.1) I successfully get a picture in RGB565, but as soon as I choose YCbCr, it turns out a bad picture (in the photo). How can I fix this?2) Is it possible to use OV2640 YCbCr 4:2:2 to encode JPEG faster? I would like to get 30FPS 720p3) I’m worried that I had to swap the high and low byte RGB565. This is normal?DMA2D config:hdma2d.Instance = DMA2D; // Out hdma2d.Init.Mode = DMA2D_M2M_PFC; hdma2d.Init.ColorMode = DMA2D_OUTPUT_ARGB8888; hdma2d.Init.OutputOffset = 0; // In hdma2d.LayerCfg[1].InputOffset = 0; hdma2d.LayerCfg[1].InputColorMode = DMA2D_INPUT_RGB565; hdma2d.LayerCfg[1].AlphaMode = DMA2D_NO_MODIF_ALPHA; hdma2d.LayerCfg[1].InputAlpha = 0; hdma2d.LayerCfg[1].ChromaSubSampling = DMA2D_NO_CSS;
ST Community highlights – April to June 2026
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.