📄 dealmoney.c
字号:
#include "AT89X51.h"
#include "main.h"
#include <intrins.h>
#include <absacc.h>
extern BYTE workState; //工作状态
extern bit timerHap; //定时器到时
//输出数组
extern uchar ACK_BUF[LENMAX]; //Command in length=3 数据(命令) 接收 缓冲区
extern uchar CMDIN[LENMAX]; //Command in length=3 数据(命令) 接收 缓冲区
extern BYTE bdata sensor;
extern BYTE bdata lock;
BYTE bdata ctrl;
sbit ctrlInCoin = ctrl^0; //
sbit ctrlMainLamp = ctrl^1; //
sbit ctrlCardLamp = ctrl^2; //
sbit ctrlfan1 = ctrl^3; //
sbit ctrlfan2 = ctrl^4; //
void REPORT()//80
{
off5Cell();
ACK_BUF[0]=0x80;
ACK_BUF[1]=0x00;
ACK_BUF[2]=CE_OK;
// ACK_BUF[3]=0x00;ACK_BUF[4]=0x00;ACK_BUF[5]=0x00;ACK_BUF[6]=0x00;
//ACK_BUF[7]=0x00;ACK_BUF[8]=0x00;
readState();
ACK_BUF[9]=sensor;
//ACK_BUF[10]=0x00;/////
ACK_BUF[11]=0x00;
sendtext(ACK_BUF,12);
workState = HALT_STATUS;
}
void ReadeBox()//21
{
//动作
ACK_BUF[0]=0x21;
ACK_BUF[1]=0x00;
ACK_BUF[2]=CE_OK;
// ACK_BUF[3]=0x00;ACK_BUF[4]=0x00;ACK_BUF[5]=0x00;ACK_BUF[6]=0x00;
//ACK_BUF[7]=0x00;ACK_BUF[8]=0x00;
readState();
ACK_BUF[9]=sensor;
ACK_BUF[10]=lock;//////
ACK_BUF[11]=0x00;
sendtext(ACK_BUF,12);
workState = HALT_STATUS;
}
void DETECT()//22
{
ACK_BUF[0]=0x22;
ACK_BUF[1]=0x00;
ACK_BUF[2]=CE_OK;
readState();
ACK_BUF[3]=sensor;//动作
ACK_BUF[4]=lock; /////
ACK_BUF[5]=0x00;
sendtext(ACK_BUF,6);
workState = HALT_STATUS;
}
void ONOFF24V()//23 //好比初始化
{
//动作
if(CMDIN[4]==0xAA) control24V(OPEN);
else control24V(CLOSE); //if(CMDIN[]==0x55) control24V(CLOSE);
ACK_BUF[0]=0x23;
ACK_BUF[1]=0x00;
ACK_BUF[2]=CE_OK;
readState();
ACK_BUF[3]=sensor;
ACK_BUF[4]=lock; /////
ACK_BUF[5]=0x00;
sendtext(ACK_BUF,6);
workState = HALT_STATUS;
}
void CONTROL()//24
{
uint delaytime;
ctrl=CMDIN[5];
if(CMDIN[4]>=0x80)
{
if(ctrlInCoin) { InCoinDoor(OPEN); }/////////////////////////
else { InCoinDoor(CLOSE); }//////////////////////////////////
if(ctrlCardLamp) { runCardLamp(OPEN); }
else { runCardLamp(CLOSE); }
if(ctrlMainLamp) { runMainLamp(OPEN); }
else { runMainLamp(CLOSE); }
if(ctrlfan1) { runFan1(OPEN); }
else { runFan1(CLOSE); }
if(ctrlfan2) { runFan2(OPEN); }
else { runFan2(CLOSE); }
}
else//目前只对出票口 灯有效
{
runCardLamp(OPEN);
delaytime=CMDIN[4];
delaytime=delaytime*100;
setTimer(delaytime);
while(!timerHap); ///////////////////////
runCardLamp(CLOSE);
}
ACK_BUF[0]=0x23;
ACK_BUF[1]=0x00;
ACK_BUF[2]=CE_OK;
readState(); //动作
ACK_BUF[3]=sensor;
ACK_BUF[4]=lock; /////
ACK_BUF[5]=0x00;
sendtext(ACK_BUF,6);
workState = HALT_STATUS;
}
/*void SeteBox()//30
{
}*/
void readState()
{
isInCoinDoor();
isCoinBox();
isRmbOut();
isCoiner();
isRmbIn();
isProvider();
isDoor();
isAAA();
isLock0_4(); //function in testfun.c
isCoinBoxCtl();
isBigBoxDoor();//大钱箱门
isDoorLock();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -