|
楼主 |
发表于 2010-6-9 14:14:10
|
显示全部楼层
搞定,硬件连接没有错误,软件设置错了两个地方:
1.是地址确实如aozima所说的,当配置成16bit时A16的地址如下:
///* LCD is connected to the FSMC_Bank1_NOR/SRAM1 and NE1 is used as ship select signal */
///* RS <==> A16 CMD:A16=0 DATA:A16=1 */
#define LCD_REG (*((volatile unsigned short *) 0x60000000)) /* RS = 0 */
#define LCD_RAM (*((volatile unsigned short *) 0x60020000)) /* RS = 1 */
2.是维信诺的OLED的S6E63D6配置寄存器错了一个,正确的如下:
Write_Command(0x23); //0x23为8080-16bit,0x24为8080-8bit
Write_Command(0x02); //开启系统总线,不使用RGB Interface
Write_Data(0x0000); //
Write_Command(0x03);
Write_Data(0x0130); //CLS=0:65K Color SS=1,AM=0,ID=11 此处开始设错了!
Write_Command(0x10);
Write_Data(0x0000); //D0=1:Standby Mode
Write_Command(0x0070); //R
Write_Data(0x2080); //(0x2580);
Write_Command(0x0071); //G
Write_Data(0x2200); //(0x2780);
Write_Command(0x0072); //B
Write_Data(0x2880); //(0x3380);
Write_Command(0x0073); //R1 2
Write_Data(0x2018);
Write_Command(0x0074); //R3 4
Write_Data(0x1f19); //Write_Data(0x1f11);
Write_Command(0x0075); //G1 2
Write_Data(0x2019);
Write_Command(0x0076); //G3 4
Write_Data(0x1a18);
Write_Command(0x0077); //B1 2
Write_Data(0x201a);
Write_Command(0x0078); //B3 4
Write_Data(0x201a); |
|