[mw_shl_code=c,true]用的是裸屏焊接在转接板上的,没加滤波电容,电源不稳,我感觉问题应该不是这个,因为ID读取正确,但是我通过仿真发现写寄存器有问题[/mw_shl_code]
[mw_shl_code=c,true]
写寄存器[/mw_shl_code]
[mw_shl_code=c,true]void LCD_WR_DATA(u16 data)
{
LCD_RS_SET;
LCD_CS_CLR;
DATAOUT((0xff00&data)>>8);
LCD_WR_CLR;
LCD_WR_SET;
DATAOUT(data&0x00ff);
LCD_WR_CLR;
LCD_WR_SET;
LCD_CS_SET;
}
[mw_shl_code=c,true] LCD_WriteReg(0x0702, 0x3008);// Set internal timing, don??t change this value
LCD_WriteReg(0x0705, 0x0036);// Set internal timing, don??t change this value
LCD_WriteReg(0x070B, 0x1213);// Set internal timing, don??t change this value
LCD_WriteReg(0x0001, 0x0100);// set SS and SM bit
LCD_WriteReg(0x0002, 0x0100);// set 1 line inversion
LCD_WriteReg(0x0003, 0x1030);// set GRAM write direction and BGR=1.
LCD_WriteReg(0x0008, 0x0202);// set the back porch and front porch
LCD_WriteReg(0x0009, 0x0000);// set non-display area refresh cycle ISC[3:0]
LCD_WriteReg(0x000C, 0x0000);// RGB interface setting
LCD_WriteReg(0x000F, 0x0000);// RGB interface polarity
//Power On sequence
LCD_WriteReg(0x0100, 0x0000);// SAP, BT[3:0], AP, DSTB, SLP, STB
LCD_WriteReg(0x0102, 0x0000);// VREG1OUT voltage
LCD_WriteReg(0x0103, 0x0000); // VDV[4:0] for VCOM amplitude
delay_ms(200); // Dis-charge capacitor power voltage
[mw_shl_code=c,true] LCD_WriteReg(0x0100, 0x1190); // SAP, BT[3:0], AP, DSTB, SLP, STB[/mw_shl_code]
[mw_shl_code=c,true]从这里开始就出现问题了,仿真进去就是写寄存器问题[/mw_shl_code]
LCD_WriteReg(0x0101, 0x0227); // DC1[2:0], DC0[2:0], VC[2:0]
delay_ms(50); // Delay 50ms
LCD_WriteReg(0x0102, 0x01BD); // VREG1OUT voltage
delay_ms(50); // Delay 50ms
LCD_WriteReg(0x0103, 0x2D00); // VDV[4:0] for VCOM amplitude
LCD_WriteReg(0x0281, 0x000E); // VCM[5:0] for VCOMH
delay_ms(50);
LCD_WriteReg(0x0200, 0x0000); // GRAM horizontal Address
LCD_WriteReg(0x0201, 0x0000); // GRAM Vertical Address
// ----------- Adjust the Gamma Curve ----------//
LCD_WriteReg(0x0300, 0x0000);
LCD_WriteReg(0x0301, 0x0707);
LCD_WriteReg(0x0302, 0x0606);
LCD_WriteReg(0x0305, 0x0000);
LCD_WriteReg(0x0306, 0x0D00);
LCD_WriteReg(0x0307, 0x0706);
LCD_WriteReg(0x0308, 0x0005);
LCD_WriteReg(0x0309, 0x0007);
LCD_WriteReg(0x030C, 0x0000);
LCD_WriteReg(0x030D, 0x000A);
//------------------ Set GRAM area ---------------//
LCD_WriteReg(0x0210, 0x0000);// Horizontal GRAM Start Address
LCD_WriteReg(0x0211, 0x00EF);// Horizontal GRAM End Address
LCD_WriteReg(0x0212, 0x0000);// Vertical GRAM Start Address
LCD_WriteReg(0x0213, 0x01AF);// Vertical GRAM Start Address
LCD_WriteReg(0x0400, 0x3100);// Gate Scan Line 400 lines
LCD_WriteReg(0x0401, 0x0001);// NDL,VLE, REV
LCD_WriteReg(0x0404, 0x0000);// set scrolling line
//-------------- Partial Display Control ---------//
LCD_WriteReg(0x0500, 0x0000);//Partial Image 1 Display Position
LCD_WriteReg(0x0501, 0x0000);//Partial Image 1 RAM Start/End Address
LCD_WriteReg(0x0502, 0x0000);//Partial Image 1 RAM Start/End Address
LCD_WriteReg(0x0503, 0x0000);//Partial Image 2 Display Position
LCD_WriteReg(0x0504, 0x0000);//Partial Image 2 RAM Start/End Address
LCD_WriteReg(0x0505, 0x0000);//Partial Image 2 RAM Start/End Address
//-------------- Panel Control -------------------//
LCD_WriteReg(0x0010, 0x0010);//DIVI[1:0];RTNI[4:0]
LCD_WriteReg(0x0011, 0x0600);//WI[2:0];SDTI[2:0]
LCD_WriteReg(0x0020, 0x0002);//DIVE[1:0];RTNE[5:0]
LCD_WriteReg(0x0007, 0x0173);// 262K color and display ON[/mw_shl_code]
[/mw_shl_code]