2024-12-16 11:21 PM
In my program code, I select an STM32F429I-DISC1 example code through the TouchGFX IDE, which runs successfully in STM32F429I-DISC1 dev board. The displays work fine without any issues. However, I need to configure the USB CDC. Since the USB_OTG_FS pins are connected to the display, I enabled USB_OTG_HS with the following settings:
1.PB14 set to USB_OTG_HS_DM
2.PB15 set to USB_OTG_HS_DP
3.Internal FS PHY set to "device only."
4.USB device class set to "communication device class" for HS IP.
The output is received, but the display screens appear half-filled and continuously blink. The USB pins are not configured for any other operation, so why is there a conflict between the USB and the display?
2024-12-17 03:17 AM
Maybe bandwidth exhaustion?
JW
2024-12-17 06:49 AM
Hello @balaji_s ,
I have created a a project using the STM32F429I-Dk rev E01.
It worked fine.
Then I went on the IOC and enabled the USB_OTG_HS like you did but I did not find where to set USB device class to "communication device class" for HS IP.
It also worked fine.
I am not sure how to help you since I am unable to replicate the issue.
Have you selected the right TouchGFX Board Setup (TBS)? There is 2 TBS for this board, you have to take the correct one based on your board revision :
Regards,
2024-12-17 10:19 PM
Hello @GaetanGodart ,
I’ve set up my project configuration, and everything is functioning well until I enable the USB CDC.
When I drag the cursor over the USB_OTG_HS, the status shows as "partly disabled," and there is a conflict with the LTDC, where the display type is set to RGB565 (16-bit). Here are the steps I followed for configuration:
After completing all the configuration steps and generating the code, I started receiving data from the USB. However, the display flickers or blinks intermittently, with only half of the display functioning correctly.
2024-12-19 05:59 AM
Hello @balaji_s ,
I have been able to setup USB_OTG_HS and USB_Device like you and compile and flash using STM32CubeIDE and STM32CubeProgrammer.
It display and run fine for me.
It seems that the only difference between your project and mine is that I do not send/receive anything through the USB that I enabled.
Could you try to not send or receive anything through the USB and tell me what happens?
Also, could you try to make the LTDC global interrupt higher priority than the newly added USB interrupt?
To make it higher priority, the number should be lower, so setting it to 4, 3 or 2 maybe.
Regards,
2024-12-20 11:29 PM
Hello @GaetanGodart ,
The issue of LCD flickering occurred when the clock configuration was set higher than 6 MHz. This problem has now been resolved. Thank you for your support sir.