亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? main.h

?? For the development of non-contact smart card products, such as: reading and writing, charging machi
?? H
字號:
/****************************************************************************
*                                                                           *
* File:         MAIN.H                                                   *
*                                                                           *
* Version:                                             			    *
*                                                                           *
* Created:      30.08.2001                                                  *
* Last Change:  30.08.2001                                                  *
*                                                                           *
* Author:       Chua Joo Ming                                               *
*                                                                           *
* Compiler:     KEIL C51 V4.10                                              *
*                                                                           *
* Description:  89C52RD2-Firmware for MFRC500 Demo Serial Reader            *
*                                                                           *
****************************************************************************/


#define AUTODELAY

#ifdef __SRC
 #define EXTERN
#else
 #define EXTERN		       	extern
#endif


// Common Defines

#define uchar                   unsigned char
#define uint                    unsigned int
#define ulong                   unsigned long

#define FALSE			0
#define TRUE 			1


#define INFO_CNT                23


// Ports

#define ON			1
#define OFF			0

// Configuration for the reader timeout counter 
// Timer 2 (modify OSC_FREQ if another crystal frequency is used)
#define OSC_FREQ                22118400L
				// *note: when using the 8051RD2 (in 6 clk instructiion cycle,
				//        use a crystal that is half the value state in OSC_FREQ.
				//	  Example: for OSC_FREQ=22118400, use 11059000 crystal.

#define BAUD_CNT 				7

#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

#ifdef __SRC
 uchar code BaudRateTable[BAUD_CNT] = {
				       		BAUD_115200,
				       		BAUD_57600,
				       		BAUD_38400,
				       		BAUD_28800,
				       		BAUD_19200,
				       		BAUD_14400,
				       		BAUD_9600
				      };
#else
 extern uchar code BaudRateTable[BAUD_CNT];
#endif

#ifdef __SRC
 uint code CmpTable[BAUD_CNT + 1]   = {
				      		0x078,
				      		0x095,
				      		0x129,
				      		0x1BD,
				      		0x252,
				      		0x37A,
				      		0x4A3,
				      		0x6F4
				      };
#else
 extern uint code CmpTable[BAUD_CNT + 1];
#endif

// Serial Protocol

#define SOH                     0x01    // Start of header
#define STX                     0x02    // Start of text
#define ETX                     0x03    // End of text
#define ENQ                     0x05    // Enquire
#define ACK                     0x06    // Acknowledge
#define DLE                     0x10    // Data link escape
#define NAK                     0x15    // Not acknowledge


#define MAXREPCNT               2


#define CALL_isr_UART()         TI = 1


#define SER_BCC			0
#define SER_CRC			1

#define BCC_CHECKBYTECNT        1

// CCITT-CRC16 (x^16 + x^12 + x^5 + 1) => 0x11021

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


// Receive States

#define RECV_STX                0
#define RECV_DATA_DLE_ETX       1
#define RECV_ETX                2

#define RECV_DLE                3
#define RECV_DLE_OR_NAK         4


// Values for checking the Data Length of the Commands

#define MINCMDNR		0x40
#define MAXCMDNR		0x57

#define CMDCNT                  MAXCMDNR - MINCMDNR + 1

#ifdef __SRC

 uchar code CmdLenTab[CMDCNT] = {

 // CmdNr: 0x40 ...
			 7,  1,  5,  4,  2,  0,  1, 17,  5,  5,  1,  1, 14,  1,  2,  0,

 // CmdNr: 0x50 ...        ... 0x57
			 1,  1,  2, 22,  1,  0,    3,   5};
#else

 extern uchar code CmdLenTab[CMDCNT];

#endif


// Serial Buffer

#define HEADER                  3

#define MAXDATA                 30

#define SERBUFLEN               HEADER + MAXDATA + CRC_CHECKBYTECNT + 1

#define SEQNR                   0

#define COMMAND                 1
#define STATUS                  1

#define LENGTH                  2

#define MODE                    3
#define BCNT                    3
#define ADR                     3
#define SERNR                   3
#define SIZE                    3
#define TIME                    3
#define TAGTYPE                 3
#define INFO                    3
#define CTLBYTE                 3
#define PORTBYTE                3
#define HLREQMODE               3

#define SECNR                   4
#define DATABYTES               4
#define VALUE                   4
#define BAUD                    4
#define SERNR_in                4
#define HL_SERNR                4
#define KEY_ADDR                4
#define POSITION		4
#define SEL_CNT			4

#define TKEY                    5
#define AUTHADD			5
#define DES_KEY			5
#define MKAC			5
#define CARD_ADDR               5
#define NUM			5

#define CIPHER			6

#define AUTHMODE                7

#define ADRCHKWR                8
#define HLAUTHMODE              8

#define DATACHKWR               9
#define HLSECNR                 9

#define NKEY6                   11
#define NKEY8                   13

#define QUIT                    30

// Timer 0

#define T_533_ms                14 // (533 ms)

#define START_T0(x)             Timer0Cnt = (x); TL0 = 0; TH0 = 0; TR0 = 1
#define STOP_T0()               TR0 = 0

#define CALL_isr_T0()           TR0 = 0; Timer0Cnt = 0; TF0 = 1


#ifndef NO_TIMER2

 // Timer 2

 #define RCAP2_50us             65536L - OSC_FREQ/240417L
 #define RCAP2_1ms              65536L - OSC_FREQ/12021L
 #define RCAP2_10ms             65536L - OSC_FREQ/1200L

 sfr16   RCAP2LH                = 0xCA;
 sfr16   T2LH                   = 0xCC;

#else

 #define SCON                   S0CON
 #define SBUF                   S0BUF
 #define ES                     ES0

#endif

#ifdef NOP_DELAY

 #define DELAY_us(x)            delay_50us_NOP()

#else

 #define DELAY_us(x)            for (i = 0; i < (uchar)(((x)*9)/20); i++)
 // 20 <= x <= 567

#endif


// Global Variables

EXTERN volatile bit             Idle;
EXTERN volatile bit             CmdReceived;

EXTERN volatile bit             DataDleReceived;
EXTERN volatile bit             CmdValid;
EXTERN volatile bit             LLfReady;
EXTERN volatile bit             SendReady;
EXTERN volatile bit             Quit;
EXTERN volatile bit             EnableRS422;
EXTERN volatile bit             EnableTransferCmd;
EXTERN volatile bit             Enable_LEDs;
EXTERN volatile bit          	AutoBaud;

#ifdef AUTODELAY
 EXTERN volatile bit           	DelayRateLocked;
 EXTERN volatile uchar  	DelayRate;
 EXTERN volatile uchar   	CmdCnt;

 #define MAXDELAYRATE			100
 #define AUTODELAY_FALLBACK		200
#endif

EXTERN volatile uchar   	RecvState;
EXTERN volatile uchar   	SendState;
EXTERN volatile uchar   	Index;
EXTERN volatile uchar   	RepCnt;
EXTERN volatile uchar   	Timer0Cnt;
EXTERN volatile uchar   	SeqNr;
EXTERN volatile uchar   	QuitStatus;
EXTERN volatile uchar   	CheckByteCnt;
                        
EXTERN volatile char    	BaudRate;
EXTERN volatile uchar   	Capt_L;
EXTERN volatile uchar   	Capt_H;
EXTERN volatile uint    	Capt;

EXTERN volatile uchar   idata   SerBuffer[SERBUFLEN];


// Global Prototypes

EXTERN void delay_8us_NOP(void);

EXTERN void delay_50us(uchar _50us);
EXTERN void delay_1ms(uchar _1ms);
EXTERN void delay_10ms(uint _10ms);

#ifdef NOP_DELAY
 EXTERN void delay_50us_NOP(void);
#endif

EXTERN uchar xtoa_h(uchar _byte);
EXTERN uchar xtoa_l(uchar _byte);

EXTERN void  auto_baud(void);


#undef EXTERN


/***************************************************************************/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99久久精品国产麻豆演员表| 精品一二三四区| 国产精品免费av| 久久精品水蜜桃av综合天堂| 日韩精品专区在线影院重磅| 91精品国产高清一区二区三区蜜臀| 欧美丝袜第三区| 精品视频全国免费看| 欧美日韩国产综合视频在线观看| 欧美视频中文字幕| 正在播放亚洲一区| 精品毛片乱码1区2区3区| 精品国产免费人成在线观看| 久久综合色一综合色88| 国产嫩草影院久久久久| 成人欧美一区二区三区黑人麻豆 | 国产精品一线二线三线| 国产精品自在在线| 成人小视频在线| 在线免费不卡电影| 67194成人在线观看| 精品日韩成人av| 国产午夜精品久久| 一区二区在线观看视频| 夜夜揉揉日日人人青青一国产精品| 亚洲一区二区三区精品在线| 麻豆久久久久久| 成人中文字幕在线| 欧美视频在线播放| 2024国产精品| 亚洲欧洲日本在线| 麻豆专区一区二区三区四区五区| 99免费精品视频| 欧美性xxxxxx少妇| 久久久综合激的五月天| 亚洲图片欧美色图| 国产麻豆精品一区二区| 色欧美片视频在线观看| 欧美精品一区二区在线播放| 一区二区三区四区视频精品免费 | 国产精品亚洲第一区在线暖暖韩国| 成人美女视频在线看| 日韩一级黄色大片| 亚洲免费av网站| 国产在线播精品第三| 欧美欧美欧美欧美| 亚洲男人天堂av网| 成人黄色综合网站| 久久综合色婷婷| 日韩在线a电影| 在线欧美日韩国产| 国产精品日韩精品欧美在线| 男女性色大片免费观看一区二区 | 精品国内二区三区| 亚洲一二三区在线观看| 成人黄色在线视频| 亚洲精品一区在线观看| 五月天激情小说综合| 91麻豆精东视频| 国产精品日产欧美久久久久| 日本在线播放一区二区三区| 色中色一区二区| 亚洲三级视频在线观看| 成人午夜在线视频| 欧美激情一区二区三区四区 | 亚洲男人的天堂一区二区| 国产毛片精品视频| 久久嫩草精品久久久精品一| 蜜臀av性久久久久蜜臀av麻豆| 欧美视频自拍偷拍| 亚洲一级在线观看| 欧洲国内综合视频| 亚洲综合色自拍一区| 91国偷自产一区二区三区成为亚洲经典| 国产精品天干天干在线综合| 国产成人啪免费观看软件| 久久综合久久99| 国产成人综合精品三级| 久久久99久久精品欧美| 成人免费毛片嘿嘿连载视频| 国产精品国产三级国产有无不卡| 高潮精品一区videoshd| 国产精品成人免费精品自在线观看| 成人永久免费视频| 国产精品久久久久9999吃药| 成人av综合在线| 日韩精品久久理论片| 欧美三级乱人伦电影| 秋霞影院一区二区| 久久久99精品免费观看| 菠萝蜜视频在线观看一区| 亚洲视频一区二区在线| 欧美视频一区二区三区四区 | 日韩美女视频在线| 国产麻豆视频一区二区| 国产精品精品国产色婷婷| 欧美专区在线观看一区| 天堂精品中文字幕在线| 久久亚洲一级片| 色综合久久88色综合天天6| 亚洲成av人片一区二区| 亚洲精品一线二线三线| thepron国产精品| 性久久久久久久久久久久| 精品久久国产字幕高潮| 99久久婷婷国产综合精品电影 | 国产中文字幕一区| 国产精品色哟哟网站| 欧美日韩中字一区| 国产成人免费9x9x人网站视频| 亚洲天堂av一区| 日韩精品自拍偷拍| 色又黄又爽网站www久久| 免费人成精品欧美精品| 国产精品毛片大码女人| 欧美午夜一区二区| 国产精品一区二区三区99| 一区二区三区欧美| 久久亚洲二区三区| 欧美二区在线观看| 成人白浆超碰人人人人| 久久99精品国产.久久久久| 亚洲欧美视频在线观看| 精品美女在线观看| 欧美人与z0zoxxxx视频| 成人动漫av在线| 国产一区激情在线| 日本午夜一本久久久综合| ㊣最新国产の精品bt伙计久久| 日韩欧美亚洲国产另类| 欧美系列在线观看| 成人一区二区三区视频| 午夜精品一区二区三区电影天堂| 日本一区二区久久| 精品国产91亚洲一区二区三区婷婷| 91福利国产精品| 99久久精品久久久久久清纯| 国产原创一区二区| 亚洲gay无套男同| 亚洲欧美日韩中文播放| 中文字幕日本不卡| 国产精品的网站| 国产女同互慰高潮91漫画| 久久婷婷综合激情| 欧美tickling挠脚心丨vk| 91精品国产色综合久久不卡蜜臀 | 制服视频三区第一页精品| 欧美系列日韩一区| 91污在线观看| 成人黄色片在线观看| 国产美女视频91| 国产老女人精品毛片久久| 麻豆国产精品一区二区三区 | 天天色天天爱天天射综合| 亚洲精品成a人| 亚洲精品乱码久久久久| 亚洲免费观看高清完整版在线 | 欧美成人高清电影在线| 欧美一区二区三区的| 日韩一区二区高清| 欧美大片免费久久精品三p| 欧美videos大乳护士334| 精品国产三级电影在线观看| 26uuu色噜噜精品一区二区| 久久九九全国免费| 18欧美乱大交hd1984| 亚洲伊人色欲综合网| 亚洲va欧美va人人爽| 免费欧美在线视频| 国产乱人伦精品一区二区在线观看| 国产伦精品一区二区三区免费迷| 国产福利一区二区三区视频| 丁香婷婷综合色啪| 色菇凉天天综合网| 欧美一区二区三区播放老司机| 欧美videofree性高清杂交| 中文字幕的久久| 亚洲精品乱码久久久久久黑人| 婷婷亚洲久悠悠色悠在线播放| 六月丁香婷婷久久| 91亚洲精品一区二区乱码| 欧美高清你懂得| 国产欧美日韩三级| 一区二区三区免费看视频| 久久99久久99| 91视频免费观看| 日韩精品一区在线| ...xxx性欧美| 免费三级欧美电影| 97精品视频在线观看自产线路二| 56国语精品自产拍在线观看| 久久久国产午夜精品| 亚洲成人综合在线| 成人免费看黄yyy456| 91麻豆精品国产91久久久久久 | 国产成人综合视频| 欧美性猛交一区二区三区精品| 欧美草草影院在线视频| 亚洲欧美一区二区三区极速播放 | 亚洲欧美另类久久久精品|