📄 cm1601281.c
字号:
//-------------main function-------------------
void main()
{
int i = 0;
char j = 0;
char *hello = "hello";
unsigned char h = 0;
//unsigned char *chPointer = &ch16[0];
f_display_mode(codDispOff);//关闭显示
f_ctrl_word_set(codTxtHAddSet,10,0);//文本显示区首地址设置
f_ctrl_word_set(codTxtAreaSet,0x04,0);//文本显示区宽度设置
//f_ctrl_word_set(codGraHAddSet,0,0x00);//图形显示区首地址设置
//f_ctrl_word_set(codGraAreaSet,0x14,0);//图形显示区宽度设置
f_mode_set(codORMode);//逻辑或用CGROM
f_display_mode(codTxtOffGraOn);//关闭文本显示,打开图形显示
f_cursor(cod8LineCursor);
h = 0;
while(1)
{
f_clean2();
f_clean();
f_reg_set(codAddPSet,0x00,0);
///f_ctrl_word_set(codGraHAddSet,0x00,0x00);//图形显示区首地址设置
f_ctrl_word_set(codGraAreaSet,0x00,0);//图形显示区宽度设置
f_display_mode(codTxtOnGraOff);//关闭文本显示,打开图形显示
i = 26;
h = 0;
while(i--)
{
f_reg_set(codAddPSet,h,0);
//f_data_write(codDataWnADPNo, 0xff);
f_data_write(codDataWnADPNo,65+(h++));
}
//f_draw_bmp(rectangle);
//delay_ms(50);
//while(1);
//f_data_auto_rnw(codAutoWrite);
//delay_ms(50);
//f_clean();
//f_draw_bmp(&rectangle[0]);
//delay_ms(50);
//f_draw_bmp(&welcome[0]);
//delay_ms(50);
//f_draw_bmp(&heating[0]);
//delay_ms(50);
//f_draw_bmp(&sampling[0]);
//delay_ms(50);
//f_clean();
//f_draw_bmp8064(&rectangle2[0]);
//f_draw_bmp(&welcome[0]);
delay_ms(50);
while(1);
}
}
//--------------------function---------------------------
void write_command(unsigned char ucCmd)
{
lcd_busy();
XBYTE[C_ADD] = ucCmd;
}
void write_data(unsigned char ucData)
{
lcd_busy();
XBYTE[D_ADD] = ucData;
}
unsigned char read_command(void)
{
unsigned char ucCmd = 0;
lcd_busy();
ucCmd = XBYTE[C_ADD];
return ucCmd;
}
unsigned char read_data(void)
{
unsigned char ucData = 0;
lcd_busy();
ucData = XBYTE[D_ADD];
}
void lcd_busy()
{
P1_0 = 0;
do
{
lcd_busy1();
}while(ACC0 != 1 | ACC1 != 1);
}
void lcd_busy1()
{
ACC = XBYTE[C_ADD];
}
void delay_ms(int ms)
{
int i = 0;
int j = 0;
for(i = ms; i > 0; i--)
{
j = 1000;
while(j--)
{
}
}
}
//function: Register Set
void f_reg_set(unsigned char codeType, unsigned char data1, unsigned char data2)
{
write_data(data1);
write_data(data2);
write_command(codeType);
}
//function: Control World Set
void f_ctrl_word_set(unsigned char codeType, unsigned char data1, unsigned char data2)
{
if(codeType == codTxtAreaSet || codeType == codGraAreaSet)
{
data2 = 0x00;
}
write_data(data1);
write_data(data2);
write_command(codeType);
}
//function: Mode Set
void f_mode_set(unsigned char codeType)
{
write_command(codeType);
}
//function: Display Mode
void f_display_mode(unsigned char codeType)
{
write_command(codeType);
}
//function: Cursor Pattern Select
void f_cursor(unsigned char codeType)
{
write_command(codeType);
}
//function: Data Auto Read/Write
void f_data_auto_rnw(unsigned char codeType)
{
write_command(codeType);
}
//function: Data Read Write
unsigned char f_data_read(unsigned char codeType)
{
write_command(codeType);
return read_data();
}
void f_data_write(unsigned char codeType, unsigned char data1)
{
write_data(data1);
write_command(codeType);
}
//function: Screen Peek
void f_screen_peek(void)
{
write_command(codScreenPeek);
}
//function: Screen Copy
void f_screen_copy(void)
{
write_command(codScreenCopy);
}
//function: Bit Set/Reset
void f_bit_set(unsigned char codeType)
{
write_command(codeType);
}
//function: Clean the Screen
void f_clean(void)
{
int i = 0;
f_reg_set(codAddPSet,0,0);
f_data_auto_rnw(codAutoWrite);
i = 0x0100*0x21;
while(i--)
{
write_data(0x00);
}
f_data_auto_rnw(codAutoReset);
f_reg_set(codAddPSet,0,0);
}
//function: Clean the Screen
void f_clean2(void)
{
int i = 0;
f_reg_set(codAddPSet,0,0);
f_data_auto_rnw(codAutoWrite);
i = 0x0100*0x21;
while(i--)
{
write_data(0xff);
}
f_data_auto_rnw(codAutoReset);
f_reg_set(codAddPSet,0,0);
}
//function: draw a bmp, fullfill the Screen
void f_draw_bmp(unsigned char *bmp)
{
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -