📄 controller.c
字号:
#include "zlg500.h"
sbit zlg500_RST=P1^4;
uchar code Nkey_a[6] = {0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xA5};
uchar code Nkey_b[6] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
main()
{ uchar idata tt[2];
uchar idata card_snr[4];
uchar idata size;
uchar idata bankdata[16];
long idata value=1;
uchar i,j;
zlg500_RST=1;
for(i=255;i>0;i--)
for(j=255;j>0;j--);
zlg500_RST=0;
for(i=255;i>0;i--)
for(j=255;j>0;j--);
spi_init();
EA=1;
i=mifs_config();
i=mifs_get_info(bankdata);
i=mifs_clr_control_bit();
i=mifs_set_control_bit();
// mifs_load_key(KEYA,5,Nkey_b);
while(1)
{
while(mifs_request(IDLE,tt)!=0);
if(mifs_anticoll(0,card_snr)!=0) continue;
if(mifs_select(card_snr,&size)!=0) continue;
// if(mifs_authentication(KEYA,5)!=0) continue;
if(mifs_authKey(KEYA,5,Nkey_b)!=0) continue;
bankdata[0]=0x10;
bankdata[4]=~0x10;
bankdata[8]=0x10;
for(i=1;i<4;i++)
{
bankdata[i]=0x00;
bankdata[4+i]=0xff;
bankdata[8+i]=0x00;
}
bankdata[12]=0x14;
bankdata[13]=~0x14;
bankdata[14]=0x14;
bankdata[15]=~0x14;
if(mifs_write(20,bankdata)!=0) continue;
if(mifs_check_write(card_snr,KEYA,20,bankdata)!=0) continue;
if(mifs_read(20,bankdata)!=0) continue;
if(mifs_restore(20)!=0) continue;
if(mifs_transfer(21)!=0)
{ i=0;
continue;
}
if(mifs_value(0xc0,20,&value,21)!=0)
{ i=0;
continue;
}
if(mifs_read(21,bankdata)!=0) continue;
mifs_halt();
if(mifs_write_E2(0x30,16,bankdata)!=0) continue;
mifs_clr_control_bit();
mifs_set_control_bit();
for(i=255;i>0;i--)
for(j=255;j>0;j--);
mifs_buzzer(198,20);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -