Oh, sry. 3v3 logik von einem PIC16@32mhz (intern), direkt verdrahtet mit
2cm leiterbahn - hardwaremäßig also alles im Lot.
Ich vermute eher, dass bei der Initialisierung was im argen ist. Hab
diese copy/paste aus einer arduinolib...
lcd_send(LCD_REG, 0xCB);
lcd_send(LCD_DATA, 0x39);
lcd_send(LCD_DATA, 0x2C);
lcd_send(LCD_DATA, 0x00);
lcd_send(LCD_DATA, 0x34);
lcd_send(LCD_DATA, 0x02);
lcd_send(LCD_REG, 0xCF);
lcd_send(LCD_DATA, 0x00);
lcd_send(LCD_DATA, 0XC1);
lcd_send(LCD_DATA, 0X30);
lcd_send(LCD_REG, 0xE8);
lcd_send(LCD_DATA, 0x85);
lcd_send(LCD_DATA, 0x00);
lcd_send(LCD_DATA, 0x78);
lcd_send(LCD_REG, 0xEA);
lcd_send(LCD_DATA, 0x00);
lcd_send(LCD_DATA, 0x00);
lcd_send(LCD_REG, 0xED);
lcd_send(LCD_DATA, 0x64);
lcd_send(LCD_DATA, 0x03);
lcd_send(LCD_DATA, 0X12);
lcd_send(LCD_DATA, 0X81);
lcd_send(LCD_REG, 0xF7);
lcd_send(LCD_DATA, 0x20);
lcd_send(LCD_REG, 0xC0); // Power control
lcd_send(LCD_DATA, 0x23); // VRH[5:0]
lcd_send(LCD_REG, 0xC1); // Power control
lcd_send(LCD_DATA, 0x10); // SAP[2:0];BT[3:0]
lcd_send(LCD_REG, 0xC5); // VCM control
lcd_send(LCD_DATA, 0x3e);
lcd_send(LCD_DATA, 0x28);
lcd_send(LCD_REG, 0xC7); // VCM control2
lcd_send(LCD_DATA, 0x86);
lcd_send(LCD_REG, 0x36); // Memory Access Control
lcd_send(LCD_DATA, 0x48); // C8
lcd_send(LCD_REG, 0x3A);
lcd_send(LCD_DATA, 0x55);
lcd_send(LCD_REG, 0xB1);
lcd_send(LCD_DATA, 0x00);
lcd_send(LCD_DATA, 0x18);
lcd_send(LCD_REG, 0xB6); // Display Function Control
lcd_send(LCD_DATA, 0x08);
lcd_send(LCD_DATA, 0x82);
lcd_send(LCD_DATA, 0x27);
lcd_send(LCD_REG, 0xF2); // 3Gamma Function Disable
lcd_send(LCD_DATA, 0x00);
lcd_send(LCD_REG, 0x26); // Gamma curve selected
lcd_send(LCD_DATA, 0x01);
lcd_send(LCD_REG, 0xE0); // Set Gamma
lcd_send(LCD_DATA, 0x0F);
lcd_send(LCD_DATA, 0x31);
lcd_send(LCD_DATA, 0x2B);
lcd_send(LCD_DATA, 0x0C);
lcd_send(LCD_DATA, 0x0E);
lcd_send(LCD_DATA, 0x08);
lcd_send(LCD_DATA, 0x4E);
lcd_send(LCD_DATA, 0xF1);
lcd_send(LCD_DATA, 0x37);
lcd_send(LCD_DATA, 0x07);
lcd_send(LCD_DATA, 0x10);
lcd_send(LCD_DATA, 0x03);
lcd_send(LCD_DATA, 0x0E);
lcd_send(LCD_DATA, 0x09);
lcd_send(LCD_DATA, 0x00);
lcd_send(LCD_REG, 0xE1); // Set Gamma
lcd_send(LCD_DATA, 0x00);
lcd_send(LCD_DATA, 0x0E);
lcd_send(LCD_DATA, 0x14);
lcd_send(LCD_DATA, 0x03);
lcd_send(LCD_DATA, 0x11);
lcd_send(LCD_DATA, 0x07);
lcd_send(LCD_DATA, 0x31);
lcd_send(LCD_DATA, 0xC1);
lcd_send(LCD_DATA, 0x48);
lcd_send(LCD_DATA, 0x08);
lcd_send(LCD_DATA, 0x0F);
lcd_send(LCD_DATA, 0x0C);
lcd_send(LCD_DATA, 0x31);
lcd_send(LCD_DATA, 0x36);
lcd_send(LCD_DATA, 0x0F);
lcd_send(LCD_REG, 0x11); // Sleep out
__delay_ms(120);
//msDelay(120);
lcd_send(LCD_REG, 0x2c);
lcd_fill(global_bg_color);
lcd_send(LCD_REG, 0x29); // Display on
lcd_send(LCD_REG, 0x2c);
zuvor vergessen. Sry! ;)