📄 新建 文本文档 (2).txt
字号:
for(i=0;i<8;i++) /*write 16 bytes of one character to ssd1815bt*/
{disp_data=sz[i+shuzi*16];
write_lcd(1,disp_data);
}
_nop_();
x--;
if(x==-1)
x=7;
page=x+0xb0;
write_lcd(0,page);
column=yl; /*set column lower address*/
write_lcd(0,column);
column=yh; /*set column higher address*/
write_lcd(0,column);
for(i=0;i<8;i++) /*write 16 bytes of one character to ssd1815bt*/
{disp_data=sz[i+shuzi*16+8];
write_lcd(1,disp_data);
}
_nop_();
_nop_();
}
void disp_blank()//清屏
{
uchar j,column,disp_data,page; /*page address*/
uint i;
for(j=0x00;j<0x08;j++) /*write 8 page*/
{ page=j+0xb0; /*set page address*/
write_lcd(0,page);
column=0x00; /*set column lower address*/
write_lcd(0,column);
column=0x10; /*set column higher address*/
write_lcd(0,column);
for(i=0;i<132;i++)
{
disp_data=0x00;
write_lcd(1,disp_data);
}
}
}
void main()
{ TMOD=0x11;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
ET0=1;
ET1=1;
EA=1;
TR0=0;
c1=0;
TR1=0;
qg=0;
cp=0;
init_1815();
disp_blank();
delay(1);
x24c02_init();
while(1)
{ P1=0xfe;
temp=P1;
temp=temp&0xf0;
if(temp!=0xf0)
{ delay(10);
if(temp!=0xf0)
{temp=P1;
switch(temp)
{ case 0xee: key=1;
break;
case 0xde:key=2;
break;
case 0xbe:key=3;
break;
}
//while(temp!=0xf0)
// {temp=P1;
// temp=temp&0xf0;
//BELL=0;
//}
//BELL=1;
if(key==1)
{ if(cdbz==1&sdbz==0)
{
c1++;
if(c1==10000)
c1=0 ;
qian=c1/1000;
bai=c1%1000/100 ;
shi=c1%100/10;
ge=c1%10;
}
if(sdbz==1&cdbz==0)
{
i++;
if(i==10000)
i=0;
qian1=i/1000;
bai1=i%1000/100 ;
shi1=i%100/10;
ge1=i%10;
}
}
if(key==2)
{if(cdbz==1&sdbz==0)
{
if(c1==0)
c1=10000;
c1--;
qian=c1/1000;
bai=c1%1000/100 ;
shi=c1%100/10;
ge=c1%10;
}
if(sdbz==1&cdbz==0)
{
i--;
if(i==0)
i=10000;
qian1=i/1000;
bai1=i%1000/100 ;
shi1=i%100/10;
ge1=i%10;
}
}
if(key==3)
{if(cdbz==3)
{
TR0=0;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
//cr4=c1*10/counter0;
cr3=counter0/1000;
cr2=counter0%1000/100;
cr1=counter0 %100/10;
cr0=counter0%10;
disp(2,5,0x05,0x11,kb);
dispdata(5,0x08,0x15,cr1);
dispdata(5,0x05,0x16,cr0);
dispdata(5,0x0b,0x14,cr2);
dispdata(5,0x0f,0x13,cr3);
}
else TR1=0;
}
}
}
P1=0xfd;
temp=P1;
temp=temp&0xf0;
if(temp!=0xf0)
{delay(10);
if(temp!=0xf0)
{temp=P1;
switch(temp)
{case 0xed:key=4;
break;
case 0xdd:key=5;
break;
case 0xbd:key=6;
break;
}
while(temp!=0xf0)
{temp=P1;
temp=temp&0xf0;
//BELL=0;
}
BELL=1;
if(key==6)
{ delay(5);
if(key==6)
{BELL=0;
delay(50);
BELL=1;
cdbz++ ;
if(cdbz<=2)
{
dispdata(1,0x08,0x12,cdbz);
disp(2,5,0x00,0x10,kb) ;
}
else{
dispdata(5,0x05,0x10,cdbz);
disp(1,1,0x08,0x12,kb) ;
}
if(cdbz==2)
{
x24c02_write(0, qian);
delay();
x24c02_write(1, bai);
delay();
x24c02_write(2, shi);
delay();
x24c02_write(3, ge);
}
if(cdbz==4)
{
cdbz=-1;
disp(2,5,0x08,0x15,kb);
disp(2,5,0x06,0x13,kb);
cr4=c1/counter0;
cr3=cr4/1000;
cr2=cr4%1000/100;
cr1=cr4 %100/10;
cr0=cr4%10;
//dispdata(5,0x08,0x15,cr1);
//dispdata(5,0x05,0x16,cr0);
//dispdata(5,0x0b,0x14,cr2);
// dispdata(5,0x0f,0x13,cr3);
x24c02_write(8, cr3);
delay();
x24c02_write(9, cr2);
delay();
x24c02_write(10, cr1);
delay();
x24c02_write(11, cr0);
delay();
}
}
}
if(key==4)
{
if(cdbz==3)
{
disp(2,5,0x05,0x11,bd);
counter0=0;
TR0=1;
}
if (cdbz==0)
{TR1=1;
disp(2,5,0x05,0x11,bd);
}
}
if(key==5)
{
sdbz++;
if(sdbz==3)
sdbz=0;
dispdata(3,0x08,0x12,sdbz);
if(sdbz==2)
{ //qian1=i/1000;
// bai1=i%1000/100 ;
//shi1=i%100/10;
// ge1=i%10;
x24c02_write(4, qian1);
delay();
x24c02_write(5, bai1);
delay();
x24c02_write(6, shi1);
delay();
x24c02_write(7, ge1);
}
}
}
}
if(J2==0)
{delay(5);
if(J2==0)
{ TR0=1;
g++;
BELL=0;
delay(50);
BELL=1;
if(g==300)
{ g=0;
BELL=0;
delay(50);
BELL=1;
}
}
}
if(J3==0)
{delay(1000);
if(J3==0)
{
TR0=0;
TR1=0;
counter0=0;
//dispdata(5,0x0f,0x13,counter0);
//counter1=0;
//THO=;
/// TL0=;
// TH1=;
// TL1=;
}
}
if(cdbz==0)
{qian=x24c02_read(0);
bai=x24c02_read(1);
shi=x24c02_read(2);
ge=x24c02_read(3);
c1=1000*qian+100*bai+10*shi+ge;
}
dispdata(1,0x08,0x15,shi);
dispdata(1,0x05,0x16,ge);
dispdata(1,0x0b,0x14,bai);
dispdata(1,0x0f,0x13,qian);
if(sdbz==0)
{
qian1=x24c02_read(4);
bai1=x24c02_read(5);
shi1=x24c02_read(6);
ge1=x24c02_read(7);
}
dispdata(3,0x08,0x15,shi1);
dispdata(3,0x05,0x16,ge1);
dispdata(3,0x0b,0x14,bai1);
dispdata(3,0x0f,0x13,qian1);
qian2=g/1000;
bai2=g%1000/100 ;
shi2=g%100/10;
ge2=g%10;
dispdata(7,0x08,0x15,shi2);
dispdata(7,0x05,0x16,ge2);
dispdata(7,0x0b,0x14,bai2);
dispdata(7,0x0f,0x13,qian2);
disp(1,3,0x02,0x10,zs);
disp(1,1,0x02,0x10,cd);
disp(2,7,0x02,0x10,gs);
dispdata(1,0x0f,0x16,10);
dispdata(1,0x0b,0x17,11);
//dispdata(3,0x0f,0x15,12);
//dispdata(3,0x0e,0x16,13);
//dispdata(3,0x0d,0x17,11);
// cr3=x24c02_read(8);
//cr2=x24c02_read(9);
//cr1=x24c02_read(10);
// cr0=x24c02_read(11);
cr4=1000*cr3+100*cr2+10*cr1+cr0;
if(c1/(cr4*counter1)==0)
{TR1=0;
dispdata(5,0x08,0x15,2);
qg=1;
delay(500);
qg=0;
}
}
}
void timer0() interrupt 1
{TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
counter0++;
}
void timer1() interrupt 3
{TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
counter1++;
cp=~cp;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -