cancel
Showing results for 
Search instead for 
Did you mean: 

touchgfx textarea is wrong

jschoi
Associate II

디스플레이를 터치하면 글자가 깨지거나 이상한 글자가 표시됩니다.
그리고 screen1에 여러 글자를 입력했는데 놔다 켜면 글자가 이상하게 나옵니다. 도움을 주세요.

 

화면 캡처 2024-07-05 145554.png

 

이 사진은 touchgfx로 디자인된 오리지널 사진입니다.

보드에 이것을 업로드하면 위에처럼 이미지가 사라지거나 이상한 텍스트가 포함되는 경우가 있습니다.

 

KakaoTalk_20240705_145528083_01.jpg

KakaoTalk_20240705_150236158.jpg

11 REPLIES 11
MM..1
Chief II

Font characters is added in code automatic only for static texts. When you manage wildcards  in code, you need add chars manualy in designer font manager.

I would appreciate it if you could explain it in more detail.
I'm not good at it yet so I don't understand what you explained.

The text was set as follows.

화면 캡처 2024-07-05 151857.png

 

The numbers are set as follows.

화면 캡처 2024-07-05 151914.png

Hello @jschoi ,

Could you please share more information on the MCU you are using, the framebuffer strategy, and the place where you store your text and font (internal flash or external flash)?

Are you using the same Typographies for both the numbers and "Feedrate"? 
Could you please set the Fallback Characters to "?" to ensure the issue is not from the characters being unrecognized? 

looking forward to hearing from you

Mohammad MORADI
ST Software Developer | TouchGFX

hello,

Thank you for your reply

stm mcu: stm32f746

Text and fonts are stored in external flash memory.

4370818a-a6e3-4763-a9d9-a094a06be7ed.png

 

Numbers and feedrate do not use the same Typographies.

I captured the settings in the photo above. Please take a look.

And I entered "?", but "?" does not appear on the display. The same symptoms as the screen captured above still appear.

 

Thanks for the information.

Let's do a simple test. Please create a button that by clicking on it, text areas are invalidated by using textArea.invalidate().

And also try invalidating the whole screen by just calling invalidate();

If the texts appeared correctly after the button has been pressed, it indicates the problem is most likely with the GUI; otherwise, you need to ensure that your external flash works correctly.

Mohammad MORADI
ST Software Developer | TouchGFX

Start with change

MM1_0-1720175907948.png

remove upper and down change to 0-9

plus check if external flash is reflashed.

 

Thank you so much for your reply

I tried the solution you gave, but

It wasn't resolved

In the photo below, I created a button and tried text.invalidate(), but the symptom is the same.

화면 캡처 2024-07-08 094013.png

Also, I checked the external flash. Can you check if I checked it correctly?

화면 캡처 2024-07-08 094313.png

화면 캡처 2024-07-08 094348.png


I checked the external flash address where the text is stored and read the external flash memory, and the value was entered normally. Is this correct?

Since TextFlashSection and FontFlashSection memories are allocated from external to internal flash memory, they appear to work correctly.


If the external flash memory is faulty, shouldn't the image file be faulty as well? I don't understand why only the text image is displayed incorrectly. What is the cause?

I changed it to 0-9

The symptoms are the same TT

I erased the external memory and reloaded it, but the symptoms are the same. What is the cause?

please

The external flash data seems alright.
Unfortunately, I cannot detect where the issue stems from. However, I suggest starting an extremely simple project, like one just displaying a fixed text without any other elements, and slowly building upon that to make it more sophisticated. Especially, by adding wildcards and texts that are changed at runtime. 

This way, it would be way easier to check the framebuffer to find out where the issue pops up.

Mohammad MORADI
ST Software Developer | TouchGFX