📄 lcm16864zk.c
字号:
if(RKEY==0)
{
while(1)
{if(RKEY==1) break;}
WritCommand(0x95);
i=~i;
if(i==1)
{
WritCommand(0x95);
WritData(0xa3);WritData(0xd9);
WritCommand(0x10);
}
else
{
WritCommand(0x95);
WritData(0xa3);WritData(0xce);
WritCommand(0x10);
}
}
}
WritCommand(0x95);
}
}
void AlarmRelay(void)
{
bit i=1;
WritCommand(0x01);
ShowPart7(); //接力报警:Y
ShowPart4();
while(1)
{
if(LKEY==0)
{
Delay_ms(10);
if(LKEY==0)
{
while(1)
{if(LKEY==1) break;}
if(i==1)
{
RobData=RobData|0x04;
}
else
{
RobData=RobData&0xfb;
}
}
break;
}
if(RKEY==0)
{
Delay_ms(10);
if(RKEY==0)
{
while(1)
{if(RKEY==1) break;}
WritCommand(0x95);
i=~i;
if(i==1)
{
WritCommand(0x95);
WritData(0xa3);WritData(0xd9);
WritCommand(0x10);
}
else
{
WritCommand(0x95);
WritData(0xa3);WritData(0xce);
WritCommand(0x10);
}
}
}
WritCommand(0x95);
}
}
void BlankLocal(void)
{
bit i=1;
WritCommand(0x01);
ShowPart8(); //封锁现场:Y
ShowPart4();
while(1)
{
if(LKEY==0)
{
Delay_ms(10);
if(LKEY==0)
{
while(1)
{if(LKEY==1) break;}
if(i==1)
{
RobData=RobData|0x08;
}
else
{
RobData=RobData&0xf7;
}
}
break;
}
if(RKEY==0)
{
Delay_ms(10);
if(RKEY==0)
{
while(1)
{if(RKEY==1) break;}
WritCommand(0x95);
i=~i;
if(i==1)
{
WritCommand(0x95);
WritData(0xa3);WritData(0xd9);
WritCommand(0x10);
}
else
{
WritCommand(0x95);
WritData(0xa3);WritData(0xce);
WritCommand(0x10);
}
}
WritCommand(0x95);
}
}
}
void EjectFog(void)
{
bit i=1;
WritCommand(0x01);
ShowPart9(); //喷射眠雾:Y
ShowPart4();
while(1)
{
if(LKEY==0)
{
Delay_ms(10);
if(LKEY==0)
{
while(1)
{if(LKEY==1) break;}
if(i==1)
{
RobData=RobData|0x10;
}
else
{
RobData=RobData&0xef;
}
}
break;
}
if(RKEY==0)
{
Delay_ms(10);
if(RKEY==0)
{
while(1)
{if(RKEY==1) break;}
WritCommand(0x95);
i=~i;
if(i==1)
{
WritCommand(0x95);
WritData(0xa3);WritData(0xd9);
WritCommand(0x10);
}
else
{
WritCommand(0x95);
WritData(0xa3);WritData(0xce);
WritCommand(0x10);
}
}
}
WritCommand(0x95);
}
}
void EmployeeNum(void)
{
uchar k=0,j;
uchar CodeN[4]={0,0,0,0};
WritCommand(0x01);
ShowPart10(); //员工编号 0
ShowPart1();
while(k<4)
{
if(LKEY==0)
{
Delay_ms(10);
if(LKEY==0)
{
CodeN[k]=j;
while(1)
{
if(LKEY==1) break;
}
break;
}
}
if(MKEY==0)
{
Delay_ms(5);
if(MKEY==0)
{
j++;
if(j>9) j=0;
WritData(0xa3);
WritData(0xb0+j); //显示下个数
WritCommand(0x10);
while(1)
{
if(MKEY==1) break;
}
}
}
if(RKEY==0)
{
Delay_ms(10); //延时去抖动
if(RKEY==0)
{
CodeN[k]=j;
WritCommand(0x14);
k++;
if(k>=4)
{k=0;WritCommand(0x94);}
WritData(0xa3);
WritData(0xb0);
WritCommand(0x10);
j=0;
while(1)
{
if(RKEY==1) break;
}
}
}
ShowTime();
WritCommand(0x94+k);
Delay_ms(10);
}
k=(CodeN[0]<<4)+CodeN[1];
pdx++;
*pdx=k;
pdx++;
k=(CodeN[2]<<4)+CodeN[3];
*pdx=k;
}
void AnlNum(void) //最少与数
{
uchar k=0,j;
WritCommand(0x01);
ShowPart11(); //最少与数 0
ShowPart1();
while(k<2)
{
if(LKEY==0)
{
Delay_ms(10);
if(LKEY==0)
{
pdx++;
*pdx=j;
while(1)
{
if(LKEY==1) break;
}
break;
}
}
if(MKEY==0)
{
Delay_ms(5);
if(MKEY==0)
{
j++;
if(j>9) j=0;
WritData(0xa3);
WritData(0xb0+j); //显示下个数
WritCommand(0x10);
while(1)
{
if(MKEY==1) break;
}
}
}
if(RKEY==0)
{
Delay_ms(10); //延时去抖动
if(RKEY==0)
{
WritCommand(0x96);
WritData(0xa3);
WritData(0xb0);
WritCommand(0x10);
}
}
ShowTime();
WritCommand(0x95);
Delay_ms(10);
}
}
void AnlSet(void) //逻辑关系
{
bit i=1;
WritCommand(0x01);
ShowPart12(); //逻辑关系: A
ShowPart4();
while(1)
{
if(LKEY==0)
{
Delay_ms(10);
if(LKEY==0)
{
pdx++;
*pdx=i;
while(1)
{
if(LKEY==1) break;
}
break;
}
}
if(RKEY==0)
{
Delay_ms(10); //延时去抖动
if(RKEY==0)
{
WritCommand(0x95);
i=~i;
if(i==1)
{
WritCommand(0x95);
WritData(0xa6);WritData(0xa1);
WritCommand(0x10);
}
else
{
WritCommand(0x95);
WritData(0xa6);WritData(0xa2);
WritCommand(0x10);
}
}
}
ShowTime();
WritCommand(0x95);
Delay_ms(10);
}
}
void AnlTime(void) //与等待时间
{
uchar j=0,k=0;
uchar CodeN[3]={0,0,0};
WritCommand(0x01);
ShowPart13(); //与等时间:000S
ShowPart1();
WritCommand(0x94);
while(k<3)
{
if(LKEY==0)
{
Delay_ms(10);
if(LKEY==0)
{
CodeN[k]=j;
while(1)
{
if(LKEY==1) break;
}
break;
}
}
if(MKEY==0)
{
Delay_ms(5);
if(MKEY==0)
{
j++;
if(j>9) j=0;
WritData(0xa3);
WritData(0xb0+j); //显示下个数
WritCommand(0x10);
while(1)
{
if(MKEY==1) break;
}
}
}
if(RKEY==0)
{
Delay_ms(10); //延时去抖动
if(RKEY==0)
{
CodeN[k]=j;
WritCommand(0x14);
k++;
if(k>=3)
{k=0;WritCommand(0x94);}
WritData(0xa3);
WritData(0xb0);
WritCommand(0x10);
j=0;
while(1)
{
if(RKEY==1) break;
}
}
}
ShowTime();
WritCommand(0x94+k);
Delay_ms(10);
}
k=CodeN[0]*100+CodeN[1]*10+CodeN[2];
pdx++;
*pdx=k;
}
void RobSet1(void) //填写 不填 继续
{
uchar i;
WritCommand(0x0c);
ShowPart14();
while(1)
{
if(LKEY==0)
{
Delay_ms(10);
if(LKEY==0)
{
while(1)
{
if(LKEY==1) break;
}
pdx=0x0100;
i=*pdx;
*pdx=i+1;
break;
}
}
if(MKEY==0)
{
Delay_ms(10);
if(MKEY==0)
{
RobSetNext();
while(1)
{
if(LKEY==1) break;
}
break;
}
}
if(RKEY==0)
{
Delay_ms(10); //延时去抖动
if(RKEY==0)
{
pdx=0x0100;
i=*pdx;
*pdx=i+1;
RobSetNext();
}
}
ShowTime();
Delay_ms(10);
}
}
////}////////////////////////////////////////////防盗设置
void StealSet(void)
{
uchar j;
// uchar CodeN[2];
WritCommand(0x01); //清零
WritCommand(0x0c);
WritCommand(0x92);
WritData(0xb7);WritData(0xc0);WritData(0xb5);WritData(0xc1); //防盗设置
WritData(0xc9);WritData(0xe8);WritData(0xd6);WritData(0xc3);
ShowPart5(); //进入 另选
while(1)
{
if(RKEY==0)
{
while(1){if(RKEY==1) break; }
break;
}
if(LKEY==0)
{
while(1) {if(LKEY==1)break;}
RobData=0x00;
TeleAlarm();
WhistleAlarm();
AlarmRelay();
BlankLocal();
EjectFog();
pdx=0x0201;
*pdx=RobData;
j=EjectorNum();
StealSet1(j);
break;
}
Delay_ms(10);
ShowTime();
}
}
void StealSet1(uchar num)
{
uchar i,j;
WritCommand(0x0c); //填写 不填 继续
ShowPart14();
while(1)
{
if(LKEY==0)
{
Delay_ms(10);
if(LKEY==0)
{
pdx=0x0200;
i=*pdx;
*pdx=i+1;
pdx=0x0202+i+1;
*pdx=num;
while(1)
{
if(LKEY==1) break;
}
break;
}
}
if(MKEY==0)
{
Delay_ms(10);
if(MKEY==0)
{
StealSet();
while(1)
{
if(LKEY==1) break;
}
break;
}
}
if(RKEY==0)
{
Delay_ms(10); //延时去抖动
if(RKEY==0)
{
pdx=0x0200;
i=*pdx;
*pdx=i+1;
j=EjectorNum();
pdx=0x0202+i;
*pdx=j;
}
}
ShowTime();
Delay_ms(10);
}
}
uchar EjectorNum(void)
{
uchar k=0,j=0;
uchar CodeN[2]={0,0};;
WritCommand(0x01);
WritCommand(0x0e);
ShowPart2(); //发射器编号:00
ShowPart1();
while(k<2)
{
if(LKEY==0)
{
Delay_ms(10);
if(LKEY==0)
{
CodeN[k]=j;
while(1)
{
if(LKEY==1) break;
}
k++;
}
}
if(MKEY==0)
{
Delay_ms(5);
if(MKEY==0)
{
j++;
if(j>9) j=0;
WritData(0xa3);
WritData(0xb0+j); //显示下个数
WritCommand(0x10);
while(1)
{
if(MKEY==1) break;
}
}
}
if(RKEY==0)
{
Delay_ms(10); //延时去抖动
if(RKEY==0)
{
CodeN[k]=j;
WritCommand(0x14);
k++;
if(k>=2)
{k=0;WritCommand(0x96);}
WritData(0xa3);
WritData(0xb0);
WritCommand(0x10);
j=0;
while(1)
{
if(RKEY==1) break;
}
}
}
ShowTime();
WritCommand(0x96+k);
Delay_ms(10);
}
k=CodeN[0]*16+CodeN[1];
k=0x20+k;
return k;
}
//////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////放火设置
void FireSet(void)
{
uchar j;
WritCommand(0x01); //清零
WritCommand(0x0c);
WritCommand(0x92);
WritData(0xb7);WritData(0xc0);WritData(0xbB);WritData(0xF0); //防火设置
WritData(0xc9);WritData(0xe8);WritData(0xd6);WritData(0xc3);
ShowPart5();
while(1)
{
if(RKEY==0)
{
while(1){if(RKEY==1) break; }
// CalenSet();
break;
}
if(LKEY==0)
{
while(1) {if(LKEY==1)break;}
RobData=0x00;
WritCommand(0x0e);
TeleAlarm();
WhistleAlarm();
AlarmRelay();
EjectWater();
EjectSand();
pdx=0x0301;
*pdx=RobData;
j=EjectorNum();
FireSet1(j);
break;
}
Delay_ms(10);
ShowTime();
}
}
void EjectWater(void)
{
bit i=1;
WritCommand(0x01);
ShowPart15(); //自动喷水:Y
ShowPart4();
while(1)
{
if(LKEY==0)
{
Delay_ms(10);
if(LKEY==0)
{
while(1)
{if(LKEY==1) break;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -