2020-12-01 11:41 AM
TouchGFX 4.15.0 and ST-LINK 4.6 and CubeProgram 2.6.0 installed to our system Windows 10 64Bit. Board Development STM32F746G Discovery.
I'm tring to run touchgfx samples on the STM32F746G Discovery, every thing goes well and it seems code download completed but display shows nothing but noise.
i found one error in the report:
Producing additional output formats...
target.hex - Combined internal+external hex
intflash.elf - Internal flash, elf debug
intflash.hex - Internal flash, hex
extflash.bin - External flash, binary
Done
Flash
make -f ../gcc/Makefile flash -j8
Reading TouchGFX/application.config
Linking TouchGFX/build/bin/target.elf
Producing additional output formats...
target.hex - Combined internal+external hex
intflash.elf - Internal flash, elf debug
intflash.hex - Internal flash, hex
extflash.bin - External flash, binary
-------------------------------------------------------------------
STM32CubeProgrammer v2.6.0
-------------------------------------------------------------------
Error: External loader C:\Program cannot be loaded.
Error: External loader Files\STMicroelectronics\STM32Cube\STM32CubeProgrammer\bin\ExternalLoader\N25Q128A_STM32F746G-DISCO.stldr cannot be loaded.
ST-LINK SN : 066FFF535348726587113234
ST-LINK FW : V2J37M26
Board : 32F746GDISCOVERY
Voltage : 3.21V
SWD freq : 4000 KHz
Connect mode: Normal
Reset mode : Software reset Device ID : 0x449
Revision ID : Rev Z
Device name : STM32F74x/STM32F75x
Flash size : 1 MBytes
Device type : MCU
Device CPU : Cortex-M7
Memory Programming ...
Opening and parsing file: target.hex
File : target.hex
Size : 675352 Bytes
Address : 0x08000000
Erasing memory corresponding to segment 0:
Erasing internal memory sector 0
Erasing memory corresponding to segment 1:
Erasing internal memory sectors [0 4]
Erasing memory corresponding to segment 2:
Download in Progress:
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±± 0%
ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ 47%ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ 100%
File download complete
Time elapsed during download operation: 00:00:07.627
Hard reset is performed
Done
Done
Solved! Go to Solution.
2020-12-02 03:29 AM
Hi,
This is due to the external loader file required to program the external FLASH that contains the input bitmaps.
Try this :
For your information the path to both CubeProgrammer and external loaders are hardcoded for the Designer and I guess something is wrong in your case, you can edit them in the "<your project>/gcc/Makefile" file around line 113-114, seems like $(PROGRAMFILES) variable contains spaces.
Best regards,
Nicolas
2020-12-02 03:29 AM
Hi,
This is due to the external loader file required to program the external FLASH that contains the input bitmaps.
Try this :
For your information the path to both CubeProgrammer and external loaders are hardcoded for the Designer and I guess something is wrong in your case, you can edit them in the "<your project>/gcc/Makefile" file around line 113-114, seems like $(PROGRAMFILES) variable contains spaces.
Best regards,
Nicolas
2020-12-07 10:17 PM
Hello,
This is a CubeProgrammer bug that was reported and is going to be fixed on next CubeProgrammer version 2.7
If using the standalone CubeProgrammer as Nicolas SANTINI explained is not a long-term solution for you, I recommend you to revert to CubeProgrammer 2.5.0 and everything should be fine :)
/Alexandre
2020-12-09 05:58 AM
Hello,
Did you choose External Loader?
Right click on project -> Debug As/Debug configurations...
In "Debugger" check "External Loader". Then "Scan" and select your board.
2020-12-11 04:28 AM
Hi @AReza.1 ,
Were you able to solve your issue with the different replies ? If yes, could you select Alexandre Renoux's or Nicolas' answer as "Best Answer"
/Romain
2020-12-12 11:45 PM
Hi @N. SANTINI
I could load my code by using programmer and external loading option.
but the question is when touchGFX generally puts images on the external flash and touchGFX has "Run Target" option which cannot load external flash, why there is a "Run target option ? is it depends on images size or I have to select internal flash for images to can load project from touchGFX directly?
2020-12-12 11:58 PM
Hi @Sasha_
thanks, the problem has solved,
@AReza.1
2020-12-13 12:10 AM
Hi all
I also have another question and I could not find it anywhere,
to start a project with enable touchgfx on discovery board(stm32f746) is there any specific way to create a project and chose board(STM32F746xxxxx) with enable touchGFX in it and start programing?
I just found this solution on youtube (https://www.youtube.com/watch?v=12KXreXaLp0) it works but the solution seems weird.
I'll appreciate if you can lead me to a right solution or links.
thank you all.
2020-12-13 05:25 PM
Hi AReza.1,
This video is old and does not reflect the current TouchGFX version. So it's not the best idea to follow it.
Why do you want to create a project with F746-DISCO board since the Application Template is already available for you in the Designer ?
If it is to train yourself on how to create your own Application Template of a board from scratch then it can be a good idea. Of course it is possible to create the project in CubeMX from scratch and make a working project. Use stand-alone CubeMX, select the correct MCU and set all the correct parameters by following what was made in the Application Template. In CubeMX you can add TouchGFX Generator (see link). Then you can do some UI in Designer and Run Target.
/Alexandre
2020-12-13 05:38 PM
Hi AReza.1,
Run Target should load the external Flash if you are using the Application Templates available in TouchGFX Designer.
Run Target allows you to download your code into your board directly in the Designer. It's a very convenient option.
If the assets are not loaded in your external memory, this means that you are making a project from scratch yourself and that you need to modify the loader file to specify some external memory. Please have a look at the F746-DISCO Application Template loader file in <your project>/gcc/STM32F746NGHx_FLASH.ld. You will see that a QUADSPI section is indicated.
If you have already done this then it means that you haven't created the makefile necessary for Designer to Run Target. As a matter of fact, Run Target follows a makefile to build and download into the board. Again please refer to an Application Template like F746-DISCO. The Makefile is located in <your project>/gcc/Makefile
/Alexandre