static void sw_clear_panel(unsigned int color) { unsigned int x0 = 0; unsigned int y0 = 0; unsigned int x1 = x0 + FRAME_WIDTH - 1; unsigned int y1 = y0 + FRAME_HEIGHT - 1; unsigned int x, y; send_ctrl_cmd(0x2A); send_data_cmd(HIGH_BYTE(x0)); send_data_cmd(LOW_BYTE(x0)); send_data_cmd(HIGH_BYTE(x1)); send_data_cmd(LOW_BYTE(x1)); send_ctrl_cmd(0x2B); send_data_cmd(HIGH_BYTE(y0)); send_data_cmd(LOW_BYTE(y0)); send_data_cmd(HIGH_BYTE(y1)); send_data_cmd(LOW_BYTE(y1)); send_ctrl_cmd(0x2C); // send DDRAM set // 18-bit mode (256K color) coding for (y = y0; y <= y1; ++ y) { for (x = x0; x <= x1; ++ x) { lcm_util.send_data(color); } } }
static __inline void send_ctrl_cmd(unsigned int cmd) { unsigned char temp1 = (unsigned char)((cmd >> 8) & 0xFF); unsigned char temp2 = (unsigned char)(cmd & 0xFF); lcm_util.send_data(0x2000 | temp1); lcm_util.send_data(0x0000 | temp2); }
static void sw_clear_panel(unsigned int color) { unsigned int x, y; lcm_update(0, 0, FRAME_WIDTH, FRAME_HEIGHT); for (y = 0; y < FRAME_HEIGHT; ++ y) { for (x = 0; x < FRAME_WIDTH; ++ x) { lcm_util.send_data(color); } } }
static void sw_clear_panel(unsigned int color) { short x0, y0, x1, y1, x, y; short h_X_start,l_X_start,h_X_end,l_X_end,h_Y_start,l_Y_start,h_Y_end,l_Y_end; x0 = (short)0; y0 = (short)0; x1 = (short)FRAME_WIDTH-1; y1 = (short)FRAME_HEIGHT-1; h_X_start=((x0&0x0300)>>8); l_X_start=(x0&0x00FF); h_X_end=((x1&0x0300)>>8); l_X_end=(x1&0x00FF); h_Y_start=((y0&0x0300)>>8); l_Y_start=(y0&0x00FF); h_Y_end=((y1&0x0300)>>8); l_Y_end=(y1&0x00FF); send_ctrl_cmd( 0x2A00 ); send_data_cmd( h_X_start); send_ctrl_cmd( 0x2A01 ); send_data_cmd( l_X_start); send_ctrl_cmd( 0x2A02); send_data_cmd( h_X_end ); send_ctrl_cmd( 0x2A03); send_data_cmd( l_X_end ); send_ctrl_cmd( 0x2B00 ); send_data_cmd( h_Y_start); send_ctrl_cmd( 0x2B01 ); send_data_cmd( l_Y_start); send_ctrl_cmd( 0x2B02); send_data_cmd( h_Y_end ); send_ctrl_cmd( 0x2B03); send_data_cmd( l_Y_end ); //send_ctrl_cmd(0x3601); //enable HSM mode //send_data_cmd(0x01); send_ctrl_cmd( 0x2C00 ); // 18-bit mode (256K color) coding for (y = y0; y <= y1; ++ y) { for (x = x0; x <= x1; ++ x) { lcm_util.send_data(color); } } }
static void sw_clear_panel(unsigned int color) { unsigned short x0, y0, x1, y1, x, y; unsigned short h_X_start,l_X_start,h_X_end,l_X_end,h_Y_start,l_Y_start,h_Y_end,l_Y_end; x0 = (unsigned short)0; y0 = (unsigned short)0; x1 = (unsigned short)FRAME_WIDTH-1; y1 = (unsigned short)FRAME_HEIGHT-1; h_X_start=((x0&0xFF00)>>8); l_X_start=(x0&0x00FF); h_X_end=((x1&0xFF00)>>8); l_X_end=(x1&0x00FF); h_Y_start=((y0&0xFF00)>>8); l_Y_start=(y0&0x00FF); h_Y_end=((y1&0xFF00)>>8); l_Y_end=(y1&0x00FF); send_ctrl_cmd(0x2A); send_data_cmd(h_X_start); send_data_cmd(l_X_start); send_data_cmd(h_X_end); send_data_cmd(l_X_end); send_ctrl_cmd(0x2B); send_data_cmd(h_Y_start); send_data_cmd(l_Y_start); send_data_cmd(h_Y_end); send_data_cmd(l_Y_end); //color=0x8410 ; // color=0xF800 ; //color=0xFFFF ; send_ctrl_cmd(0x29); send_ctrl_cmd(0x2C); for (y = y0; y <= y1; ++ y) { for (x = x0; x <= x1; ++ x) { lcm_util.send_data(color); } } }
static __inline void send_data_cmd(unsigned int data) { lcm_util.send_data(data); }
static __inline void send_data_cmd(unsigned int data) { // printf("d:%x", data); lcm_util.send_data(data&0xff); }
static __inline void LCDSPI_InitDAT(unsigned char reg_Data) { lcm_util.send_data(reg_Data & 0xFF); }