background image

 

A C R 3 8   S m a r t   C a r d   R e a d e r / W r i t e r

 

Smart Card Interface 

The interface between the ACR38 and the inserted smart card follows the specifications of 

ISO7816-3

 with 

certain restrictions or enhancements to increase the practical functionality of the ACR38. 

 

Smart Card Power Supply VCC (C1) 

The current consumption of the inserted card must not be higher than 50 mA. 

 

Programming Voltage VPP (C6) 

According to ISO 7816-3, the smart card contact C6 (VPP) supplies the programming voltage to the smart 

card. Since all common smart cards in the market are EEPROM based and do not require the provision of 

an external programming voltage, the contact C6 (VPP) has been implemented as a normal control signal in 

the ACR38. The electrical specifications of this contact are identical to those of the signal RST (at contact 

C2). 

 

Card Type Selection 

The controlling PC always has to select the card type through the proper command sent to the ACR38 prior 

to activating the inserted card.  This includes both the memory cards and MCU-based cards. 

For MCU-based cards, the reader allows to select the preferred protocol, T=0 or T=1. However, this 

selection is only accepted and carried out by the reader through the PPS when the card inserted in the 

reader supports both protocol types. Whenever an MCU-based card supports only one protocol type, T=0 or 

T=1, the reader automatically uses that protocol type, regardless of the protocol type selected by the 

application. 

 

Interface for Microcontroller-based Cards 

For microcontroller-based smart cards only the contacts C1 (VCC), C2 (RST), C3 (CLK), C5 (GND) and C7 

(I/O) are used.  A frequency of 4 MHz is applied to the CLK signal (C3). 

 

Card Tearing Protection 

The ACR38 provides a mechanism to protect the inserted card when it is suddenly withdrawn while it is 

powered up. The power supply to the card and the signal lines between the ACR38 and the card are 

immediately deactivated when the card is being removed. As a general rule, however, to avoid any electrical 

damage, 

a card should only be removed from the reader while it is powered down. 

 

NOTE

  -  The ACR38 does never by itself switch on the power supply to the inserted card. This must explicitly be done by the 

controlling computer through the proper command sent to the reader. 

 

 

ACR38 Reference Manual 

Version 2.2   January 2008

 

 

 

 

                                                               Page

 

6

 

of 44 

 

 

Содержание ACR 38

Страница 1: ...Reference Manual ACR38 Smart Card Reader Writer Advanced Card Systems Ltd Website www acs com hk Email info acs com hk...

Страница 2: ...ACR_STAT 11 8 1 2 SELECT_CARD_TYPE 12 8 1 3 SET_OPTION 12 8 1 4 SET_CARD_PPS 13 8 1 5 SET_READER_PPS 13 8 2 Card Commands 15 8 2 1 MCU based Card 15 8 2 1 1 RESET_WITH_5_VOLTS_DEFAULT 15 8 2 1 2 RESET...

Страница 3: ...READ_PRESENTATION_ERROR_COUNTER_MEMORY_CARD only SLE 5528 31 8 2 7 Memory Card SLE4432 5542 33 8 2 7 1 SELECT_CARD_TYPE 33 8 2 7 2 READ_MEMORY_CARD 33 8 2 7 3 WRITE_MEMORY_CARD 34 8 2 7 4 WRITE_PROTEC...

Страница 4: ...mart card system The ACR38 Smart Card Reader Writer is connected to the computer through USB interface The reader accepts commands from the computer carries out the specified function at the smart car...

Страница 5: ...d communication parameters other than the default parameters the ACR38 will execute the PPS and try to use the communication parameters that the card suggested in its ATR If the card does not accept t...

Страница 6: ...s the reader allows to select the preferred protocol T 0 or T 1 However this selection is only accepted and carried out by the reader through the PPS when the card inserted in the reader supports both...

Страница 7: ...tatus of the smart card interface Flashing slowly turns on 200ms for every 2 seconds Indicates that the ACR38 is powered up and is in the standby state Either the smart card has not been inserted or t...

Страница 8: ...PC 4 GND Reference voltage level for power supply NOTE In order for the ACR38 to function properly through USB interface either ACS proprietary device driver or ACS PC SC device driver has to be inst...

Страница 9: ...lways 01H to indicate the start of a command Instruction The instruction code of the command to be carried out by the ACR38 Data Length Number of subsequent data bytes and is encoded in 2 bytes The fi...

Страница 10: ...re sent from ACR38 to the host computer through BULK IN endpoint Card Status Message When a card is being inserted into the reader or an inserted card is being removed from the reader while the reader...

Страница 11: ...ta length 01 H 01 H 00 H 00 H Response data format Header Status Data length INTERNAL MAX_C MAX_R C_TYPE C_SEL C_STAT LEN 01 H INTERNAL 10 bytes data for internal use only MAX_C The maximum number of...

Страница 12: ...d in this command for a particular card to be used Response data format Header Status Data length LEN 01 H SET_OPTION This command selects the options for the reader Command format Header Instruction...

Страница 13: ...SO IEC 7816 3 1997 Section 7 for details of PPS request A typical PPS request to select T 1 protocol and FD 0x94 62500 baud at 4MHz is 0xFF 0x11 0x94 0x7A Response data format Header Status Data lengt...

Страница 14: ...ls of PPS response After the driver or the application validates the PPS Response it should send the PPS Response to the reader The reader can then switch the protocol and or speed A typical PPS respo...

Страница 15: ...01 H ATR Answer To Reset as transmitted by the card according to ISO7816 3 NOTE The ATR is only returned in the ACR38 response if the communication protocol of the card is compatible with the reader i...

Страница 16: ...in the card reader Command format Header Instruction Data length LEN 01 H 81 H 00 H 00 H Response data format Header Status Data length LEN 01 H EXCHANGE_TPDU_T0 To exchange an APDU Application Proto...

Страница 17: ...data N Data T1 TPDU frame to be sent to the card It should include NAD PCB LEN INF and EDC fields Please refer to ISO IEC 7816 3 1997 E Section 9 4 for detailed information Response data format Header...

Страница 18: ...ead the smart card The default value is 8 byte page write It will reset to default value whenever the card is removed or the reader is powered off Command format Header Instruction Data length Data LE...

Страница 19: ...N SW1 SW2 LEN 01 H BYTE x Data read from memory card SW1 SW2 90 H 00 H if no error WRITE_MEMORY_CARD Command format Header Instruction Data length Data LEN CLA INS Byte Address MEM_L Byte 1 Byte n MS...

Страница 20: ...BYTE 1 BYTE N SW1 SW2 LEN 01 H BYTE x ATR from card if any SW1 SW2 90 H 00 H if no error SELECT_PAGE_SIZE This command will choose the page size to read the smart card The default value is 8 byte page...

Страница 21: ...ata to be read from the memory card Response data format Header Status Data length BYTE 1 BYTE N SW1 SW2 LEN 01 H BYTE x Data read from memory card SW1 SW2 90 H 00 H if no error WRITE_MEMORY_CARD Comm...

Страница 22: ...Data LEN CLA INS P1 P2 Lc Card Type 01 H A0 H 00 H 06 H FF H A4 H 00 H 00 H 01 H 03 H Response data format Header Status Data length BYTE 1 BYTE 2 BYTE 3 BYTE 4 SW1 SW2 LEN 01 H BYTE x ATR from card S...

Страница 23: ...D1 H for writing zone 01 b D2 H for writing zone 10 b D3 H for writing zone 11 b D4 H for writing fuse Byte Address Memory address location of the memory card LEN 5 MEM_L MEM_L Length of data to be wr...

Страница 24: ...eader Instruction Data length Data LEN CLA INS P1 P2 Lc Q 0 Q 1 Q 7 01 H A0 H 00 H 0D H FF H 84 H 00 H 00 H 08 H Q 0 Q 1 Q 7 Host random number 8 bytes Response data format Header Status Data length S...

Страница 25: ...a format Header Status Data length BYTE 1 BYTE 2 BYTE 3 BYTE 4 SW1 SW2 LEN 01 H BYTE x ATR from card SW1 SW2 90 H 00 H if no error READ_MEMORY_CARD Command format Header Instruction Data length Data L...

Страница 26: ...H for writing user zone D1 H for writing configuration zone or writing fuse Zone Address 0000 0A10A9A8 b where A10 is the MSB of zone address don t care for writing fuse Byte Address A7A6A5A4 A3A2A1A...

Страница 27: ...p1p0 0111 for the secure code Response data format Header Status Data length ErrorCnt SW1 SW2 LEN 01 H 00 H 03 H ErrorCnt Error Counter FFH if the verification is correct SW1 SW2 90 H 00 H if no error...

Страница 28: ...powers down and up the selected card inserted in the card reader and performs a card reset Notes This command must be the first command after card insertion Command format Header Instruction Data len...

Страница 29: ...e is determined by the number N of data bytes read from the card as follows L 1 INT N 8 The arrangement of the protection bits in the PROT bytes is as follows PROT 1 PROT 2 P8 P7 P6 P5 P4 P3 P2 P1 P16...

Страница 30: ...o the memory card Byte x Data to be written to the memory card Response data format Header Status Data length SW1 SW2 LEN 01 H SW1 SW2 90 H 00 H if no error WRITE_PROTECTION_MEMORY_CARD Each of the by...

Страница 31: ...resent the specified code to the card try to erase the presentation error counter Command format Header Instruction Data length Data LEN CLA INS P1 P2 MEM_L CODE MSB LSB Byte 1 Byte 2 01 H A0 H 00 H 0...

Страница 32: ...SB LSB 01 H A0 H 00 H 05 H FF H B1 H 00 H 00 H 00 H Response data format Header Status Data length ERRCNT DUMMY 1 DUMMY 2 SW1 SW2 LEN 01 H ERRCNT The value of the presentation error counter DUMMY Two...

Страница 33: ...ard Type 01 H A0 H 00 H 06 H FF H A4 H 00 H 00 H 01 H 06 H Response data format Header Status Data length BYTE 1 BYTE 2 BYTE 3 BYTE 4 SW1 SW2 LEN 01 H BYTE x ATR from card SW1 SW2 90 H 00 H if no erro...

Страница 34: ...RITE_MEMORY_CARD Command format Header Instruction Data length Data LEN CLA INS P1 Byte Address MEM_L Byte 1 Byte N MSB LSB 01 H A0 H FF H D0 H 00 H Byte Address A7A6A5A4 A3A2A1A0 b is the memory addr...

Страница 35: ...d with the data at Byte Address N 1 Response data format Header Status Data length SW1 SW2 LEN 01 H SW1 SW2 90 H 00 H if no error PRESENT_CODE_MEMORY_CARD only SLE 5542 To submit the secret code to th...

Страница 36: ...d format Header Instruction Data length Data LEN CLA INS P1 P2 MEM_L MSB LSB 01 H A0 H 00 H 08 H FF H B1 H 00 H 00 H 00 H Response data format Header Status Data length ERRCNT DUMMY 1 DUMMY 2 DUMMY 3...

Страница 37: ...R 3 8 S m a r t C a r d R e a d e r W r i t e r Response data format Header Status Data length SW1 SW2 LEN 01 H SW1 SW2 90 H 00 H if no error ACR38 Reference Manual Version 2 2 January 2008 Page 37 of...

Страница 38: ...format Header Instruction Data length Data LEN CLA INS P1 P2 Lc Card Type 01 H A0 H 00 H 06 H FF H A4 H 00 H 00 H 01 H 07 H Response data format Header Status Data length BYTE 1 BYTE 2 BYTE 3 BYTE 4 S...

Страница 39: ...rite mode can therefore only be used for updating the counter value in the card c Write with backup enabled SLE4436 and SLE5536 only The byte value specified in the command is written to the specified...

Страница 40: ...W1 SW2 90 H 00 H if no error PRESENT_CODE_MEMORY_CARD To submit the secret code to the memory card to enable the card personalization mode The following actions are executed search a 1 bit in the pres...

Страница 41: ...ed by the card in the response Command format Header Instruction Data length Data LEN CLA INS P1 P2 MEM_L CODE MSB LSB KEY CLK_CNT Byte1 Byte 2 Byte 5 Byte 6 01 H A0 H 00 H 08 H FF H 84 H 00 H 00 H 08...

Страница 42: ...ard type code Card Type 00H Auto select T 0 or T 1 communication protocol 01H I2C memory card 1k 2k 4k 8k and 16k bits 02H I2C memory card 32k 64k 128k 256k 512k and 1024k bits 03H Atmel AT88SC153 sec...

Страница 43: ...K command successfully executed F4 SLOTERROT_PROCEDURE_BYTE_CONFLICT F6 SLOTERROR_BAD_LENGTH F7 SLOTERROR_BAD_FIDI F8 SLOTERROR_BAD_ATR_TS F9 SLOTERROR_ICC_NOT_POWERED_UP FA SLOTERROR_ICC_NOT_INSERTED...

Страница 44: ...on the reader CLK frequency 4 MHz Card connector Contact Card insertion cycles min 100 000 Optional SAM Card Interface Card connector Landing Location Under the removable dark lid Physical Specificati...

Отзывы: