Hi Konfusius,
Solche Displays kannst Du nicht direkt an den GPIO-Pins betreiben! Die sind dafür zu träge. Die einzigen GPIO-Displays sind welche, die den SPI-Bus benutzen, aber das ist bei Deinen beiden Exemplaren nicht der Fall. Die haben wegen der beschränkten Geschwindidgkeit des SPI-Busses meist auch nur geringe Auflösungen bis maximal(?) 480x272.
Grundsätzlich ist die Pixelclock die Größe, die die maximale Auflösung bei einer bestimmten Bildwiederholrate (fps) bestimmt:
pixelclock = Bruttoauflösung horizontal * Bruttoauflösung vertikal * Bildwiederholrate
Bruttoauflösung = sichtbare Auflösung + Blanking
Blanking = front porch (vordere Austastlücke)+ sync width (Synchronisationsimpuls) + back porch (hintere Austastlücke)
Ein Rechner für die VESA-Standard-Videotimings befindet sich unter
https://tomverbeure.github.io/video_timings_calculator
Dies ist schon mal ein guter Anhaltspunkt (Daumenwert) für die Länge des Blankings, auch wenn sich nicht alle Displays danach richten...
für 800x480@60Hz ergeben sich lt. obigen Rechner folgende Standardwerte (CVT):
horizontales Blanking (H Blank) = 192 (pixel)
H Front Porch = 24 (pixel)
H Sync Width = 72 (pixel)
H Back Porch = 96 (pixel)
V Blank = 20 (lines)
V Front Porch = 3 (lines)
V Sync Width = 7 (lines)
V Back Porch =10 (lines)
Pixelclock = (800 + 24 +72 + 96) * (480 + 3 + 7 + 10) * 60 = 29.760.000
EDIT:
Dies resultiert in folgenden Videotiming-Zeilen in der /boot/config.txt:
entweder hdmi_cvt oder hdmi_timings, nicht beides gleichzeitig!
# hdmi_cvt (standard CVT):
hdmi_cvt=800 480 60 6 0 0 0
# set up the size to 800x480 (standard CVT):
hdmi_timings=800 0 24 72 96 480 0 3 7 10 0 0 0 60 0 29760000 6
Quelle:
hdmi_cvt: https://www.raspberrypi.com/do…nfig_txt.html#custom-mode
hdmi_timings: https://www.raspberrypi.com/do…fig_txt.html#hdmi_timings