2013-11-12 08:12 AM
Good morning,
i have a problem with display orientation, i have changed the ili9341 register and the image rotate correctly but, i have a white portion of the display of 80 column in the side of the display.the LTDC registers are /* Configure horizontal synchronization width */ LTDC_InitStruct.LTDC_HorizontalSync = 9; /* Configure vertical synchronization height */ LTDC_InitStruct.LTDC_VerticalSync = 1; /* Configure accumulated horizontal back porch */ LTDC_InitStruct.LTDC_AccumulatedHBP = 29; /* Configure accumulated vertical back porch */ LTDC_InitStruct.LTDC_AccumulatedVBP = 3; /* Configure accumulated active width */ LTDC_InitStruct.LTDC_AccumulatedActiveW = 349; /* Configure accumulated active height */ LTDC_InitStruct.LTDC_AccumulatedActiveH = 243; /* Configure total width */ LTDC_InitStruct.LTDC_TotalWidth = 359; /* Configure total height */ LTDC_InitStruct.LTDC_TotalHeigh = 247;any solution?Thank you. #stm32 #lcd #discovery #tft #tft-ltdc-display-landscape2013-11-22 02:25 AM
Been trying to do the same, but the same results.
Steps:1. Change dimensions in header2. Change column/row address order in MAC register3. Change the LDTC as above4. Change the LCD Layer tooSeem to be getting the same unwritable 80 pixel column on the right.I guess it is all to do with the correct combination of above settings.It would also appear that there is a bit too much reliance in the LCD dimension definitions in the code.2014-05-22 05:59 AM
My guess is, that the rotation paramater for the ili9341 only works if it is controlled purely over SPI, or parallel.
The demonstration code provided for the discovery board F429 sets it up using SPI, but the display data is sent to it using the classical TFT-LCD driving scheme: Vsync, Hsync and whatnot.I'd try sending the display buffer to it over SPI as well.Cheers2015-03-25 08:22 AM
Hello!
I have same problem. On the right side is white area.In ILI9341:I changed register 0x36 value (Row/Column exchange) and start/end address for Column and page (register 0x2A and 0x2B).In STM32F429 LTDC:#define
LCD_HSYNC 0x0A // 10#define
LCD_HBP 0x14 // 20#define
LCD_HAREA 0x140 // 320#define
LCD_HFP 0x0A // 10#define
LCD_VSYNC 0x02 // 2#define
LCD_VBP 0x02 // 2#define
LCD_VAREA 0xF0 // 240#define
LCD_VFP 0x04 // 4#define
HSW (LCD_HSYNC - 1)#define
AHBP (LCD_HSYNC + LCD_HBP - 1)#define
AAW (LCD_HSYNC + LCD_HBP + LCD_HAREA - 1)#define
TOTALW (LCD_HSYNC + LCD_HBP + LCD_HAREA + LCD_HFP - 1)#define
VSH (LCD_VSYNC - 1)#define
AVBP (LCD_VSYNC + LCD_VBP - 1)#define
AAH (LCD_VSYNC + LCD_VBP + LCD_VAREA - 1)#define
TOTALH (LCD_VSYNC + LCD_VBP + LCD_VAREA + LCD_VFP - 1)// LCD Synchronous timing
LTDC->SSCR = HSW << 16;//Horizontal Synchronization Width
LTDC->SSCR |= VSH;// Vertical Synchronization Height
LTDC->BPCR = AHBP << 16;// Accumulated Horizontal back porch
LTDC->BPCR |= AVBP;// Accumulated Vertical back porch
LTDC->AWCR = AAW << 16;// Accumulated Active Width
LTDC->AWCR |= AAH;// Accumulated Active Height
LTDC->TWCR = TOTALW << 16;// Total Width
LTDC->TWCR |= TOTALH;// Total Height
And the result is:But if I changed:#define
LCD_VAREA
0xF0
+80
// 240+80 = 320
I got:Now, I am confused. What do you think?Thank for any reply.2015-04-10 03:42 PM
Hi there!
I have exactly the same problem. If you managed the solution please share. During this time I also going to resolve this issue2016-06-21 08:50 AM
Any definitive solution to this problem? I've seen a lot of comments here and there, but no real solution. I too have been able to rotate the display with text shown correctly, but I am missing the 80 pixels off to the right.
2018-08-23 02:56 AM
Hi
is the solution to the problem still not found because would be really happy if I could use the whole scare after it's rotated