m500auc.h

来自「奥尔斯公司pxa270试验箱射频卡读写器相关资料」· C头文件 代码 · 共 112 行

H
112
字号
#ifdef  M500_GLOBALS

 #define M500_EXT

#else

 #define M500_EXT extern

#endif



#define TRUE 1

#define FALSE 0

#define OSC_FREQ                11059200L

//#define OSC_FREQ                12000000L





#define BAUD_115200             256 - (OSC_FREQ/192L)/115200L   // 255

#define BAUD_57600              256 - (OSC_FREQ/192L)/57600L    // 254

#define BAUD_38400              256 - (OSC_FREQ/192L)/38400L    // 253

#define BAUD_28800              256 - (OSC_FREQ/192L)/28800L    // 252

#define BAUD_19200              256 - (OSC_FREQ/192L)/19200L    // 250

#define BAUD_14400              256 - (OSC_FREQ/192L)/14400L    // 248

#define BAUD_9600               256 - (OSC_FREQ/192L)/9600L     // 244

#define RCAP2_50us           	65536L - OSC_FREQ/240417L

#define RCAP2_1ms              	65536L - OSC_FREQ/12021L

#define RCAP2_10ms             	65536L - OSC_FREQ/1200L

#define RCAP2_1s             	65536L - OSC_FREQ/12L





#define CALL_isr_UART()         TI = 1



unsigned char idata SLAVEADDR = 0x00;

unsigned char idata MLastSelectedSnr[4];

//unsigned char data RevBuffer[30];

//unsigned char data SerBuffer[20];

unsigned char idata RevBuffer[30];

unsigned char idata 	KeyBuffer[6]={0xFF,0xFF,0xFF,0xFF,0xFF,0xFF};

unsigned char data 	SerBuffer[20];

unsigned char idata 	TempBuffer[20];

unsigned char idata 	CardInfoBuffer[6];



bit CmdValid = FALSE;

bit isSelect = FALSE;

bit haveCard = FALSE;

bit haveRead = FALSE;

unsigned char cardtype;

unsigned char cmd;

typedef struct

         {

            unsigned char  cmd;

            char           status;

            unsigned char  nBytesSent;

            unsigned char  nBytesToSend;

            unsigned char  nBytesReceived;

            unsigned short nBitsReceived;

            unsigned char  irqSource;

            unsigned char  collPos;



         } MfCmdInfo;

#define ResetInfo(info)    \

            info.cmd            = 0;\

            info.status         = MI_OK;\

            info.irqSource      = 0;\

            info.nBytesSent     = 0;\

            info.nBytesToSend   = 0;\

            info.nBytesReceived = 0;\

            info.nBitsReceived  = 0;\

            info.collPos        = 0;





static   volatile MfCmdInfo idata   MInfo;

//static   volatile MfCmdInfo    *MpIsrInfo = 0;

static   volatile MfCmdInfo    *MpIsrInfo;

//static   volatile unsigned char  *MpIsrOut = 0;

static   volatile unsigned char  *MpIsrOut;





M500_EXT void delay_1ms(unsigned char _1ms);

M500_EXT void delay_50us(unsigned char _50us);

M500_EXT void start_timeout(unsigned int _50us);

M500_EXT void delay(unsigned char time);

M500_EXT void stop_timeout(void);

M500_EXT char M500PcdRfReset(unsigned char ms);

//M500_EXT char M500HostCodeKey(  unsigned char *uncoded,

//                     unsigned char *coded);

M500_EXT char M500PiccCommonRequest(unsigned char req_code,

                         unsigned char *atq);

M500_EXT char M500PiccCascAnticoll( unsigned char bcnt,

                           unsigned char *snr);

M500_EXT char M500PiccCascSelect(unsigned char *snr,

                        unsigned char *sak);

//M500_EXT char M500PiccAuthKey(  unsigned char auth_mode,

//                     unsigned char *snr,

//                     unsigned char *keys,

//                     unsigned char block);

M500_EXT char SetBitMask(unsigned char reg,unsigned char mask);

M500_EXT void M500PcdSetTmo(unsigned char tmoLength);

M500_EXT char M500PcdCmd(unsigned char cmd,

                volatile unsigned char data * rcv,

                volatile MfCmdInfo idata *info);

M500_EXT char ClearBitMask(unsigned char reg,unsigned char mask);

M500_EXT void FlushFIFO(void);



//M500_EXT char PcdWriteE2(unsigned int startaddr,

//                unsigned char length,

//                unsigned char* _data);



M500_EXT char M500PiccAuthState(unsigned char auth_mode,

                       unsigned char *snr,

                       unsigned char block);



M500_EXT void LedOn(unsigned char rpt);



M500_EXT void GetAddr(void);



⌨️ 快捷键说明

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