📄 carddeal.c
字号:
}
}
return 2;
}
/***************************************************/
/*********更改权限**********************************/
/***************************************************/
void changevip()
{
ulong i;
uchar buf;
for(i=0; i<nvip*5; i++)
{
if(i == addrbuf)
{
write040pre();
write040((i+0x70000),card_buf[4]);
}
else
{
buf = read040(i);
write040pre();
write040((i+0x70000),buf);
}
}
for(i=0x2000; i<(0x2000+nnom*5); i++)
{
buf = read040(i);
write040pre();
write040((i+0x70000),buf);
}
for(i=0x4000; i<(0x4000+nyvip*5); i++)
{
buf = read040(i);
write040pre();
write040((i+0x70000),buf);
}
for(i=0x6000; i<(0x6000+nynom*5); i++)
{
buf = read040(i);
write040pre();
write040((i+0x70000),buf);
}
for(i=0x8000; i<0x8050; i++)
{
buf = read040(i);
write040pre();
write040((i+0x70000),buf);
}
for(i=0x9000; i<0x9348; i++)
{
buf = read040(i);
write040pre();
write040((i+0x70000),buf);
}
erasesector040(0x0000);
for(i=0; i<nvip*5; i++)
{
buf = read040(i+0x70000);
write040pre();
write040(i,buf);
}
for(i=0x2000; i<(0x2000+nnom*5); i++)
{
buf = read040(i+0x70000);
write040pre();
write040(i,buf);
}
for(i=0x4000; i<(0x4000+nyvip*5); i++)
{
buf = read040(i+0x70000);
write040pre();
write040(i,buf);
}
for(i=0x6000; i<(0x6000+nynom*5); i++)
{
buf = read040(i+0x70000);
write040pre();
write040(i,buf);
}
for(i=0x8000; i<0x8050; i++)
{
buf = read040(i+0x70000);
write040pre();
write040(i,buf);
}
for(i=0x9000; i<0x9348; i++)
{
buf = read040(i+0x70000);
write040pre();
write040(i,buf);
}
FLAG1 |= gb_era7;
}
/***************************************************/
/****增加正式卡号***********************************/
/***************************************************/
void card_addvip()
{
if(FLAG & gb_addvip)
{
uchar i;
ulong addr39;
FLAG &= ~gb_addvip;
if(nvip < 500)
{
i = cardexist(0x0000, nvip);
if(i == 0)
{
set_par_re();
}
else if(i == 1)
{
set_par_re();
FLAG |= gb_tx;
uart0_tx();
changevip();
}
else if(i == 2)
{
addr39 = nvip*5;
for(i=0; i<5; i++)
{
write040pre();
write040(addr39,card_buf[i]);
addr39++;
}
set_par_re();
nvip++;
FLAG1 |= gb_flashw;
}
}
else
{
set_tx();
TX_DATA[7] = 0X45;
TX_DATA[8] = 0X32;
TX_DATA[9] = 0X30;
TX_DATA[10] = 0X30;
TX_DATA[11] = 0X30;
TX_DATA[12] = 0X30;
TX_DATA[13] = 0X46;
TX_DATA[14] = 0X44;
TX_DATA[15] = 0X39;
TX_DATA[16] = 0X46;
TX_DATA[17] = 0X0D;
tx_len = 18;
FLAG |= gb_tx;
}
}
}
/************************************************************/
/****增加巡更卡号********************************************/
/************************************************************/
void card_addnom()
{
if(FLAG & gb_addnom)
{
FLAG &= ~gb_addnom;
uchar i;
ulong addr39;
if(nnom < 500)
{
i = cardexist(0x2000, nnom);
if(i == 2)
{
addr39 = 0x2000+nnom*5;
for(i=0; i<5; i++)
{
write040pre();
write040(addr39,card_buf[i]);
addr39++;
}
nnom++;
FLAG1 |= gb_flashw;
}
set_par_re();
}
else
{
set_tx();
TX_DATA[7] = 0X45;
TX_DATA[8] = 0X32;
TX_DATA[9] = 0X30;
TX_DATA[10] = 0X30;
TX_DATA[11] = 0X30;
TX_DATA[12] = 0X30;
TX_DATA[13] = 0X46;
TX_DATA[14] = 0X44;
TX_DATA[15] = 0X39;
TX_DATA[16] = 0X46;
TX_DATA[17] = 0X0D;
tx_len = 18;
FLAG |= gb_tx;
}
}
}
/**************************************************/
/***********删除卡号处理程序***********************/
/**************************************************/
void deldeal()
{
ulong addr39;
uchar buf;
for(addr39=0; addr39<nvip*5; addr39++)
{
if(addr39 >= (addrbuf-4))
{
buf = read040(addr39+5);
}
else
{
buf = read040(addr39);
}
write040pre();
write040((addr39+0x70000),buf);
}
for(addr39=0x2000; addr39<(0x2000+nnom*5); addr39++)
{
if(addr39 >= (addrbuf-4))
{
buf = read040(addr39+5);
}
else
{
buf = read040(addr39);
}
write040pre();
write040((addr39+0x70000),buf);
}
for(addr39=0x8000; addr39<0x8050; addr39++)
{
buf = read040(addr39);
write040pre();
write040((addr39+0x70000),buf);
}
for(addr39=0x9000; addr39<0x9348; addr39++)
{
buf = read040(addr39);
write040pre();
write040((addr39+0x70000),buf);
}
erasesector040(0x0000);
for(addr39=0; addr39<nvip*5; addr39++)
{
buf = read040(addr39+0x70000);
write040pre();
write040(addr39,buf);
}
for(addr39=0x2000; addr39<(0x2000+nnom*5); addr39++)
{
buf = read040(addr39+0x70000);
write040pre();
write040(addr39,buf);
}
for(addr39=0x8000; addr39<0x8050; addr39++)
{
buf = read040(addr39+0x70000);
write040pre();
write040(addr39,buf);
}
for(addr39=0x9000; addr39<0x9348; addr39++)
{
buf = read040(addr39+0x70000);
write040pre();
write040(addr39,buf);
}
FLAG1 |= gb_era7;
}
/**************************************************/
/****删除卡号处理程序******************************/
/**************************************************/
void card_delvip()
{
if(FLAG & gb_delvip)
{
FLAG &= ~gb_delvip;
uchar i;
i = cardexist(0x0000, nvip);
if(i == 2)
{
i = cardexist(0x2000, nvip);
if(i == 2)
{
set_par_re();
}
else
{
nnom--;
FLAG1 |= gb_flashw;
set_par_re();
FLAG |= gb_tx;
uart0_tx();
deldeal();
}
}
else
{
nvip--;
FLAG1 |= gb_flashw;
set_par_re();
FLAG |= gb_tx;
uart0_tx();
deldeal();
}
}
}
/**************************************************/
/****删除所有卡号**********************************/
/**************************************************/
void card_delnom()
{
if(FLAG & gb_delnom)
{
FLAG &= ~gb_delnom;
ulong i;
uchar buf;
for(i=0x8000; i<0x8050; i++)
{
buf = read040(i);
write040pre();
write040((i+0x70000),buf);
}
for(i=0x9000; i<0x9348; i++)
{
buf = read040(i);
write040pre();
write040((i+0x70000),buf);
}
erasesector040(0x0000);
for(i=0x8000; i<0x8050; i++)
{
buf = read040(i+0x70000);
write040pre();
write040(i,buf);
}
for(i=0x9000; i<0x9348; i++)
{
buf = read040(i+0x70000);
write040pre();
write040(i,buf);
}
nvip = 0;
nnom = 0;
FLAG1 |= gb_flashw;
FLAG1 |= gb_era7;
}
}
/******************************************************/
/********更改遥控器正式卡权限**************************/
/******************************************************/
void changeyvip()
{
ulong i;
uchar buf;
for(i=0; i<nvip*5; i++)
{
buf = read040(i);
write040pre();
write040((i+0x70000),buf);
}
for(i=0x2000; i<(0x2000+nnom*5); i++)
{
buf = read040(i);
write040pre();
write040((i+0x70000),buf);
}
for(i=0x4000; i<(0x4000+nyvip*5); i++)
{
if(i == addrbuf)
{
write040pre();
write040((i+0x70000),card_buf[4]);
}
else
{
buf = read040(i);
write040pre();
write040((i+0x70000),buf);
}
}
for(i=0x6000; i<(0x6000+nynom*5); i++)
{
buf = read040(i);
write040pre();
write040((i+0x70000),buf);
}
for(i=0x8000; i<0x8050; i++)
{
buf = read040(i);
write040pre();
write040((i+0x70000),buf);
}
for(i=0x9000; i<0x9348; i++)
{
buf = read040(i);
write040pre();
write040((i+0x70000),buf);
}
erasesector040(0x0000);
for(i=0; i<nvip*5; i++)
{
buf = read040(i+0x70000);
write040pre();
write040(i,buf);
}
for(i=0x2000; i<(0x2000+nnom*5); i++)
{
buf = read040(i+0x70000);
write040pre();
write040(i,buf);
}
for(i=0x4000; i<(0x4000+nyvip*5); i++)
{
buf = read040(i+0x70000);
write040pre();
write040(i,buf);
}
for(i=0x6000; i<(0x6000+nynom*5); i++)
{
buf = read040(i+0x70000);
write040pre();
write040(i,buf);
}
for(i=0x8000; i<0x8050; i++)
{
buf = read040(i+0x70000);
write040pre();
write040(i,buf);
}
for(i=0x9000; i<0x9348; i++)
{
buf = read040(i+0x70000);
write040pre();
write040(i,buf);
}
FLAG1 |= gb_era7;
}
/*****************************************************/
/********增加遙控器正式卡號***************************/
/****储存的地址为 0x4000-0x6000***********************/
/*****************************************************/
void card_addyvip()
{
if(FLAG2 & gb_addyvip)
{
uchar i;
ulong addr39;
FLAG2 &= ~gb_addyvip;
if(nyvip < 500)
{
i = cardexist(0x4000, nyvip);
if(i == 0)
{
set_par_re();
}
else if(i == 1)
{
set_par_re();
FLAG |= gb_tx;
uart0_tx();
changeyvip();
}
else if(i == 2)
{
addr39 = (0x4000+nyvip*5);
for(i=0; i<5; i++)
{
write040pre();
write040(addr39,card_buf[i]);
addr39++;
}
set_par_re();
nyvip++;
FLAG1 |= gb_flashw;
}
}
}
}
/*****************************************************/
/********增加遙控器巡更卡號***************************/
/****储存的地址为 0x6000-0x8000***********************/
/*****************************************************/
void card_addynom()
{
if(FLAG2 & gb_addynom)
{
FLAG2 &= ~gb_addynom;
uchar i;
ulong addr39;
if(nynom < 500)
{
i = cardexist(0x6000, nynom);
if(i == 2)
{
addr39 = 0x6000+nynom*5;
for(i=0; i<5; i++)
{
write040pre();
write040(addr39,card_buf[i]);
addr39++;
}
nynom++;
FLAG1 |= gb_flashw;
}
set_par_re();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -