调试准备工作
1.屏幕开发手册;
2.逻辑分析仪(用来捕获信号,信号是否正确);
3.驱动板,驱动屏幕显示;
屏幕接口
根据手册的说明,可以知道屏幕的一些关键信息,比方说,这里的接口是3SPI+18位的RGB接口,这样我们可以配置我的驱动板接口,这里3SPI是指输入输出使用同一个通道;通过屏幕厂商那里得知使用的9位spi;
这里的屏幕是通过SPI进行驱动,需要通过SPI将命令和数据发送给屏幕进行配置(比如使用的接口,RGB前沿、后沿和位数等等);
SPI配置好以后,发送配置数据,代码如下,W_C是发送命令,W_D是发送数据:
W_C (0xFF);
W_D (0x77);
W_D (0x01);
W_D (0x00);
W_D (0x00);
W_D (0x13);
W_C (0xEF);
W_D (0x08);
W_C (0xFF);
W_D (0x77);
W_D (0x01);
W_D (0x00);
W_D (0x00);
W_D (0x10);
W_C (0xC0);
W_D (0xE5);
W_D (0x02);
W_C (0xC1);
W_D (0x0C);
W_D (0x0A);
W_C (0xC2);
W_D (0x07);
W_D (0x0F);
W_C (0xC3);
W_D (0x02);
W_C (0xCC);
W_D (0x10);
W_C (0xB0);
W_D (0x00);
W_D (0x08);
W_D (0x51);
W_D (0x0D);
W_D (0xCE);
W_D (0x06);
W_D (0x00);
W_D (0x08);
W_D (0x08);
W_D (0x1D);
W_D (0x02);
W_D (0xD0);
W_D (0x0F);
W_D (0x6F);
W_D (0x36);
W_D (0x3F);
W_C (0xB1);
W_D (0x00);
W_D (0x10);
W_D (0x4F);
W_D (0x0C);
W_D (0x11);
W_D (0x05);
W_D (0x00);
W_D (0x07);
W_D (0x07);
W_D (0x1F);
W_D (0x05);
W_D (0xD3);
W_D (0x11);
W_D (0x6E);
W_D (0x34);
W_D (0x3F);
W_C (0xFF);
W_D (0x77);
W_D (0x01);
W_D (0x00);
W_D (0x00);
W_D (0x11);
W_C (0xB0);
W_D (0x4D);
W_C (0xB1);
W_D (0x1C);
W_C (0xB2);
W_D (0x87);
W_C (0xB3);
W_D (0x80);
W_C (0xB5);
W_D (0x47);
W_C (0xB7);
W_D (0x85);
W_C (0xB8);
W_D (0x21);
W_C (0xB9);
W_D (0x10);
W_C (0xC1);
W_D (0x78);
W_C (0xC2);
W_D (0x78);
W_C (0xD0);
W_D (0x88);
Delay(100);
W_C (0xE0);
W_D (0x80);
W_D (0x00);
W_D (0x02);
W_C (0xE1);
W_D (0x04);
W_D (0xA0);
W_D (0x00);
W_D (0x00);
W_D (0x05);
W_D (0xA0);
W_D (0x00);
W_D (0x00);
W_D (0x00);
W_D (0x60);
W_D (0x60);
W_C (0xE2);
W_D (0x30);
W_D (0x30);
W_D (0x60);
W_D (0x60);
W_D (0x3C);
W_D (0xA0);
W_D (0x00);
W_D (0x00);
W_D (0x3D);
W_D (0xA0);
W_D (0x00);
W_D (0x00);
W_D (0x00);
W_C (0xE3);
W_D (0x00);
W_D (0x00);
W_D (0x33);
W_D (0x33);
W_C (0xE4);
W_D (0x44);
W_D (0x44);
W_C (0xE5);
W_D (0x06);
W_D (0x3E);
W_D (0xA0);
W_D (0xA0);
W_D (0x08);
W_D (0x40);
W_D (0xA0);
W_D (0xA0);
W_D (0x0A);
W_D (0x42);
W_D (0xA0);
W_D (0xA0);
W_D (0x0C);
W_D (0x44);
W_D (0xA0);
W_D (0xA0);
W_C (0xE6);
W_D (0x00);
W_D (0x00);
W_D (0x33);
W_D (0x33);
W_C (0xE7);
W_D (0x44);
W_D (0x44);
W_C (0xE8);
W_D (0x07);
W_D (0x3F);
W_D (0xA0);
W_D (0xA0);
W_D (0x09);
W_D (0x41);
W_D (0xA0);
W_D (0xA0);
W_D (0x0B);
W_D (0x43);
W_D (0xA0);
W_D (0xA0);
W_D (0x0D);
W_D (0x45);
W_D (0xA0);
W_D (0xA0);
W_C (0xEB);
W_D (0x00);
W_D (0x01);
W_D (0x4E);
W_D (0x4E);
W_D (0xEE);
W_D (0x44);
W_D (0x00);
W_C (0xED);
W_D (0xFF);
W_D (0xFF);
W_D (0x04);
W_D (0x56);
W_D (0x72);
W_D (0xFF);
W_D (0xFF);
W_D (0xFF);
W_D (0xFF);
W_D (0xFF);
W_D (0xFF);
W_D (0x27);
W_D (0x65);
W_D (0x40);
W_D (0xFF);
W_D (0xFF);
W_C (0xEF);
W_D (0x10);
W_D (0x0D);
W_D (0x04);
W_D (0x08);
W_D (0x3F);
W_D (0x1F);
W_C (0xFF);
W_D (0x77);
W_D (0x01);
W_D (0x00);
W_D (0x00);
W_D (0x13);
W_C (0xE8);
W_D (0x00);
W_D (0x0E);
W_C (0xFF);
W_D (0x77);
W_D (0x01);
W_D (0x00);
W_D (0x00);
W_D (0x00);
W_C (0x11);
Delay(120);
W_C (0xFF);
W_D (0x77);
W_D (0x01);
W_D (0x00);
W_D (0x00);
W_D (0x13);
W_C (0xE8);
W_D (0x00);
W_D (0x0C);
Delay(10 );
W_C (0xE8);
W_D (0x00);
W_D (0x00);
W_C (0xFF);
W_D (0x77);
W_D (0x01);
W_D (0x00);
W_D (0x00);
W_D (0x00);
W_C (0x3A);
W_D (0x55);
W_C (0x36);
W_D (0x00);
W_C (0x35);
W_D (0x00);
W_C (0x29);