AnsweredAssumed Answered

STM32F429 USB CDC & LTDC Issue

Question asked by Ian73 on Apr 1, 2015


My custom board has a STM32F429IIT on it and I am trying to use the LCD and USB FS modules.  I can get a picture on the LCD using an external SRAM attached to the FMC and also I can get the USB FS module to connect as a CDC Device but they wont work together properly.


They both work right up until I apply a layer to the LCD then the USB stops transmitting.  I can still receive data over the CDC and I can see the Tx data sitting in the buffer but it will not send it over the bus.


The same thing happens on either layer and it still happens regardless of the layer window size and position.  If I comment out the following line in the LTDC_SetConfig function then the CDC works but obviously I dont get the required output on the display -

  LTDC_LAYER(hltdc, LayerIdx)->CFBLR  = (((pLayerCfg->ImageWidth * tmp) << 16) | (((pLayerCfg->WindowX1 - pLayerCfg->WindowX0) * tmp)  + 3));


I am completely stumped as to how this can affect the usb tx, I have looked at interrupts and register corruption but have not been able to find anything.


I am using ST Cube v4.7 and firmware package v1.5 to generate the code.


This is my first project using STM32 processors so hopefully I am missing something obvious and any help with this matter will be gratefully received.