📄 lcm12864.c
字号:
LN=0xc3;
TW=1;
}
else
{
display_Fchar(38,WEN,4);
display_Fchar(54,DING,4);
display_Fchar(69,XING,4);//项目代码 稳定性
LN=0xca;
TW=0;
}
break;
case LDTY_ZT:
a=30;
for(i=0;i<9;i++)
{
display_Cnum(a,clear,4);
a=a+8;
}
if(LZ==0)
{
display_Fchar(30,LI2,4);
display_Fchar(46,DING,4);
display_Fchar(62,TIAO,4);//项目代码 立定跳远
display_Fchar(77,YUAN,4);
LN=0xc4;
LZ=1;
}
else
{
display_Fchar(46,ZONG,4);
display_Fchar(62,TIAO,4);//项目代码 纵跳
LN=0xcb;
LZ=0;
}
break;
case K_EN:
while(getkey()!=0xff);
delay(255);
if(LN==00)
goto sdsrlop;
goto enter1;
case K_CAL:
while(getkey()!=0xff);
delay(255);
goto dispm1;
}
while(getkey()!=0xff);
}
//xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
//xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
//xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
//xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
//xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
case 3://数据查询选项
XZ_LN=1;
XZ_PAGE=1;
xuehaodisp: delay(255);
disp_ln=1;
//clear_lcd();
clear_lcd();
write_com(0xc0);//设置显示起始行
save=0;
//a=IC_read(0xfffe);
//a=IC_read(0xffff);
save=IC_read(0xfffe)*256;
save=save+IC_read(0xffff);
//temp=save;//作为多屏鉴别标志
if(save==0)
{
display_char(16,WU2,3);
display_char(32,CE,3);
display_char(48,SHI5,3);
display_char(64,SHU,3);
display_char(82,ZHI,3);//显示 没有测试数据
display_Cnum(98,tanhao,3);
delay(255);
delay(255);
delay(255);
delay(255);
delay(255);
delay(255);
delay(255);
delay(255);
delay(255);
if(xzxh_F==1)
goto enter1;
goto dispm1;
}
temp=save/4;
temp1=save%4;
if(temp1>0)
{
temp++;//计算存储器可以分成几页显示 temp:总页数 temp1:最后一页的行数
temp1=temp1-1;
}
else
temp1=3;//最后一页还剩几行判断
yushu=temp1+1;
//disp_page=1;//显示第1页数据
disp_page=XZ_PAGE;
disp_ln=XZ_LN;
caidisp:
//if(disp_page==temp)//如果显示的是最后一页
//save=disp_page*4-4+temp1;
//else
save=(disp_page-1)*4;
key=0;
ln=0;//行寄存器
for(page=0;page<4;page++)
{
if((disp_ln-1)==page)
goto fanxiang;//反相显示
key=0;
for(i=0;i<6;i++)
{
key++;
a=IC_read(save*36+i)>>4;//高半位
display_num(key*8,(uchar *)a,ln);
a=IC_read(save*36+i);
a=(a&0x0f);//低半位
key++;
display_num(key*8,(uchar *)a,ln);
}
ln=ln+2;
if(disp_page==temp)//如果是最后一页 判断还剩几行
{
if(temp1>0)
{
temp1=temp1-1; //xuefeng@b2b.sohu.com
save=save+1;
}
else
goto pkey;
}
else
save=save+1; //xuefeng@b2b.sohu.com
goto caiend;
////////////////////// //////////////////////////
fanxiang: key=0;
for(i=0;i<6;i++)
{
key++;
a=IC_read(save*36+i)>>4;//高半位
display_Fnum(key*8,(uchar *)a,ln);
a=IC_read(save*36+i);
a=(a&0x0f);//低半位
key++;
display_Fnum(key*8,(uchar *)a,ln);
}
ln=ln+2;
if(disp_page==temp)//如果是最后一页 判断还剩几行
{
if(temp1>0)
{
temp1=temp1-1; //xuefeng@b2b.sohu.com
save=save+1;
}
else
goto pkey;
}
else
save=save+1; //xuefeng@b2b.sohu.com
caiend:;
}
pkey: while(1)
{
switch(getkey())
{
case UP:
if(disp_ln>1)
disp_ln--;
else if(disp_page==1)
disp_ln=1;
else
{
disp_page--;
disp_ln=4;
clear_lcd();
write_com(0xc0);//设置显示起始行
}
temp1=yushu-1;
delay(255);
goto caidisp;
case DOWN:
if(disp_page==temp)
{
if(disp_ln<yushu)
disp_ln++;
else
disp_ln=yushu;
}
else
{
if(disp_ln<4)
disp_ln++;
else
{
disp_page++;
disp_ln=1;
clear_lcd();
write_com(0xc0);//设置显示起始行
}
}
temp1=yushu-1;
delay(255);
goto caidisp;
case LEFT:
if(disp_page>1)
{
disp_page--;
disp_ln=1;
delay(255);
clear_lcd();
write_com(0xc0);//设置显示起始行
}
else
{
disp_page=temp;
disp_ln=1;
delay(255);
clear_lcd();
write_com(0xc0);//设置显示起始行
}
delay(100);
temp1=yushu-1;
goto caidisp;
case RIGHT:
if(disp_page<temp)
{
disp_page++;
disp_ln=1;
delay(255);
clear_lcd();
write_com(0xc0);//设置显示起始行
}
else
{
disp_page=1;
disp_ln=1;
delay(255);
clear_lcd();
write_com(0xc0);//设置显示起始行
}
delay(100);
temp1=yushu-1;
goto caidisp;
case K_EN:
while(getkey()!=0xff);
XZ_PAGE=disp_page;
XZ_LN=disp_ln;
save=(disp_page-1)*4+(disp_ln-1);
if(xzxh_F!=1)
goto chaxunen;//进入查询选项
else
goto kaishiceshi;//选择学号选项
break;
case K_CAL:
while(getkey()!=0xff);
XZ_PAGE=disp_page;
XZ_LN=disp_ln;
delay(255);
if(xzxh_F==1)
goto enter1;
goto dispm1;
break;
}
}
break;
case 4://存储器选项
clear_lcd();
write_com(0xc0);//设置显示起始行
display_char(0,YI,1);
display_char(16,YONG,1);
display_char(32,KONG,1);
display_char(48,JIAN,1);
display_Cnum(64,maohao,1);
save=0;
a=IC_read(0xfffe);
i=IC_read(0xffff);
save=save+a*256;
save=save+i;
save=save*36;
HEX_BCD(save);
if(BCD[3]!=0)
{
display_num(72,(uchar *)BCD[3],1);
display_num(80,(uchar *)BCD[4],1);
display_num(88,(uchar *)BCD[5],1);
display_num(96,(uchar *)BCD[6],1);
display_num(104,(uchar *)BCD[7],1);
}
else
if(BCD[4]!=0)
{
display_num(80,(uchar *)BCD[4],1);
display_num(88,(uchar *)BCD[5],1);
display_num(96,(uchar *)BCD[6],1);
display_num(104,(uchar *)BCD[7],1);
}
else
if(BCD[5]!=0)
{
display_num(88,(uchar *)BCD[5],1);
display_num(96,(uchar *)BCD[6],1);
display_num(104,(uchar *)BCD[7],1);
}
else
if(BCD[6]!=0)
{
display_num(96,(uchar *)BCD[6],1);
display_num(104,(uchar *)BCD[7],1);
}
else
display_num(104,(uchar *)BCD[7],1);
display_char(0,KE,3);
display_char(16,YONG,3);
display_char(32,KONG,3);
display_char(48,JIAN,3);
display_Cnum(64,maohao,3);
save=0xffff-save;
HEX_BCD(save);
if(BCD[3]!=0)
{
display_num(72,(uchar *)BCD[3],3);
display_num(80,(uchar *)BCD[4],3);
display_num(88,(uchar *)BCD[5],3);
display_num(96,(uchar *)BCD[6],3);
display_num(104,(uchar *)BCD[7],3);
}
else
if(BCD[4]!=0)
{
display_num(80,(uchar *)BCD[4],3);
display_num(88,(uchar *)BCD[5],3);
display_num(96,(uchar *)BCD[6],3);
display_num(104,(uchar *)BCD[7],3);
}
else
if(BCD[5]!=0)
{
display_num(88,(uchar *)BCD[5],3);
display_num(96,(uchar *)BCD[6],3);
display_num(104,(uchar *)BCD[7],3);
}
else
if(BCD[6]!=0)
{
display_num(96,(uchar *)BCD[6],3);
display_num(104,(uchar *)BCD[7],3);
}
else
display_num(104,(uchar *)BCD[7],3);
display_char(0,ZONG3,5);
display_char(16,RONG,5);
display_char(32,LIANG,5);
display_Cnum(48,maohao,5);
save=0xffff;
HEX_BCD(save);
if(BCD[3]!=0)
{
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -