//*************************************************************** // //***** Focus LCDs ***** //***** LCDs Made Simple ***** //***** www.FocusLCDs.com ***** // //*************************************************************** // //NOTE:VCI=3.3V //**************************************************************** void lcd_init(void){ write_command(0xA2); //ICON OFF; write_command(0xAE); //Display OFF write_command(0x48); //Set Duty ratio write_command(0x80); //No operation write_command(0xa0); //Set scan direction write_command(0xc8); //SHL select write_command(0x40); //Set START LINE write_command(0x00); write_command(0xab); //OSC on write_command(0x64); //3x delay(2000); write_command(0x65); //4x delay(2000); write_command(0x66); //5x delay(2000); write_command(0x67); //6x delay(2000); write_command(Ra_Rb); //RESISTER SET write_command(0x81); //Set electronic volume register write_command(vopcode); //n=0~3f write_command(0x57); //1/12bias write_command(0x92); //FRC and pwm write_command(0x2C); delay(20000);//200ms write_command(0x2E); delay(20000);//200ms write_command(0x2F); delay(20000);//200ms write_command(0x92); //frc and pwm write_command(0x38); //external mode write_command(0x75); //start settings for 16-level grayscale write_command(0x80); write_command(0x00); write_command(0x81); write_command(0x00); write_command(0x82); write_command(0x00); write_command(0x83); write_command(0x00); write_command(0x84); write_command(0x06); write_command(0x85); write_command(0x06); write_command(0x86); write_command(0x06); write_command(0x87); write_command(0x06); write_command(0x88); write_command(0x0b); write_command(0x89); write_command(0x0b); write_command(0x8a); write_command(0x0b); write_command(0x8b); write_command(0x0b); write_command(0x8c); write_command(0x10); write_command(0x8d); write_command(0x10); write_command(0x8e); write_command(0x10); write_command(0x8f); write_command(0x10); write_command(0x90); write_command(0x15); write_command(0x91); write_command(0x15); write_command(0x92); write_command(0x15); write_command(0x93); write_command(0x15); write_command(0x94); write_command(0x1a); write_command(0x95); write_command(0x1a); write_command(0x96); write_command(0x1a); write_command(0x97); write_command(0x1a); write_command(0x98); write_command(0x1e); write_command(0x99); write_command(0x1e); write_command(0x9a); write_command(0x1e); write_command(0x9b); write_command(0x1e); write_command(0x9c); write_command(0x23); write_command(0x9d); write_command(0x23); write_command(0x9e); write_command(0x23); write_command(0x9f); write_command(0x23); write_command(0xa0); write_command(0x27); write_command(0xa1); write_command(0x27); write_command(0xa2); write_command(0x27); write_command(0xa3); write_command(0x27); write_command(0xa4); write_command(0x2b); write_command(0xa5); write_command(0x2b); write_command(0xa6); write_command(0x2b); write_command(0xa7); write_command(0x2b); write_command(0xa8); write_command(0x2f); write_command(0xa9); write_command(0x2f); write_command(0xaa); write_command(0x2f); write_command(0xab); write_command(0x2f); write_command(0xac); write_command(0x32); write_command(0xad); write_command(0x32); write_command(0xae); write_command(0x32); write_command(0xaf); write_command(0x32); write_command(0xb0); write_command(0x35); write_command(0xb1); write_command(0x35); write_command(0xb2); write_command(0x35); write_command(0xb3); write_command(0x35); write_command(0xb4); write_command(0x38); write_command(0xb5); write_command(0x38); write_command(0xb6); write_command(0x38); write_command(0xb7); write_command(0x38); write_command(0xb8); write_command(0x3a); write_command(0xb9); write_command(0x3a); write_command(0xba); write_command(0x3a); write_command(0xbb); write_command(0x3a); write_command(0xbc); write_command(0x3c); write_command(0xbd); write_command(0x3c); write_command(0xbe); write_command(0x3c); write_command(0xbf); write_command(0x3c); //end settings for 16-level grayscale write_command(0x38); write_command(0x74); write_command(0xaf); //Display ON }