📄 save.c
字号:
#include "reg52.H"
#include "intrins.h"
#define uchar unsigned char
#define uint unsigned int
#define _Nop() _nop_()
sbit P26=P2^6;
sbit P27=P2^7;
sbit P25=P2^5;
sbit P24=P2^4;
sbit P23=P2^3;
sbit P22=P2^2;
sbit P21=P2^1;
sbit P20=P2^0;
sbit WORK1=P3^7;
sbit SPEAKE1=P1^5;
sbit LED=P1^7;
uchar jiyi_buffer1[13];
extern uchar MODE1,HIH,HIL,LOH,LOL,LENG_HI,LENG_LO;
bit work_start0;
extern void delay(uint dd);
extern bit JIYI_SendStr16K( uchar sla, uchar suba, uchar *s, uchar no );
extern bit JIYI_RS16K ( uchar sla, uchar suba, uchar *s, uchar no );
/////////////////////////////
////////////////////////
uchar scanf(void )
{
uchar keyword;
P2=0XF0;
delay(1);
if(P24==0)
{
delay(7);
// do{ ;}while(P34==1);
// delay(2);
while(P24!=1)
{
P2=0X0F;
// delay(10);
if(P20==0){keyword=0x00;SPEAKE1=0;delay(30);SPEAKE1=1;P24=1;work_start0=1;return keyword;}
if(P21==0){keyword=0x01;SPEAKE1=0;delay(30);SPEAKE1=1;P24=1;return keyword;}
if(P22==0){keyword=0x02;SPEAKE1=0;delay(30);SPEAKE1=1;P24=1;return keyword;}
if(P23==0){keyword=0x03;SPEAKE1=0;delay(30);SPEAKE1=1;P24=1;return keyword;}
}
}
if(P25==0)
{
delay(7);
//do{ ;}while(P35==1);
// delay(2);
while(P25!=1)
{
P2=0X0F;
if(P20==0){keyword=0x04;SPEAKE1=0;delay(30);SPEAKE1=1;P25=1;return keyword;}
if(P21==0){keyword=0x05;SPEAKE1=0;delay(30);SPEAKE1=1;P25=1;return keyword;}
if(P22==0){keyword=0x06;SPEAKE1=0;delay(30);SPEAKE1=1;P25=1;return keyword;}
if(P23==0){keyword=0x07;SPEAKE1=0;delay(30);SPEAKE1=1;P25=1;return keyword;}
}
}
if(P26==0)
{
delay(7);
// do{ ;}while(P36==1);
//delay(2);
while(P26!=1)
{
P2=0x0F;
if(P20==0){keyword=0x08;SPEAKE1=0;delay(30);SPEAKE1=1;P26=1;return keyword;}
if(P21==0){keyword=0x09;SPEAKE1=0;delay(30);SPEAKE1=1;P26=1;return keyword;}
if(P22==0){keyword=0x0a;SPEAKE1=0;delay(30);SPEAKE1=1;P26=1;return keyword;}
if(P23==0){keyword=0x0b;SPEAKE1=0;delay(30);SPEAKE1=1;P26=1;return keyword;}
}
}
if(P27==0)
{
delay(7);
// delay(2);
while(P27!=1)
{
P2=0x0F;
if(P20==0)
{keyword=0x0c;SPEAKE1=0;delay(30);SPEAKE1=1;P27=1;return keyword;}
if(P21==0)
{keyword=0x0d;SPEAKE1=0;delay(30);SPEAKE1=1;P27=1;return keyword;}
if(P22==0)
{keyword=0x0e;SPEAKE1=0;delay(30);SPEAKE1=1;P27=1;return keyword;}
if(P23==0)
{keyword=0x0f;SPEAKE1=0;delay(30);SPEAKE1=1;P27=1;return keyword;}
}
}
}
////////////////////////////////////////////
/////////////////////////////////////////////////
void ERR(void)
{
SPEAKE1=0;
delay(50);
SPEAKE1=1;
delay(10);
SPEAKE1=0;
delay(50);
SPEAKE1=1;
}
/////////////////////////////////////////////////////
void set_select(uchar i,uchar n)
{ uchar aa;uchar keyword1;uchar k,u,l;
aa=i;
u=n*13;
TP: switch(aa)
{ case 1:{MODE1=0X01;
TOP30: keyword1=scanf( );
if(P2!=0xf0)
{ if(keyword1>=0&&keyword1<=0x02)
{HIH=keyword1;HIL=0X12;LOH=0X11; LOL=0X11;LENG_HI=0X11;LENG_LO=0X11;
delay(80);
goto TOP50;
}
else { ERR( );goto TOP30;}
}goto TOP30;
TOP50: keyword1=scanf( );
if(P2!=0xf0)
{ if(keyword1>=0&&keyword1<=0X0F)
{HIL=keyword1;LOH=0X12; LOL=0X11;LENG_HI=0X11;LENG_LO=0X11;
delay(80);
goto TOP70;
}
else { ERR( );goto TOP50;}
}goto TOP50;
TOP70: keyword1=scanf( );
if(P2!=0xf0)
{ if(keyword1>=0&&keyword1<=0x0f)
{ LOH=keyword1;LOL=0X12;LENG_HI=0X11;LENG_LO=0X11;
delay(80);
goto TOP90;
}
else { ERR( );goto TOP70;}
}goto TOP70;
// else {goto TOP1;}
TOP90: keyword1=scanf( );
if(P2!=0xf0)
{ if(keyword1>=0&&keyword1<=0x0f)
{LOL=keyword1;LENG_HI=0X12;LENG_LO=0X11;
delay(80);
goto TOP100;
}
else { ERR( );goto TOP90;}
}goto TOP90;
TOP100: keyword1=scanf( );
if(P2!=0xf0)
{ if(keyword1>=0&&keyword1<=0x0f)
{LENG_HI=keyword1;LENG_LO=0X12;
delay(80);
goto TOP110;
}
else { ERR( );goto TOP100;}
}goto TOP100;
TOP110: keyword1=scanf( );
if(P2!=0xf0)
{ if(keyword1>=0&&keyword1<=0x0f)
{LENG_LO=keyword1;
delay(80);
goto TOP120;
}
else { ERR( );goto TOP110;}
}goto TOP110;
TOP120:
{
jiyi_buffer1[0]=(HIH<<4)|HIL;
jiyi_buffer1[1]=(LOH<<4)|LOL;
jiyi_buffer1[2]=(LENG_HI<<4)|LENG_LO;
jiyi_buffer1[12]=MODE1;
for(k=0+u,l=0;k<3+u;k++,l++)
{JIYI_SendStr16K(0xa0, 0x00+k,&jiyi_buffer1[l] , 1 );delay(10);}
}
JIYI_SendStr16K(0xa0, 0x00+k+0x03,&jiyi_buffer1[12] , 1 );
break;
}
case 2:
{MODE1=0X02;
TOP31: keyword1=scanf( );
if(P2!=0xf0)
{ if(keyword1>=0&&keyword1<=0x02)
{HIH=keyword1;HIL=0X12;LOH=0X11; LOL=0X11;LENG_HI=0X11;LENG_LO=0X11;
delay(80);
goto TOP51;
}
else { ERR( );goto TOP31;}
}goto TOP31;
TOP51: keyword1=scanf( );
if(P2!=0xf0)
{ if(keyword1>=0&&keyword1<=0X0F)
{HIL=keyword1;LOH=0X12; LOL=0X11;LENG_HI=0X11;LENG_LO=0X11;
delay(80);
goto TOP71;
}
else { ERR( );goto TOP51;}
}goto TOP51;
TOP71: keyword1=scanf( );
if(P2!=0xf0)
{ if(keyword1>=0&&keyword1<=0x0f)
{ LOH=keyword1;LOL=0X12;LENG_HI=0X11;LENG_LO=0X11;
delay(80);
goto TOP91;
}
else { ERR( );goto TOP71;}
}goto TOP71;
// else {goto TOP1;}
TOP91: keyword1=scanf( );
if(P2!=0xf0)
{ if(keyword1>=0&&keyword1<=0x0f)
{LOL=keyword1;LENG_HI=0X12;LENG_LO=0X11;
delay(80);
goto TOP101;
}
else { ERR( );goto TOP91;}
}goto TOP91;
TOP101: keyword1=scanf( );
if(P2!=0xf0)
{ if(keyword1>=0&&keyword1<=0x0f)
{LENG_HI=keyword1;LENG_LO=0X12;
delay(80);
goto TOP102;
}
else { ERR( );goto TOP101;}
}goto TOP101;
TOP102: keyword1=scanf( );
if(P2!=0xf0)
{ if(keyword1>=0&&keyword1<=0x0f)
{LENG_LO=keyword1;
delay(80);
goto TOP112;
}
else { ERR( );goto TOP102;}
}goto TOP102;
TOP112:
{
jiyi_buffer1[3]=(HIH<<4)|HIL;
jiyi_buffer1[4]=(LOH<<4)|LOL;
jiyi_buffer1[5]=(LENG_HI<<4)|LENG_LO;
jiyi_buffer1[12]=MODE1;
for(k=3+u,l=3;k<6+u;k++,l++)
{JIYI_SendStr16K(0xa0, 0x00+k,&jiyi_buffer1[l] , 1 );delay(10);}
}
JIYI_SendStr16K(0xa0, 0x00+k+0x03,&jiyi_buffer1[12] , 1 );
break;
}
case 3: {MODE1=0X03;
TOP32: keyword1=scanf( );
if(P2!=0xf0)
{ if(keyword1>=0&&keyword1<=0x02)
{HIH=keyword1;HIL=0X12;LOH=0X11; LOL=0X11;LENG_HI=0X11;LENG_LO=0X11;
delay(80);
goto TOP52;
}
else { ERR( );goto TOP32;}
}goto TOP32;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -