Quantcast
Channel: Raspberry Pi Forums
Viewing all articles
Browse latest Browse all 3843

Interfacing (DSI, CSI, I2C, etc.) • Re: Interfacing "A030VAN03.0" RGB display through DPI

$
0
0
Hi,

Thank you for your reply. As I mentioned I am using a external MCU for doing the SPI initialization. I am not that experienced with doing SPI through Linux, so I just send the commands with a MCU instead to get the display initialized, this should work in theory, right? I also want to use the display with RGB888 if possible.

You are right, I thought it only needed the standby mode turned off, but seems there is 100+ commands just for initialization... I have now tried with the complete initialization sequence also, but still no response. This is the code I am using using the initialization sequence in chapter 3. I have changed from YUV to RGB, and kept the default timings. (I am now using an Arduino UNO with a level converter). If I can get it to work this way I can move on to implementing it on the Pi later.

Code:

#include <SPI.h>#define SS_PIN 10    // Slave Select Pin#define MOSI_PIN 11  // Master Out Slave In Pin#define SCK_PIN 13   // Serial Clock Pinvoid setup() {  pinMode(SS_PIN, OUTPUT);  SPI.begin();  digitalWrite(SS_PIN, LOW);  SPI.transfer16(0xFDFF);  SPI.transfer16(0x8156);  SPI.transfer16(0x8201);  SPI.transfer16(0xFD00);  SPI.transfer16(0x1800);  SPI.transfer16(0x1915);  SPI.transfer16(0x1A28);  SPI.transfer16(0xFDD8);  SPI.transfer16(0x0121);  SPI.transfer16(0x0221);  SPI.transfer16(0xFDE1);  SPI.transfer16(0x015F);  SPI.transfer16(0x020D);  SPI.transfer16(0x0321);  SPI.transfer16(0x042F);  SPI.transfer16(0x0510);  SPI.transfer16(0x0611);  SPI.transfer16(0x0721);  SPI.transfer16(0x0808);  SPI.transfer16(0x0908);  SPI.transfer16(0x0A08);  SPI.transfer16(0x0B0B);  SPI.transfer16(0x0C13);  SPI.transfer16(0x0D10);  SPI.transfer16(0x0E0F);  SPI.transfer16(0x0F14);  SPI.transfer16(0x100B);  SPI.transfer16(0x1102);  SPI.transfer16(0x1207);  SPI.transfer16(0xFDE2);  SPI.transfer16(0x0179);  SPI.transfer16(0x020D);  SPI.transfer16(0x0321);  SPI.transfer16(0x042F);  SPI.transfer16(0x0510);  SPI.transfer16(0x0611);  SPI.transfer16(0x0721);  SPI.transfer16(0x0808);  SPI.transfer16(0x0908);  SPI.transfer16(0x0A08);  SPI.transfer16(0x0B0B);  SPI.transfer16(0x0C13);  SPI.transfer16(0x0D10);  SPI.transfer16(0x0E0F);  SPI.transfer16(0x0F14);  SPI.transfer16(0x100B);  SPI.transfer16(0x1102);  SPI.transfer16(0x1207);  SPI.transfer16(0xFDE3);  SPI.transfer16(0x010F);  SPI.transfer16(0x0202);  SPI.transfer16(0x0308);  SPI.transfer16(0x040E);  SPI.transfer16(0x050C);  SPI.transfer16(0x060D);  SPI.transfer16(0x0714);  SPI.transfer16(0x0806);  SPI.transfer16(0x0905);  SPI.transfer16(0x0A0B);  SPI.transfer16(0x0B0C);  SPI.transfer16(0x0C1A);  SPI.transfer16(0x0D10);  SPI.transfer16(0x0E0E);  SPI.transfer16(0x0F1B);  SPI.transfer16(0x100E);  SPI.transfer16(0x1102);  SPI.transfer16(0x1207);  SPI.transfer16(0xFDE4);  SPI.transfer16(0x0123);  SPI.transfer16(0x0202);  SPI.transfer16(0x0308);  SPI.transfer16(0x040E);  SPI.transfer16(0x050C);  SPI.transfer16(0x060D);  SPI.transfer16(0x0714);  SPI.transfer16(0x0806);  SPI.transfer16(0x0905);  SPI.transfer16(0x0A0B);  SPI.transfer16(0x0B0C);  SPI.transfer16(0x0C1A);  SPI.transfer16(0x0D10);  SPI.transfer16(0x0E0E);  SPI.transfer16(0x0F1B);  SPI.transfer16(0x100E);  SPI.transfer16(0x1103);  SPI.transfer16(0x1207);  SPI.transfer16(0xFDE5);  SPI.transfer16(0x0119);  SPI.transfer16(0x0202);  SPI.transfer16(0x0309);  SPI.transfer16(0x0411);  SPI.transfer16(0x050C);  SPI.transfer16(0x060E);  SPI.transfer16(0x0711);  SPI.transfer16(0x0806);  SPI.transfer16(0x0906);  SPI.transfer16(0x0A0A);  SPI.transfer16(0x0B0C);  SPI.transfer16(0x0C25);  SPI.transfer16(0x0D14);  SPI.transfer16(0x0E19);  SPI.transfer16(0x0F04);  SPI.transfer16(0x1003);  SPI.transfer16(0x1102);  SPI.transfer16(0x1207);  SPI.transfer16(0xFDE6);  SPI.transfer16(0x012F);  SPI.transfer16(0x0202);  SPI.transfer16(0x0309);  SPI.transfer16(0x0411);  SPI.transfer16(0x050C);  SPI.transfer16(0x060E);  SPI.transfer16(0x0711);  SPI.transfer16(0x0806);  SPI.transfer16(0x0906);  SPI.transfer16(0x0A0A);  SPI.transfer16(0x0B0C);  SPI.transfer16(0x0C25);  SPI.transfer16(0x0D14);  SPI.transfer16(0x0E19);  SPI.transfer16(0x0F04);  SPI.transfer16(0x1003);  SPI.transfer16(0x1102);  SPI.transfer16(0x1207);  SPI.transfer16(0xFDC4);  SPI.transfer16(0x8205);  SPI.transfer16(0xFDC1);  SPI.transfer16(0x9143);  SPI.transfer16(0xFDC0);  SPI.transfer16(0xA101);  SPI.transfer16(0xA21C);  SPI.transfer16(0xA30A);  SPI.transfer16(0xA434);  SPI.transfer16(0xA500);  SPI.transfer16(0xA609);  SPI.transfer16(0xA734);  SPI.transfer16(0xA800);  SPI.transfer16(0xA909);  SPI.transfer16(0xAA34);  SPI.transfer16(0xFDCE);  SPI.transfer16(0x8114);  SPI.transfer16(0x823E);  SPI.transfer16(0x833E);  SPI.transfer16(0x9107);  SPI.transfer16(0x9331);  SPI.transfer16(0x9402);  SPI.transfer16(0x9507);  SPI.transfer16(0x9731);  SPI.transfer16(0x9802);  SPI.transfer16(0x9907);  SPI.transfer16(0x9B31);  SPI.transfer16(0x9C02);  SPI.transfer16(0xFD00);  SPI.transfer16(0x0101);  digitalWrite(SS_PIN, HIGH);}void loop() {}


I cannot find any TCON part number (I if understand correctly this is the same as the driver IC?). Additionally, I have also tried to change the clock frequency to both 32MHz and 19.2MHz but still cannot get any image or response from the display. Should I in theory get any form of response on the display as long as the init-sequence is correct and the timings in config.txt are equal to the specified timings in the datasheet?

Appreciate the help. :)

Statistics: Posted by krstau — Sat Mar 16, 2024 1:02 am



Viewing all articles
Browse latest Browse all 3843

Trending Articles