📄 lcd-bak.c
字号:
0x02,0x00,0x00,0x00,0x00,0x60,0x90,0x90,
0x60,0x00,0x00,0x80,0x78,0x07,0x00,0x00,
0x00,0x00,0x07,0x08,0x08,0x08,0x07,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x07,0x78,0xc0,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,
0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x80,0x80,0x00,0x00,0x00,0x00,0x10,0x28,
0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0xc0,0x78,0x07,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,
0x02,0x06,0x0c,0x18,0x30,0x60,0xc0,0x80,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x01,0x03,0x02,0x04,0x04,0x04,0x08,0x08,
0x08,0x08,0x08,0x04,0x04,0x04,0x02,0x03,
0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x80,0xc0,0x60,0x30,0x18,0x0c,0x06,0x02,
0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x01,0x02,0x04,0x04,0x04,0x0c,0x08,0x08,
0x08,0x08,0x18,0x10,0x10,0x10,0x10,0x10,
0x08,0x10,0x10,0x10,0x10,0x10,0x18,0x08,
0x08,0x08,0x0c,0x04,0x04,0x04,0x02,0x01,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
unsigned char DIG_FONT[]=
{
/*0*/ 0xff,0x00,0xff,0xff,0xff,0xff,0xff,0xff,
/*1*/ 0x00,0x00,0x00,0x00,0xff,0xff,0x00,0xff,
/*2*/ 0xff,0xff,0x00,0xff,0xff,0x00,0xff,0xff,
/*3*/ 0x00,0xff,0x00,0xff,0xff,0xff,0xff,0xff,
/*4*/ 0x00,0xff,0xff,0x00,0xff,0xff,0x00,0xff,
/*5*/ 0x00,0xff,0xff,0xff,0x00,0xff,0xff,0xff,
/*6*/ 0xff,0xff,0xff,0xff,0x00,0xff,0xff,0xff,
/*7*/ 0x00,0x00,0x00,0xff,0xff,0xff,0x00,0xff,
/*8*/ 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
/*9*/ 0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff
};
unsigned char DISP_BUF[1152];//1 row/line is for ICON
//Turns the display ON or OFF.//
void Switch_LCD(U8 on_off)
{
Comm_Port=switch_on_off+(on_off&0x01);//only bit0 is used
}
// Initial Display Line //
void Init_LCD_Line(U8 line_num)
{
Comm_Port=init_line+(line_num&0x3f);//mask Bit7 and Bit6
}
// sets reference voltage //
void Set_Ref_Voltage(U8 ref_value)
{
Comm_Port=set_ref;
Comm_Port=ref_value&0x3f; //mask Bit7 and Bit6
}
// Set Page Address //
void Set_Page(U8 page_num)
{
Comm_Port=set_Page_addr+(page_num&0x0f);//mask High 4bit
}
// Set Column Address //
void Set_Col(U8 col_num)
{
Comm_Port=set_col_addr_h+(col_num/0x10);//output High 4bit
Comm_Port=set_col_addr_l+(col_num%0x10);//output Low 4bit
}
//ADC Select->Changes the relationship between RAM column address and segment driver. The direction of segment driver output pins can be reversed by software.//
void ADC_Select(U8 direct)
{
Comm_Port=adc_select+(direct%0x01);//only bit0 is used
}
// Reverse Display ON_OFF //
void Reverse_Disp(U8 on_off)
{
Comm_Port=reverse_disp+(on_off&0x01);//only bit0 is used
}
// Entire Display ON / OFF //
void Entire_Disp(U8 on_off)
{
Comm_Port=entire_disp+(on_off&0x01);//only bit0 is used
}
// Select LCD Bias(0:1/7 1:1/9) //
void Sele_Bias(U8 bias)
{
Comm_Port=sel_bias+(bias&0x01);//only bit0 is used
}
// Soft Reset //
void Soft_Reset(void)
{
Comm_Port=soft_reset;
}
// SHL Select //
void SHL_Select(U8 on_off)
{
Comm_Port=shl_select+(on_off&0x01);//only bit0 is used
}
// Power control //
void Power_Ctrl(U8 power_value)
{
Comm_Port=power_ctrl+(power_value&0x07);//only bit2~0 sre used
}
// Regulator Resistor Select //
void Regulator_Select(U8 resistor)
{
Comm_Port=reg_res_sel+(resistor&0x07);//only bit2~0 sre used
}
// Set Static Indicator State //
void Set_Static_Indicator_State(U8 on_off)
{
U8 temp;
temp=on_off&0x01; //only bit0 is used
if(temp==0)
Comm_Port=set_indicator;
else
{
Comm_Port=set_indicator+temp; //output 1st byte
Comm_Port=0x02; //ON (about 0.5 second blinking )
}
}
void Reflash_LCD(void)
{
/*display-data is output from DISP_BUF[] to LCD*/
unsigned char line_num,col_num;
for(line_num=0;line_num<9;line_num++)
{
Set_Page(line_num);
Set_Col(0);
for(col_num=0;col_num<128;col_num++)
Data_Port=DISP_BUF[line_num*128+col_num];
}
}
////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////
#if 0
void LCD_Init(void)
{
/*Start of Initialization*/
ADC_Select(0);//ADC Select
SHL_Select(0);//SHL Select
Sele_Bias(1);//LCD Bias Select
Power_Ctrl(VC_ON);//User LCD Power Setup by Internal Instructions->Voltage Converter ON
Delay(1000);//Wait for 1ms
Power_Ctrl(VC_ON+VR_ON);//User LCD Power Setup by Internal Instructions->Voltage Regulator ON
Delay(1000);//Wait for 1ms
Power_Ctrl(VC_ON+VR_ON+VF_ON);//User LCD Power Setup by Internal Instructions->Voltage Follower ON
Regulator_Select(0x04);Set_Ref_Voltage(0x20);//User LCD Power Setup by Internal Instructions->Regulator Resistor Select,Reference Voltage Register Set
Delay(1000);//Waiting for Stabilizing the LCD Power Levels
/*End of Initialization*/
/* Start to use */
//Display Data RAM Addressing by Instruction
// Initial Display Line
// Set Page Address
// Set Column Address
//Write Display ON / OFF by Instruction->Display ON / OFF
Switch_LCD(1);//Turn Display ON / OFF by Instruction->Display ON / OFF
// Show_BMP(Welcome_BMP);
// LCD_Printf(2,"Hello!");
}
#endif
#define SCR_XSIZE (320)
#define SCR_YSIZE (240)
#define COLOR_NUMBER 256
#define LCD_XSIZE (320)
#define LCD_YSIZE (240)
unsigned aLcdActiveBuffer[LCD_YSIZE][LCD_XSIZE/4];
#define M5D(n) ((n) & 0x1fffff)
#define ARRAY_SIZE_COLOR (SCR_XSIZE/1*SCR_YSIZE)
#define HOZVAL (LCD_XSIZE/4-1)
#define HOZVAL_COLOR (LCD_XSIZE*3/8-1)
#define LINEVAL (LCD_YSIZE-1)
#define MVAL (13)
#define CLKVAL_COLOR (4) //60Mhz
#define MVAL_USED 0
#define INT32U unsigned
//*****************************************************************
//** 函数名:void Lcd_Clr(void)
//** 输 入: Null
//** 输 出: Null
//** 功能描述:清槠
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -