📄 yibiao_ash.c
字号:
#pragma large
#include "reg52.h"
#include <intrins.h>
#include <absacc.h>
#include <string.h>
#include <ctype.h>
#include <D:\comm_d\comm_pub.H>
#include <D:\comm_d\Jl2key.h>
#include <D:\comm_d\yibiao_p.h>
#include <D:\comm_d\zk.h>
typedef unsigned int uint;
typedef unsigned long ulong;
typedef unsigned char uchar;
typedef unsigned long nlong;
main()
{
/*********主程序开始**********/
bit debug=0;
unsigned char xdata pd=0,i;
unsigned long xdata abc;
unsigned char xdata *pk;
unsigned char car_num=0;
uint tj=0,tj2;
bit car_kk=0;
//dog();
WP=1;
ZK_CS=1;
XBYTE[0xc007]=1;
init();
init_xs();
dog();
/*for(abc=0;abc<263;abc++)
flash[abc]=0xff;
for(abc=0;abc<4096;abc++)
we_main(flash,263,abc,0);
*/
read_main(flash,10,1859,0);
if ((flash[0]==0xff)&&(flash[1]==0xff)&&(flash[2]==0xff)&&(flash[3]==0xff)&&(flash[4]==0xff)&&(flash[5]==0xff))
{
xs_hhz(0,0,CXYX);
xs_hhz(2,0,JYJCSH);
dog();
for(abc=0;abc<263;abc++)
flash[abc]=0;
we_main(flash,263,1859,0);
we_main(flash,263,1860,0);
for(abc=0;abc<10;abc++)
we_main(flash,263,2000+abc,0);
dog();
flash[0]=0;
flash[1]=0;
dog();
we_main(flash,2,3076,0);
we_main(flash,2,1028,0);
we_main(flash,2,1041,0);
dog();
we_main(flash,2,1053,0);
we_main(flash,2,1855,0);
dog();
we_main(flash,2,1857,0);
we_main(flash,2,1856,262);
second=0;
minutes=0x46;
hour=0x12;
day=0x18;
month=0x06;
year=0x02;
settime();
dl(500);
}
else
{
dog();
read_main(flash,10,1860,0);
if ((flash[0]==0xff)&&(flash[1]==0xff)&&(flash[2]==0xff)&&(flash[3]==0xff)&&(flash[4]==0xff)&&(flash[5]==0xff))
{
xs_hhz(0,0,CXYX);
xs_hhz(2,0,JYJCSH);
dog();
for(abc=0;abc<263;abc++)
flash[abc]=0;
we_main(flash,263,1859,0);
we_main(flash,263,1860,0);
for(abc=0;abc<10;abc++)
we_main(flash,263,2000+abc,0);
flash[0]=0;
flash[1]=0;
dog();
we_main(flash,2,3076,0);
we_main(flash,2,1028,0);
we_main(flash,2,1041,0);
dog();
we_main(flash,2,1053,0);
we_main(flash,2,1855,0);
dog();
we_main(flash,2,1857,0);
we_main(flash,2,1856,262);
second=0;
minutes=0x46;
hour=0x12;
day=0x18;
month=0x06;
year=0x02;
settime();
dl(500);
}
}
clear();
// read_main(flash,256,0,0);
// read_main(flash,256,1,0);
// read_main(flash,256,2,0);
/*read_main(flash,256,0,0);
for(abc=0;abc<128;abc++)
flash[abc]=1;
we_main(flash,128,0,128);
read_main(flash,256,0,0);
for(abc=0;abc<128;abc++)
flash[abc]=2;
we_main(flash,128,0,0);
read_main(flash,256,0,0);
read_main(flash,256,1,0);
for(abc=0;abc<128;abc++)
flash[abc]=3;
we_main(flash,128,1,128);
read_main(flash,256,1,0);
for(abc=0;abc<128;abc++)
flash[abc]=4;
we_main(flash,128,1,0);
read_main(flash,256,1,0);
we_main(flash,256,1859,0);
we_main(flash,256,1861,0);
*/
/* for(abc=0;abc<263;abc++)
flash[abc]=0;
for(abc=0;abc<4096;abc++)
we_main(flash,263,abc,0);
*/
/* trade_record_save=0;
while(1)
{
trade_record(5);
if (trade_record_save>1)
send_trade_record(trade_record_save-1);
//for(abc=0;abc<128;abc++)
// ftps[abc]=abc;
//trade_record_flash(r252);
//trade_record_flash(ftps);
tj2=trade_record_save;
tj=tj2/1000;
tj2=tj2-tj*1000;
xs_shu(0,0,yi_1+tj*8);
tj=tj2/100;
tj2=tj2-tj*100;
xs_shu(0,10,yi_1+tj*8);
tj=tj2/10;
tj2=tj2-tj*10;
xs_shu(0,20,yi_1+tj*8);
xs_shu(0,30,yi_1+tj2*8);
dl(100);
}
*/
comm_status=0;
ssfl=0;
dyjy=0;
jy_xin=0;
xs_hhz(0,0,XTCSH1);
xs_hhz(2,0,XTCSH2);
abc=0;
pddc=0;
huakuang(6,8,0);
cuorse(10);
dl(2000);
while(1)
{
dey=send_jl(0,0xa0);
if (dey==0)
break;
abc++;
if (abc=100)
break;
}
cuorse(40);
dl(600);
cuorse(90);
if (power_init())
{
clear();
xs_hhz(0,0,SJDS);
xs_hhz(2,0,XTCSHCC);
while(1)
{
dog();
}
;
}
//SKFSIC=1;
cuorse(123);
dog();
clear();
xs_hhz(0,0,XTZJ1);
xs_hhz(2,0,XTZJ2);
huakuang(6,8,0);
cuorse(10);
if (SKFSIC==0)
psam1_reset();
dog();
getVer();
cuorse(40);
if (SKFSIC==0)
{
card_err_state=read_psam_0015_file();
if (card_err_state!=0)
{
clear();
xs_hhz(0,8,PSAMER);
an_key_back();
goto start;
}
}
cuorse(90);
dl(500);
de30ms();
if (SKFSIC==0)
{
card_err_state=rd_terminal();
if (card_err_state!=0)
{
clear();
xs_hhz(0,8,PSAMER);
an_key_back();
goto start;
}
}
cuorse(123);
lw:
clear();
XTLW_F=1;
xs_hhz(0,0,XTLW1);
xs_hhz(2,0,XTLW2);
huakuang(6,8,0);
cuorse(10);
dog();
while(1)
{
main_comm();
if (COMM_CS==3)
{
clear();
xs_hhz(0,0,LWSB1);
xs_hhz(2,0,LWSB2);
while(1)
{
key=getkey();
if (key=='k')
{
NET=1;
goto start1;
}
if (key=='l')
{
COMM_CS=0;
goto lw;
}
dog();
}
}
if (XTLW_F==0)
{
NET=0;
break;
}
}
cuorse(40);
dl(600);
cuorse(90);
dl(500);
cuorse(123);
dog();
start1:
huakuang(6,8,0);
if (NET)
xs_shu(6,2,yi_1+12*8);
start:
xs_time();
clear();
/* for(abc=0;abc<263;abc++)
flash[abc]=0;
we_main(flash,263,1855,0);
*/
if (SKFSIC==1)
{
ygkjycz(0);
}
if (veraa[6]==0)
{
clear();
xs_hhz(2,8,YZTYXX);
while (1)
{
getVer();
dog();
if (veraa[6]!=0)
{
zhan_msg_change();
break;
}
xs_time();
}
}
if (veraa[5]==0)
{
clear();
xs_hhz(1,8,YPYJWXZ);
while(1)
{
getVer();
if (veraa[5]!=0)
{
key=0xff;
yp_download_flag=1;
yj_change();
break;
}
xs_time();
}
}
pd=0;/*记录密码验证的次数*/
//youjia[0]=0x03;
//youjia[1]=0x12;
clear();
car_num=0;
xs_hhz(0,40,JYS);
xs_hhz(2,0,FR);
xs_hhz(4,16,ICK);
while(1)
{
key=getkey();
i=XBYTE[0xc010];
if ((i&0x04)==0x04)
{
card_err_state=use_reset(); /*插卡后,用户卡复位*/
if (card_err_state!=0)
{
clear();
dog();
xs_hhz(2,48,CKK);
key=0xff;
while(1)
{
dog();
key=getkey();
if (key!=0xff)
{
out_card();
goto start;
}
}
}
card_err_state=read_use_list(1);/*读第一条记录*/
if (card_err_state!=0)
{
kybc();
goto start;
}
for(i=0;i<12;i++)
{
use_sel_adf_name[i]=uselistfile[i+4];
}
card_err_state=select_pse();/*选择应用*/
if (card_err_state!=0)
{
kybc();
goto start;
}
now_time[0]=0x20;
now_time[1]=year;
now_time[2]=month;
now_time[3]=day;
card_time[0]=use_pse_inf[24];
card_time[1]=use_pse_inf[25];
card_time[2]=use_pse_inf[26];
card_time[3]=use_pse_inf[27];
//判断卡是否过期
/* if (!strcomp(now_time,card_time,4))
{
clear();
xs_hhz(0,0,KYGQ);
goto start;
}*/
card_err_state=read_use_001b_file();/*读'27'文件*/
if (card_err_state!=0)
{
kybc();
goto start;
}
//read_use_0016_file();
if (use_pse_inf[12]==0x02)
{
menu_2(); /*插入管理卡*/
out_card();
goto start;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -