Other Parts Discussed in Thread: MSP-GRLIB
Tool/software: Code Composer Studio
Hello,
I am using MSP430G2553 and Mikroelektronic LCD 320 x 240 and communication is SPI and ILI9341 library. I followed the commands mentioned in the datasheet, it is displaying Data in potrait mode. By selecting MV = 1 (Row/Column Exchange) in Memory Access Control (36h), LCD has changed to Landscape but LCD width is working till 240 (240 to 320 nothing, Please see attached picture). I have selected lcd background black, it is displaying black colour in horizontal upto 240. Will you please help me that how can i access full pixels in LCD 320 x 240. Thanks.
#define lcd_width 320
#define lcd_height 240
set_instruction(0, 0x01); //software reset
__delay_cycles(5);
set_instruction(0, 0x28); // display off
//---------------------------------------------------------
set_instruction(0, 0xcf);
set_instruction(1, 0x00);
set_instruction(1, 0x83);
set_instruction(1, 0x30);
set_instruction(0, 0xed);
set_instruction(1, 0x64);
set_instruction(1, 0x03);
set_instruction(1, 0x12);
set_instruction(1, 0x81);
set_instruction(0, 0xe8);
set_instruction(1, 0x85);
set_instruction(1, 0x01);
set_instruction(1, 0x79);
set_instruction(0, 0xcb);
set_instruction(1, 0x39);
set_instruction(1, 0x2c);
set_instruction(1, 0x00);
set_instruction(1, 0x34);
set_instruction(1, 0x02);
set_instruction(0, 0xf7);
set_instruction(1, 0x20);
set_instruction(0, 0xea);
set_instruction(1, 0x00);
set_instruction(1, 0x00);
//------------power control------------------------------
set_instruction(0, 0xc0); //power control
set_instruction(1, 0x26);
set_instruction(0, 0xc1); //power control
set_instruction(1, 0x11);
//--------------VCOM--------- write_cmd(0xc5); //vcom control
set_instruction(0, 0xc5); //power control
set_instruction(1, 0x35);//35
set_instruction(1, 0x3e);//3E
set_instruction(0, 0xc7); //vcom control
set_instruction(1, 0xbe); // 0x94
//------------memory access control------------------------
set_instruction(0, 0x36); // memory access control
set_instruction(1, 0x28); // MV =1 Landscape
set_instruction(0, 0x3a); // pixel format set
set_instruction(1, 0x55);//16bit /pixel
//----------------- frame rate------------------------------
set_instruction(0, 0xb1); // frame rate
set_instruction(1, 0x00);
set_instruction(1, 0x1B); //70
//----------------Gamma---------------------------------
set_instruction(0, 0xf2); // 3Gamma Function Disable
set_instruction(1, 0x08);
set_instruction(0, 0x26);
set_instruction(1, 0x01); // gamma set 4 gamma curve 01/02/04/08
set_instruction(0, 0xE0); //positive gamma correction
set_instruction(1, 0x1f);
set_instruction(1, 0x1a);
set_instruction(1, 0x18);
set_instruction(1, 0x0a);
set_instruction(1, 0x0f);
set_instruction(1, 0x06);
set_instruction(1, 0x45);
set_instruction(1, 0x87);
set_instruction(1, 0x32);
set_instruction(1, 0x0a);
set_instruction(1, 0x07);
set_instruction(1, 0x02);
set_instruction(1, 0x07);
set_instruction(1, 0x05);
set_instruction(1, 0x00);
set_instruction(0, 0xE1); //negamma correction
set_instruction(1, 0x00);
set_instruction(1, 0x25);
set_instruction(1, 0x27);
set_instruction(1, 0x05);
set_instruction(1, 0x10);
set_instruction(1, 0x09);
set_instruction(1, 0x3a);
set_instruction(1, 0x78);
set_instruction(1, 0x4d);
set_instruction(1, 0x05);
set_instruction(1, 0x18);
set_instruction(1, 0x0d);
set_instruction(1, 0x38);
set_instruction(1, 0x3a);
set_instruction(1, 0x1f);
//--------------ddram ---------------------
set_instruction(0, 0x2a); // column set
set_instruction(1, 0x00);
set_instruction(1, 0x00);
set_instruction(1, 0xEF);
set_instruction(0, 0x2b); // page address set
set_instruction(1, 0x00);
set_instruction(1, 0x00);
set_instruction(1, 0x01);
set_instruction(1, 0x3F);
// set_instruction(0, 0x34); // tearing effect off
//set_instruction(0, 0x35); // tearing effect on
// set_instruction(0, 0xb4); // display inversion
//set_instruction(1, 0x00);
set_instruction(0, 0xb7); //entry mode set
set_instruction(1, 0x07);
//-----------------display---------------------
set_instruction(0, 0xb6); // display function control
set_instruction(1, 0x0a);
set_instruction(1, 0x82);
set_instruction(1, 0x27);
set_instruction(1, 0x00);
set_instruction(0, 0x11); //sleep out
__delay_cycles(100);
set_instruction(0, 0x29); // display on
__delay_cycles(100);
set_instruction(0, 0x2c); //memory write
fill_display(lcd_width,lcd_height,C_BLACK);
draw_string(0,0,"Hello World",0xF800,TRANSP,0,0);