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

📄 ic_card.h

📁 智能卡的驱动程序,兼容iso-7817标准
💻 H
字号:
/*==========================================================================*/
/*  file name   : ic_card.h				( headder file for macro define)	*/
/*	compiler	: SPARC-RTEMS-GCC											*/
/*	author	  	: mr.zhou													*/
/*	copyright	: ORBITA Co.,Ltd.  All Right Reserved.At 2005-9-2			*/
/*==========================================================================*/

#ifndef H_ICCARD
#define H_ICCARD

#include "System.h"


typedef struct{
        BYTE      CLA;
        BYTE      INS;
        BYTE      P1;
        BYTE      P2;
        DWORD      LC;
        DWORD      LE;
        BYTE      DATA_READ[256];
        BYTE      DATA_WRITE[256];
        DWORD      SW1;
        DWORD      SW2;
} APDU_STRUCT;

typedef struct{
        BYTE   sw1;
        BYTE   sw2;
        }STATE_WORD;






#define IC0_CARD  		0x0
#define IC1_CARD  		0x1
/****************************** END OF IO REG ********************/



#define RESET_COLD     	0  
#define RESET_WARM     	1  
#define SW_LEN      	0x2
#define SW1         	0x1
#define SW2         	0x2

#define WR_ERROR        0x2
#define RD_ERROR        0x3
#define IC_WWTO         0x4
#define IC_BWTO         0x5
#define IC_CWTO         0x6
#define IC_TTO          0x7


#define TEN_INT_VEC    10

#define IC0_INT_VEC    30        //
#define IC1_INT_VEC    29
#define IC2_INT_VEC    28





/********************** Function define ************************/
extern void *catch_interrupt(void func(), int irq);
extern BYTE IC_Apdu_Fun(BYTE ic_unit,APDU_STRUCT apdu);
extern BYTE IC_StrReg_Srv_Fun(void);
extern void IC_Card_System_Init_Fun(BYTE ic_unit);
extern BYTE Irq_Switch_IntMask(BYTE enable);
extern void Second_IntSrv_Fun(int irq_handle);
extern BYTE Clear_INT_Mask_Fun(void);
extern BYTE IC_Apdu_Fun(BYTE ic_unit,APDU_STRUCT apdu);
extern BYTE IC_StrReg_Srv_Fun( void );
extern BYTE IC_Reset_Fun(BYTE ic_unit);
extern BYTE IC_Init_Fun(BYTE ic_unit);
extern void Ic_Enable_Fun(BYTE ic_unit,BYTE enable_disable);
extern void IC1_IntSvr_Fun(void);
extern void IC0_IntSvr_Fun(void);

//extern void Set_Interrupt_Bit(BYTE int_name,DWORD int_bit,BYTE enable_dis);
//extern void delay(WORD delay_cont);
/***********************END        ************************/


#endif

⌨️ 快捷键说明

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