初级会员

- 积分
- 71
- 金钱
- 71
- 注册时间
- 2014-11-26
- 在线时间
- 4 小时
|
因朋友需要驱动一个2.8寸的TFT,驱动IC为ST7781R(ST7783R) .现在的原子光盘里面没提供这个芯片的驱动,经实验测试后,在原子的LCD.c的基础上增加了这个芯片的驱动.
if(lcddev.id==0x7783)
{
LCD_WriteReg(0x00ff,0x0001);
LCD_WriteReg(0x00f3,0x0008);
LCD_WriteReg(0x0001,0x0100);
LCD_WriteReg(0x0002,0x0700);
LCD_WriteReg(0x0003,0x1030);
LCD_WriteReg(0x0008,0x0807);
LCD_WriteReg(0x0009,0x0000);
LCD_WriteReg(0x000A,0x0000);
LCD_WriteReg(0x0010,0x0790);
LCD_WriteReg(0x0011,0x0005);
LCD_WriteReg(0x0012,0x0000);
LCD_WriteReg(0x0013,0x0000);
delay_ms(100);
LCD_WriteReg(0x0010,0x1490);
delay_ms(50);
LCD_WriteReg(0x0011,0x0227);
delay_ms(50);
LCD_WriteReg(0x0012,0x0089);
LCD_WriteReg(0x0013,0x1900);
LCD_WriteReg(0x0029,0x0021);
delay_ms(50);
LCD_WriteReg(0x0030,0x0000);
LCD_WriteReg(0x0031,0x0006);
LCD_WriteReg(0x0032,0x0100);
LCD_WriteReg(0x0035,0x0001);
LCD_WriteReg(0x0036,0x0000);
LCD_WriteReg(0x0037,0x0000);
LCD_WriteReg(0x0038,0x0406);
LCD_WriteReg(0x0039,0x0202);
LCD_WriteReg(0x003c,0x0001);
LCD_WriteReg(0x003d,0x0000);
LCD_WriteReg(0x0050,0x0000); // Horizontal Address Start Position
LCD_WriteReg(0x0051,0x00ef); // Horizontal Address End Position
LCD_WriteReg(0x0052,0x0000); // Vertical Address Start Position
LCD_WriteReg(0x0053,0x013f); // Vertical Address End Position
LCD_WriteReg(0x0060,0xa700); //Gate scan control
LCD_WriteReg(0x0061,0x0001); //Non-display Area setting
LCD_WriteReg(0x0090,0x0033); //RTNI setting
LCD_WriteReg(0x0007, 0x0133); // 262K color and display ON
}
|
-
-
lcd.c
84.63 KB, 下载次数: 106
|