?? katm.c
字號:
#include<reg52.h>
#include<bianldy.h>//變量定義
#include<control_lcd.h>//lcd的驅(qū)動程序
#include<hanssm.h>//函數(shù)的聲明
#include<ziku.h>
#include<display.h>
#include<iiccon.h>
#include<init.h>//各類數(shù)據(jù)和函數(shù)的初始化
//unsigned char i;
#include<iicdateinit.h>
#include<KANSANF.h>
void delay(uint a)
{
uchar c;
uint b;
for(b=0;b<a;b++)
for(c=0;c<120;c++)
;
}
void buzzer_di()//蜂鳴器di聲
{
buzzer=0;
delay(100);
buzzer=1;
}
main()
{
init();
ininticcdate();//E2PROM中數(shù)據(jù)的初始化
while(1)
{
if(chakc==0)
{
keysanf_chak();
// init();
}
if(chakc==1)
{
display_mima();
chakc=2;
}
if(chakc==2)
{
keysanf_mima();
if(xing>6)
xing=6;
if(xing<0)
xing=0;
keysanf_lk1();
if(lk1bz==1)
{
mima=table_mima[xing-1];
xing--;
lk1bz=0;
}
display_mimax(xing);
table_mima[xing]=mima;
if(xing==6)
{
keysanf_rk1();
if(rk1bz==1)
{
if(table_mima[1]==read_add(1+(cha-1)*8)&&table_mima[2]==read_add(2+(cha-1)*8)&&table_mima[3]==read_add(3+(cha-1)*8)&&table_mima[4]==read_add(4+(cha-1)*8)&&table_mima[5]==read_add(5+(cha-1)*8)&&table_mima[6]==read_add(6+(cha-1)*8))
{chakc=3;}
else
{
chakc=10;
erroncount=read_add(0+(cha-1)*8)+1;
delay(50);
write_add(0+(cha-1)*8,erroncount);
}
rk1bz=0;
xing=0;
}
}
}
if(chakc==3)// 在選擇業(yè)務(wù)下檢測1234個按鍵
{
display_ywxuanze();// 選擇業(yè)務(wù)頁面
keysanf_rk1();//取卡
if(rk1bz==1)
{
init();
}
keysanf_rk2();//取款
if(rk2bz==1)
{
chakc=4;
rk2bz=0;
}
keysanf_lk2();//查詢余額
if(lk2bz==1)
{
chakc=7;
lk2bz=0;
}
keysanf_lk1();//修改密碼
if(lk1bz==1)
{
chakc=9;
lk1bz=0;
}
}
if(chakc==4)//在取款頁面下選擇金額和退出
{
display_qukuan();//顯示取款頁面
keysanf_rk1();//退出按鍵
if(rk1bz==1)
{
chakc=3;
rk1bz=0;
}
keysanf_rk2();//取款200按鍵
if(rk2bz==1)
{
yue=read_add(7+(cha-1)*8);
if(yue<3)
chakc=13;
else
{
yue=yue-2;
delay(50);
write_add(7+(cha-1)*8,yue);
chakc=5;
}
rk2bz=0;
}
keysanf_lk1();//取款300按鍵
if(lk1bz==1)
{
yue=read_add(7+(cha-1)*8);
if(yue<3)
chakc=13;
else
{
yue=yue-3;
delay(50);
write_add(7+(cha-1)*8,yue);
chakc=5;
}
lk1bz=0;
}
keysanf_lk2();//取款100按鍵
if(lk2bz==1)
{
yue=read_add(7+(cha-1)*8);
if(yue<1)
chakc=13;
else
{ yue=yue-1;
delay(50);
write_add(7+(cha-1)*8,yue);
chakc=5;
}
lk2bz=0;
}
}
if(chakc==5)
{
display_zhub();//準(zhǔn)備鈔票頁面
keysanf_zbcp();//檢測機(jī)器是否為客戶準(zhǔn)備好鈔票
if(zbcpbz==1)
{
chakc=6;
zbcpbz=0;
}
}
if(chakc==6)
{
display_quchao();//等帶取走鈔票頁面
keysanf_qucp();//檢測鈔票是否被取走
if(qucpbz==1)
{
chakc=3;
qucpbz=0;
}
}
if(chakc==7)
{
display_chax();//查詢頁面
keysanf_rk1();//退出查詢頁面
if(rk1bz==1)
{
chakc=3;
rk1bz=0;
}
keysanf_lk1();//余額
if(lk1bz==1)
{
chakc=8;
lk1bz=0;
}
}
if(chakc==8)
{
display_yue();//顯示余額頁面
keysanf_rk1();//退出
if(rk1bz==1)
{
chakc=3;
rk1bz=0;
}
}
if(chakc==9)
{
keysanf_mima();
if(xing>6)
xing=6;
if(xing<0)
xing=0;
keysanf_lk1();
if(lk1bz==1)
{
mima=table_mima[xing-1];
xing--;
lk1bz=0;
}
display_mimaxg(xing);//密碼修改輸入新密碼是的頁面
table_mima[xing]=mima;
if(xing==6)
{
keysanf_rk1();//確定 將新密碼寫入E2PROM
if(rk1bz==1)
{
write_add(1+(cha-1)*8,table_mima[1]);
delay(50);
write_add(2+(cha-1)*8,table_mima[2]);
delay(50);
write_add(3+(cha-1)*8,table_mima[3]);
delay(50);
write_add(4+(cha-1)*8,table_mima[4]);
delay(50);
write_add(5+(cha-1)*8,table_mima[5]);
delay(50);
write_add(6+(cha-1)*8,table_mima[6]);
delay(50);
chakc=3;
rk1bz=0;
chakc=12;//轉(zhuǎn)向密碼修改成功頁面
}
}
}
if(chakc==10)
{
if(bool==0)
{
display_erron();//顯示密碼錯誤一段時間
delay(2440);
bool=1;
}
if(read_add(0+(cha-1)*8)<3)
{
keysanf_mima();
if(xing>6)
xing=6;
if(xing<0)
xing=0;
keysanf_lk1();
if(lk1bz==1)
{
mima=table_mima[xing-1];
xing--;
lk1bz=0;
}
display_mimaxc(xing);
table_mima[xing]=mima;
if(xing==6)
{
keysanf_rk1();
if(rk1bz==1)
{
if(table_mima[1]==read_add(1+(cha-1)*8)&&table_mima[2]==read_add(2+(cha-1)*8)&&table_mima[3]==read_add(3+(cha-1)*8)&&table_mima[4]==read_add(4+(cha-1)*8)&&table_mima[5]==read_add(5+(cha-1)*8)&&table_mima[6]==read_add(6+(cha-1)*8))
{
chakc=3;
}
else
{
chakc=10;
bool=0;
erroncount=read_add(0+(cha-1)*8);
erroncount++;
delay(50);
write_add(0+(cha-1)*8,erroncount);
}
rk1bz=0;
xing=0;
}
}
}
if(read_add(0+(cha-1)*8)==3)
{
chakc=11;
}
}
if(chakc==11)
{
display_kadongjie();//卡被凍結(jié)頁面
keysanf_rk1();
if(rk1bz==1)
{
init();
rk1bz=0;
}
}
if(chakc==12)
{
display_mimaxiugaicg();// 密碼修改成功頁面
keysanf_rk1();//確定
if(rk1bz==1)
{
chakc=3;
rk1bz=0;
}
}
if(chakc==13)
{
display_yuebuzu();//顯示余額不足頁面
keysanf_rk1();//確定
if(rk1bz==1)
{
chakc=3;
rk1bz=0;
}
}
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -