LCD - Spalten verschoben - lpc3250

Gast #2866838
Lesenswert?

Hallo allerseits,

nachdem mir sowohl Forum als auch Seite hier schon unzählige Male 
geholfen haben, muss ich nun doch meinen ersten Beitrag hier erstellen.
Ich versuche mit einem LPC3250 ein 320x240 Display anzusteuern
(https://www.glynshop.com/erp/owweb/Daten/DSS/EDT/Products/Specifications/Active%20Displays/ET0350G0DH6.pdf)
Das klappt auch alles soweit, einziges Problem ist dass die Ecken nicht 
stimmen. Der erste Pixel links oben fängt 4 Pixel weiter rechts an, das 
gesamte Bild ist also um 4 Spalten verschoben.

Das LCD ist folgendermaßen initialisiert:
1
  LCD_CFG = 0x31;    // Enable HCLK. Divider = 17 von 104MHz? = 6,1MHz DotClock
2

3

4
  LCD_CTRL = 0x26;  //TFT 8-Bit Palette
5

6
  
7
  LCD_POL =  (0x01 << 26)|(319 << 16)|(0x01 << 14)|(0x01 << 13)|(0x01 << 12)|(0x01 << 11);  
8
  //Bypass pixel clock divider | 320 clocks per line | invert: panel clock, h clock, v clock
9
  LCD_TIMH =  (67<< 24)|(19 << 16)|(87<<8 )|(19 << 2);    
10
  //Back porch = 68 clk | Front porch = 20 clk | Pulse width = 128 clk | Size = (19 + 1)*16 = 320 px
11
  LCD_TIMV = (18 << 24)|(4 << 16)|(3 << 10)|(239);      
12
  //Back porch = 18 px | Front porch = 4 px | Pulse with = 3 px | Size = 240 px
13
  LCD_UPBASE = GetFrameBufferDisplay() & 0xfffffff8;
14
  LCD_LPBASE = GetFrameBufferDisplay() & 0xfffffff8;

In folgendem Thread behandelte die erste Antwort direkt mein Problem, 
war dort allerdings nicht weiter von Belang:
Beitrag "LCD Timings - SVGA - LPC2478"
Von daher nehme ich an dies ist vielleicht ein häufig gemachter Fehler?

Ich hab das Programm nicht selber geschrieben, sondern versuche nur 
Fehlerbehebung, also habt Erbarmen mit einem Anfänger ;)

MfG

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren