📄 hg192646.c
字号:
com=(O_X-j)|0X40;
PR1m(); /* 小于写中片 */
O_Y='M';
}
else
{
com=(O_X-2*j)|0X40;
PR1r(); /* 不小于两片HD61202控制器控制的宽度写右片 */
O_Y='R';
}
}
for(count1=0;count1<6;count1++)
{
dat1=CHTAB[code_1][count1];
if(O_Y=='L')
{
PR2l();
}
else
{
if(O_Y=='M')
{
PR2m();
}
else
{
PR2l();
}
}
com++;
if(com==j)
{
if(O_Y=='L')
{
com=0x40;
PR1m();
O_Y='M';
}
else
{
if(O_Y=='M')
{
com=0x40;
PR1r();
O_Y='R';
}
else
{
return;
}
}
}
}
}
/************************10*24********************/
/* 西文字符写入函数:CW_PR1 */
/* 函数参数选择:PARA1 */
/* 内部调用函数:PR1(),PR2(),PR4(),PR5() */
/* 连接字库: CHTAB */
/* 函数调用入口: CW_PR() */
/* 函数输入变量: O_X,O_Y,CODE_1 */
/******************************************/
CW_PR1()
{
unsigned char i,j,k;
i=0;
j=para1;
loop: com=O_Y|0xb8; /* 设页地址 */
PR1l();
PR1m();
PR1r();
if(O_X<j) /* 是否小于一片HD61202控制器控制的宽度 */
{
com=O_X|0x40;
PR1l(); /* 小于写左片 */
k='L';
}
else
{
if(O_X<2*j) /* 是否小于两片HD61202控制器控制的宽度 */
{
com=O_X-j|0x40;
PR1m(); /* 小于写中片 */
k='M';
}
else
{
com=(O_X-2*j)|0x40;
PR1r(); /* 不小于写右片 */
k='R';
}
}
com=com&0x3f;
for(count1=i;count1<i+10;count1++)
{
dat1=zf1[code_1][count1];
if(k=='L')
{
PR2l();
}
else
{
if(k=='M')
{
PR2m();
}
else
{
PR2r();
}
}
com++;
if(com==j)
{
if(k=='L')
{
com=0x40;
PR1m();
k='M';
}
else
{
if(k=='M')
{
com=0x40;
PR1r();
k='R';
}
else
{
goto loop2;
}
}
}
}
loop2: if(i==0)
{
i=10;
O_Y++;
if(O_Y==8)
{
return;
}
else
{
goto loop;
}
}
else
{ if(i==10)
{i=20;
O_Y++;
if(O_Y==8)
{
return;
}
else
{
goto loop;
}
}
}
}
/*****************************************/
/* 清屏函数:CLEAR */
/* 清显示RAM 区(清屏)函数:CLEAR */
/* 内部调用函数:PR1(),PR2(),PR4(),PR5() */
/* 函数调用入口:CLEAR() */
/*****************************************/
CLEAR()
{
for(count1=0xb8;count1!=0xC0;count1++) /*以页地址作为循环量*/
{
com=count1; /* 页地址 */
PR1l();
PR1m();
PR1r();
com=0x40; /* 列地址设置 */
PR1l();
PR1m();
PR1r();
for(com=0;com<64;com++) /*清除所有HD61202的内部RAM单元*/
{
dat1=0x00;
PR2l();
PR2m();
PR2r();
}
}
}
/*****************************************/
/* 清屏函数:CLEAR */
/* 清显示RAM 区(清屏)函数:CLEAR */
/* 内部调用函数:PR1(),PR2(),PR4(),PR5() */
/* 函数调用入口:CLEAR() */
/*****************************************/
void CLEAR1(void)
{
for(count1=0xb8;count1!=0xC0;count1++) /*以页地址作为循环量*/
{
com=count1; /* 页地址 */
PR1l();
PR1m();
PR1r();
com=0x40; /* 列地址设置 */
PR1l();
PR1m();
PR1r();
for(com=0;com<64;com++) /*清除所有HD61202的内部RAM单元*/
{
dat1=0xaa;
PR2l();
PR2m();
PR2r();
}
}
}
/*****************************************/
/* 清屏函数:CLEAR */
/* 清显示RAM 区(清屏)函数:CLEAR */
/* 内部调用函数:PR1(),PR2(),PR4(),PR5() */
/* 函数调用入口:CLEAR() */
/*****************************************/
void CLEAR2(void)
{
for(count1=0xb8;count1!=0xC0;count1++) /*以页地址作为循环量*/
{
com=count1; /* 页地址 */
PR1l();
PR1m();
PR1r();
com=0x40; /* 列地址设置 */
PR1l();
PR1m();
PR1r();
for(com=0;com<32;com++) /*清除所有HD61202的内部RAM单元*/
{
dat1=0xaa;
PR2l();
PR2m();
PR2r();
dat1=0x55;
PR2l();
PR2m();
PR2r();
}
}
}
/*延时*/
Lcd12864delay(unsigned int delayms)
{
unsigned int i=delayms;
while(i--) {;}
}
/*************************************/
/* 初始化函数 */
/*************************************/
INT_1()
{
com=start_line0; /* 显示起始行为0 */
PR1l();
PR1m();
PR1r();
com=display_on; /* 开显示 */
PR1l();
PR1m();
PR1r();
}
/*************************************/
/* 演示主程序 */
/*************************************/
void main()
{
unsigned char a,b,i,j;
unsigned int m,n;
INT_1(); /* 调初始化函数 */
loopmain: CLEAR(); /* 调清屏函数 */
/*方框*/
com=0xb8;
PR1l();
PR1m();
PR1r();
com=0x40;
PR1l();
PR1m();
PR1r();
for(m=0;m<64;m++)
{dat1=0x03;
PR2l();
PR2m();
PR2r();
}
com=0xbf;
PR1l();
PR1m();
PR1r();
com=0x40;
PR1l();
PR1m();
PR1r();
for(m=0;m<64;m++)
{dat1=0xc0;
PR2l();
PR2m();
PR2r();
}
for(m=0xb0;m<0xc0;m++)
{
com=m;
PR1l();
PR1r();
com=0x40;
PR1l();
PR1r();
dat1=0xff;
PR2l();
PR2l();
com=62|0x40;
PR1l();
PR1r();
dat1=0xff;
PR2r();
PR2r();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -