⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 _modem.h

📁 抄水表手持POS代码
💻 H
字号:
// This modul has the following functin:
// fuctionno=0: for protocol               			:NULL
// fuctionno=2: Link...(devno,StationNo)			:devno[LL],devno[HH],StationNo[LL],StationNo[HH]
// fuctionno=4: Login  (user name,password,OpSnr)	
//                                                  :user name[10],password[10],OpSnr[4],SecurityStr[16]	
// fuctionno=6: logout (down net)					:NULL
// fuctionno=8: CheckTime send LocalTm,rec SeverTm)	:loctm[6],svrtm[6](tm_format:YYMMDDhhmmss)
// fuctionno=10: Transfer Data ()					:data[...]
// fuctionno=12: Transfer End ()					:

#define MODEM_CP_LINK		02
#define MODEM_CP_LOGIN		04
#define MODEM_CP_LOGOUT		06
#define MODEM_CP_CHECKTIME  0X08
#define MODEM_CP_TDSTART	10        //packageno;;length_L;length_H;Sum_L;Sum_H;;
#define MODEM_CP_TDDATA		12        //data...
#define MODEM_CP_TDEND		14        //packageno;;length_L;length_H;Sum_L;Sum_H;;

#define CRC_POLYNOM     0x1021
#define CRC_PRESET      0xFFFF
#define CRC_CHKBYTES    2

#define MI_CRC_ZERO		0
#define MI_CRC_NOTZERO	1

//#define CRC16			0x00
//#define CRC8			0x80

//char SecurityStr[16];  //all data_part all [addr]Xor SecurityStr[addr%16];
// fuctionno=1: Link...(devno,StationNo)			:devno[LL],devno[HH],StationNo[LL],StationNo[HH]
// if OK;return MODEM_OK;else return NOK;

//unsigned char modemhd;

#define ESC    0x1b

#define EM              -150

//ret code state
#define Leading_CR		0
#define Leading_LF		1
//#define Message			2
#define Trailing_CR		3
#define Trailing_LF		4

//return code
#define RE_NONE		    0
#define RE_OK			1
#define RE_CONNECT		2
#define RE_RING			3
#define RE_NOCARRIER	4
#define RE_ERROR		5
#define RE_NODIALTONE	6
#define RE_BUSY			7
#define RE_NOANSWER		8
#define RE_CARRIER		9
#define RE_DATA         10
#define RE_FAX          11
#define RE_UNKNOWN		12
#define RE_TIMEOUT		13

#define MODEM_CP_REQDATA		15				//request data
#define MODEM_CP_RDSTART		16
#define MODEM_CP_RDSTDATA	18
#define MODEM_CP_RDEND		1a

#define MODEM_OK		1
#define MODEM_NOK		0


//modem command state
#define Idle        0
#define Dialing     1
#define Answer      2
#define Hangup      3
#define Online      4

#define PACKETSIZE  110

extern char ModemOnline();
extern void ModemOffline();
extern unsigned char  ModemInit();
extern int _Modem_Rec(int dltm,int recnum,uchar *buf);
extern int _Modem_Read(uint len,uchar *buf);
extern int _Modem_Write(uint len,uchar *buf);
extern int _Modem_Retcode(char *buf,int len);
extern uchar  _ModemDial(unsigned char *num);
extern char _ModemLink(char *dialnum,int devno,int StationNo);
extern char _ModemLogin(char username[10],char password[10],char opsnr[4]);
extern char _ModemSend(uchar *tm,int length);
extern char  _ModemCheckTime(unsigned char *rbuf);
extern int _Modem_Rec(int dltm,int recnum,uchar *buf);
extern char _ModemTx(unsigned char *txbuf, int length,unsigned int sno ,unsigned char funno,int waittm);  //length<240
extern char _ModemTx5(unsigned char *txbuf, int length,unsigned int sno ,unsigned char funno,int waittm);  //length<240
extern int  _ModemRx(unsigned char *rbuf, int length,int dl);//return =0:NOK,  1~256 OK'
extern unsigned char _ModemFunno(unsigned char *rbuf,int length,unsigned char funno, int waittm);
extern char  _ModemSendFunno(unsigned char *txbuf, int length,unsigned int sno ,unsigned char funno);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -