CR14 Low Cost ISO14443 type-B Contactless Coupler Chip with Anti-Collision and CRC Management Features summary ■ Single 5V ±500mV Supply Voltage ■ SO16N package ■ Contactless Communication – ISO14443 type-B protocol – 13.56MHz Carrier Frequency using an External Oscillator – 106 Kbit/s Data Rate – 36 Byte Input/Output Frame Register – Supports Frame Answer with/without SOF/ EOF – CRC Generation and Check – Automated ST Anti-Collision Exchange ■ 16 1 SO16 (MQ) 150 mils width I²C Communication – Two Wire I²C Serial Interface – Supports 400kHz Protocol – 3 Chip Enable Pins – Up to 8 CR14 Connected on the Same Bus December 2005 Rev 1 1/46 www.st.com 1 CR14 Contents 1 Summary description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2 Signal description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 3 4 5 2/46 2.1 Oscillator (OSC1, OSC2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.2 Antenna Output Driver (RFOUT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.3 Antenna Input Filter (RFIN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.4 Transmitter Reference Voltage (VREF) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.5 Serial Clock (SCL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.6 Serial Data (SDA) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.7 Chip Enable (E0, E1, E2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.8 Power Supply (VCC, GND, GND_RF) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 CR14 registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 3.1 Parameter Register (00h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 3.2 Input/Output Frame Register (01h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 3.3 Slot Marker Register (03h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 CR14 I²C protocol description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 4.1 I²C Start Condition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 4.2 I²C Stop Condition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 4.3 I²C Acknowledge Bit (ACK) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 4.4 I²C Data Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 4.5 I²C Memory Addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 4.6 CR14 I²C Write Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 4.7 CR14 I²C Read Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Applying the I²C protocol to the CR14 registers . . . . . . . . . . . . . . . . . . . . 22 5.1 I²C Parameter Register Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 5.2 I²C Input/Output Frame Register Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 5.3 I²C Slot Marker Register Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 5.4 Addresses above Location 06h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 CR14 6 7 CR14 ISO14443 type-B Radio Frequency data transfer . . . . . . . . . . . . . . 26 6.1 Output RF Data Transfer from the CR14 to the PICC (Request Frame) . . . . 26 6.2 Transmission Format of Request Frame Characters . . . . . . . . . . . . . . . . . . 27 6.3 Request Start Of Frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 6.4 Request End Of Frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 6.5 Input RF Data Transfer from the PICC to the CR14 (Answer Frame) . . . . . . 28 6.6 Transmission Format of Answer Frame Characters . . . . . . . . . . . . . . . . . . . 29 6.7 Answer Start Of Frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 6.8 Answer End Of Frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 6.9 Transmission Frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 6.10 CRC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 Tag access using the CR14 coupler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 7.1 Standard TAG Command Access Description . . . . . . . . . . . . . . . . . . . . . . . 31 7.2 Anti-Collision TAG Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 8 Maximum rating . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 9 DC and AC parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 10 Package mechanical . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 11 Part numbering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 Appendix A ISO14443 type B CRC calculation . . . . . . . . . . . . . . . . . . . . . . . . . . 44 12 Revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 3/46 CR14 List of tables Table 1. Table 2. Table 3. Table 4. Table 5. Table 6. Table 7. Table 8. Table 9. Table 10. Table 11. Table 12. Table 13. Table 14. Table 15. Table 16. Table 17. 4/46 Signal Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 CR14 Control Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Parameter Register Bits Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Input/Output Frame Register Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Slot Marker Register Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Device Select Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 CR14 Request Frame Character Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Absolute Maximum Ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 I²C AC Measurement Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 I²C Input Parameters(1,2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 I²C DC Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 I²C AC Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 RFOUT AC Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 RFIN AC Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 SO16 Narrow - 16 lead Plastic Small Outline, 150 mils body width, Package Mechanical Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 Ordering Information Scheme. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 Document Revision History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 CR14 List of figures Figure 1. Figure 2. Figure 3. Figure 4. Figure 5. Figure 6. Figure 7. Figure 8. Figure 9. Figure 10. Figure 11. Figure 12. Figure 13. Figure 14. Figure 15. Figure 16. Figure 17. Figure 18. Figure 19. Figure 20. Figure 21. Figure 22. Figure 23. Figure 24. Figure 25. Figure 26. Figure 27. Figure 28. Figure 29. Figure 30. Figure 31. Figure 32. Figure 33. Figure 34. Figure 35. Figure 36. Logic Diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Logic Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 SO Pin Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 CR14 Application Schematic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Maximum RL Value versus Bus Capacitance (CBUS) for an I²C Bus . . . . . . . . . . . . . . . . . 11 I²C Bus Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 CR14 I²C Write Mode Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 I²C Polling Flowchart using ACK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 CR14 I²C Read Modes Sequences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Host-to-CR14 Transfer: I²C Write to Parameter Register . . . . . . . . . . . . . . . . . . . . . . . . . 22 CR14-to-Host Transfer: I²C Random Address Read from Parameter Register . . . . . . . . . 22 CR14-to-Host Transfer: I²C Current Address Read from Parameter Register . . . . . . . . . . 22 Host-to-CR14 Transfer: I²C Write to Input/Output Frame Register for ISO14443B . . . . . . 23 CR14-to-Host Transfer: I²C Random Address Read from Input/Output Frame Register for ISO14443B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 CR14-to-Host Transfer: I²C Current Address Read from I/O Frame Register for ISO14443B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 Host-to-CR14 Transfer: I²C Write to Slot Marker Register . . . . . . . . . . . . . . . . . . . . . . . . . 24 CR14-to-Host Transfer: I²C Random Address Read from Slot Marker Register . . . . . . . . 25 CR14-to-Host Transfer: I²C Current Address Read from Slot Marker Register . . . . . . . . . 25 Wave Transmitted using ASK Modulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 CR14 Request Frame Character Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Request Start Of Frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Request End Of Frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 Wave Received using BPSK Sub-carrier Modulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 Answer Start Of Frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Answer End Of Frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Example of a Complete Transmission Frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 CRC Transmission Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 Standard TAG Command: Request Frame Transmission . . . . . . . . . . . . . . . . . . . . . . . . . 31 Standard TAG Command: Answer Frame Reception. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Standard TAG Command: Complete TAG Access Description . . . . . . . . . . . . . . . . . . . . . 32 Anti-Collision ST short range memory Sequence (1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 Anti-Collision ST short range memory Sequence Continued . . . . . . . . . . . . . . . . . . . . . . . 34 I²C AC Testing I/O Waveform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 I²C AC Waveforms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 CR14 Synchronous Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 SO16 Narrow - 16 lead Plastic Small Outline, 150 mils body width, Package Outline . . . . 42 5/46 1 Summary description 1 CR14 Summary description The CR14 is a contactless coupler that is compliant with the short range ISO14443 type-B standard. It is controlled using the two wire I²C bus. The CR14 generates a 13.56MHz signal on an external antenna. Transmitted data are modulated using Amplitude Shift Keying (ASK). Received data are demodulated from the PICC (Proximity integrated Coupling Card) load variation signal, induced on the antenna, using Bit Phase Shift Keying (BPSK) of a 847kHz sub-carrier. The Transmitted ASK wave is 10% modulated. The Data transfer rate between the CR14 and the PICC is 106 Kbit/s in both transmission and reception modes. The CR14 follows the ISO14443 type-B recommendation for Radio frequency power and signal interface. The CR14 is specifically designed for short range applications that need disposable and reusable products. The CR14 includes an automated anti-collision mechanism that allows it to detect and select any ST short range memories that are present at the same time within its range. The anticollision mechanism is based on the STMicroelectronics probabilistic scanning method. The CR14 provides a complete analog interface, compliant with the ISO14443 type-B recommendations for Radio-Frequency power and signal interfacing. With it, any ISO14443 type-B PICC products can be powered and have their data transmission controlled via a simple antenna. The CR14 is fabricated in STMicroelectronics High Endurance Single Poly-silicon CMOS technology. The CR14 is organized as 4 different blocks (see Figure 2): ● The I²C bus controller. It handles the serial connection with the application host. It is compliant with the 400kHz I²C bus specification, and controls the read/write access to all the CR14 registers. ● The RAM buffer. It is bi-directional. . It stores all the request frame Bytes to be transmitted to the PICC, and all the received Bytes sent by the PICC on the answer frame. ● The transmitter. It powers the PICCs by generating a 13.56MHz signal on an external antenna. The resulting field is 10% modulated using ASK (amplitude shift keying) for outgoing data. ● The receiver. It demodulates the signal generated on the antenna by the load variation of the PICC. The resulting signal is decoded by a 847kHz BPSK (binary phase shift keying) sub-carrier decoder. The CR14 is designed to be connected to a digital host (Microcontroller or ASIC). This host has to manage the entire communication protocol in both transmit and receive modes, through the I²C serial bus. 6/46 CR14 1 Summary description Figure 1. Logic Diagram VCC VREF RFOUT OSC1 OSC2 SCL SDA E0 E1 E2 CR14 Antenna RFIN GND GND_RF ai12059 Table 1. Signal Names RFOUT Antenna Output Driver RFIN Antenna Input Filter OSC1 Oscillator Input OSC2 Oscillator Output E0, E1, E2 Chip Enable Inputs SDA I²C Bi-Directional Data SCL I²C Clock VCC Power Supply GND Ground VREF Transmitter Reference Voltage GND_RF Ground for RF circuitry 7/46 CR14 1 Summary description Figure 2. Logic Block Diagram VCC VREF CR14 RFOUT OSC2 Antenna Receiver RAM Buffer I²C Bus Controller SCL SDA E0 E1 E2 Transmitter OSC1 GND RFIN GND_RF AI12060 Figure 3. SO Pin Connections SO16 VREF RFIN E0 E1 E2 GND_RF GND GND 1 2 3 4 5 6 7 8 16 15 14 13 12 11 10 9 VCC RFOUT GND_RF OSC1 OSC2 GND SCL SDA AI10911 8/46 CR14 2 2 Signal description Signal description See Figure 1: Logic Diagram, and Table 1: Signal Names, for an overview of the signals connected to this device. 2.1 Oscillator (OSC1, OSC2) The OSC1 and OSC2 pins are internally connected to the on-chip oscillator circuit. The OSC1 pin is the input pin, the OSC2 is the output pin. For correct operation of the CR14, it is required to connect a 13.56MHz quartz crystal across OSC1 and OSC2. If an external clock is used, it must be connected to OSC1 and OSC2 must be left open. 2.2 Antenna Output Driver (RFOUT) The Antenna Output Driver pin, RFOUT, generates the modulated 13.56MHz signal on the antenna. Care must be taken as it will not withstand a short-circuit. RFOUT has to be connected to the antenna circuitry as shown in Figure 4: CR14 Application Schematic The LRC antenna circuitry must be connected across the RFOUT pin and GND. 2.3 Antenna Input Filter (RFIN) The antenna input filter of the CR14, RFIN, has to be connected to the external antenna through an adapter circuit, as shown in Figure 4. The input filter demodulates the signal generated on the antenna by the load variation of the PICC. The resulting signal is then decoded by the 847kHz BPSK decoder. 2.4 Transmitter Reference Voltage (VREF) The Transmitter Reference Voltage input, VREF, provides a reference voltage used by the output driver for ASK modulation. The Transmitter Reference Voltage input should be connected to an external capacitor, as shown in Figure 4. 2.5 Serial Clock (SCL) The SCL input pin is used to strobe all I²C data in and out of the CR14. In applications where this line is used by slave devices to synchronize the bus to a slower clock, the master must have an open drain output, and a pull-up resistor must be connected from the Serial Clock (SCL) to VCC. (Figure 5 indicates how the value of the pull-up resistor can be calculated). In most applications, though, this method of synchronization is not employed, and so the pullup resistor is not necessary, provided that the master has a push-pull (rather than open drain) output. 9/46 CR14 2 Signal description 2.6 Serial Data (SDA) The SDA signal is bi-directional. It is used to transfer I²C data in and out of the CR14. It is an open drain output that may be wire-OR’ed with other open drain or open collector signals on the bus. A pull-up resistor must be connected from Serial data (SDA) to VCC. (Figure 5 indicates how the value of the pull-up resistor can be calculated). 2.7 Chip Enable (E0, E1, E2) The Chip Enable inputs E0, E1, E2 are used to set and reset the value on the three least significant bits (b3, b2, b1) of the 7-bit I²C Device Select Code. They are used for hardwired addressing, allowing up to eight CR14 devices to be addressed on the same I²C bus. These inputs may be driven dynamically or tied to VCC or GND to establish the Device Select Code (note that the VIL and VIH levels for the inputs are CMOS compatible, not TTL compatible). When left open, E0, E1 and E2 are internally read at the logic level 0 due to the internal pulldown resistors connected to each inputs. 2.8 Power Supply (VCC, GND, GND_RF) Power is supplied to the CR14 using the VCC, GND and GND_RF pins. VCC is the Power Supply pin that supplies the power (+5V) for all CR14 operations. The GND and GND_RF pins are ground connections. They must be connected together. Decoupling capacitors should be connected between the VCC Supply Voltage pin, the GND Ground pin and the GND_REF Ground pin to filter the power line, as shown in Figure 4. Figure 4. CR14 Application Schematic D1 1N4148 (OPTIONAL) C6VCC C8 100pF50V VCC 100nF50V OPT OPT R1 E0 0R WURTH 742-792-042U1 FL7 1 VREF VCC 2 R5 RFIN RFOUT 22nF50V 3 E0 GND_RF 4 E1 OSC1 5 E2 OSC2 6 E2 GND_RF GND 7 0R GND SCL 8 GND SDA R6 CR14 OPT C3 R3 E1 0R R2 R4 C1 7pF50V 16 15 14 13 12 11 10 9 X1 13.56MHz C8' 8pF50V C5 10pF50V R8 0R ANT1 C7 C7' 120pF50V 33pF50V C2 7pF50V R7 ANT2 0R J1 4 3 2 1 SDASCL FL5 0R FL4 0R FL6 0R VCC + C4 22uF 10V AI12061 10/46 CR14 2 Signal description Figure 5. Maximum RL Value versus Bus Capacitance (CBUS) for an I²C Bus VCC Maximum RP value (kΩ) 20 16 RL 12 RL SDA MASTER 8 fc = 100kHz 4 fc = 400kHz CBUS SCL CBUS 0 10 100 1000 CBUS (pF) AI01665 11/46 CR14 3 CR14 registers 3 CR14 registers The CR14 chip coupler contains six volatile registers. It is entirely controlled, at both digital and analog level, using the three registers listed below and shown in Table 2: ● Parameter Register ● Input/Output Frame Register ● Slot Marker Register The other 3 registers are located at addresses 02h, 04h and 05h. They are “ST Reserved”, and must not be used in end-user applications. In the I²C protocol, all data Bytes are transmitted Most Significant Byte first, with each Byte transmitted Most significant bit first. Table 2. CR14 Control Registers Address 00h 01h Length Parameter Register Input/output Frame Register Access Purpose W Set parameter register R Read parameter register W Store and send request frame to the PICC. Wait for PICC answer frame R Transfer PICC answered frame data to Host 1 Byte 36 Bytes W 02h ST Reserved NA ST Reserved, must not be used. R 03h 12/46 Slot Marker Register W Launch the automated anti-collision process from Slot_0 to Slot_15 R Return data FFh 1 Byte 04h ST Reserved NA R and W ST Reserved. Must not be used 05h ST Reserved NA R and W ST Reserved. Must not be used CR14 3.1 3 CR14 registers Parameter Register (00h) The Parameter Register is an 8-bit volatile register used to configure the CR14, and thus, to customize the circuit behavior. The Parameter Register is located at the I²C address 00h and it is accessible in I²C Read and Write modes. Its default value, 00h, puts the CR14 in standard ISO14443 type-B configuration. Table 3. Bit Parameter Register Bits Description Control b0 Frame Standard b1 RFU b2 Answer Frame Format b3 ASK Modulation Depth b4 Carrier Frequency b5 tWDG b6 Answer delay watchdog b7 RFU Value Description 0 ISO14443 type-B frame management 1 RFU(1) 0 Not used 0 Answer PICC Frames are delimited by SOF and EOF 1 Answer PICC Frames do not provide SOF and EOF delimiters 0 10% ASK modulation depth mode 1 RFU 0 13.56MHz carrier on RF OUT is OFF 1 13.56MHz carrier on RF OUT is ON b5=0, b6=0: Watchdog time-out = 500µs to be used for read b5=0, b6=1: Watchdog time-out = 5ms to be used for read b5=1, b6=0: Watchdog time-out = 10ms to be used for write b5=1, b6=1: Watchdog time-out = 309ms to be used for MCU timings 0 Not used 1. RFU = Reserved for Future Use. 3.2 Input/Output Frame Register (01h) The Input/Output Frame Register is a 36-Byte buffer that is accessed serially from Byte 0 through to Byte 35 (see Table 4). It is located at the I²C address 01h. The Input/Output Frame Register is the buffer in which the CR14 stores the data Bytes of the request frame to be sent to the PICC. It automatically stores the data Bytes of the answer frame received from the PICC. The first Byte (Byte 0) of the Input/Output Frame Register is used to store the frame length for both transmission and reception. When accessed in I²C Write mode , the register stores the request frame Bytes that are to be transmitted to the PICC. Byte 0 must be set with the request frame length (in Bytes) and the frame is stored from Byte 1 onwards. At the end of the transmission, the 16-bit CRC is automatically added. After the transmission, the CR14 wait for the PICC to send back an answer frame. When correctly decoded, the PICC answer frame Bytes are stored in the Input/ Output Frame Register from Byte 1 onwards. Byte 0 stores the number of Bytes received from the PICC. When accessed in I²C Read mode, the Input/Output Register sends back the last PICC answer frame Bytes, if any, with Byte 0 transmitted first. The 16-bit CRC is not stored, and it is not sent back on the I²C bus. 13/46 CR14 3 CR14 registers The Input/Output Frame Register is set to all 00h between transmission and reception. If there is no answer from the PICC, Byte 0 is set to 00h. In the case of a CRC error, Byte 0 is set to FFh, and the data Bytes are discarded and not appended in the register. The CR14 Input/Output Frame Register is so designed as to generate all the ST short range memory command frames. It can also generate all standardized ISO14443 type-B command frames like REQB, SLOT-MARKER, ATTRIB, HALT, and get all the answers like ATQB, or answer to ATTRIB. All ISO14443 type-B compliant PICCs can be accessed by the CR14 provided that their data frame exchange is not longer than 35 Bytes in both request and answer. Table 4. Input/Output Frame Register Description Byte 0 Byte 1 Byte 2 Frame Length First data Byte Second data Byte Byte 3 ... Byte 34 Byte 35 Last data Byte <------------- Request and Answer Frame Bytes exchanged on the RF -------------> 00h No Byte transmitted FFh CRC Error xxh Number of transmitted Bytes 3.3 Slot Marker Register (03h) The slot Marker Register is located at the I²C address 03h. It is used to trigger an automated anti-collision sequence between the CR14 and any ST short range memory present in the electromagnetic field. With one I²C access, the CR14 launches a complete stream of commands starting from PCALL16(), SLOT_MARKER(1), SLOT_MARKER(2) up to SLOT_MARKER(15), and stores all the identified Chip_IDs into the Input/Output Frame Register (I²C address 01h). This automated anti-collision sequence simplifies the host software development and reduces the time needed to interrogate the 16 slots of the STMicroelectronics anti-collision mechanism. When accessed in I²C Write mode, the Slot Marker Register starts generating the sequence of anti-collision commands. After each command, the CR14 wait for the ST short range memory answer frame which contains the Chip_ID. The validity of the answer is checked and stored into the corresponding Status Slot Bit (Byte 1 and Byte 2 as described in Table 6). If the answer is correct, the Status Slot Bit is set to ‘1’ and the Chip_ID is stored into the corresponding Slot_Register. If no answer is detected, the Status Slot Bit is set to ‘0’, and the corresponding Slot_Register is set to 00h. If a CRC error is detected, the Status Slot Bit is set to ‘0’, and the corresponding Slot_Register is set to FFh. Each time the Slot Marker Register is accessed in I²C Write mode, Byte 0 of the Input/Output Frame Register is set to 18, Bytes 1 and 2 provide Status Bits Slot information, and Bytes 3 to 18 store the corresponding Chip_ID or error code. The Slot Marker Register cannot be accessed in I²C Read mode. All the anti-collision data can be accessed by reading the Input/Output Frame Register at the I²C address 01h. 14/46 CR14 Table 5. 3 CR14 registers Slot Marker Register Description b7 b6 b5 b4 b3 b2 b1 b0 Byte 0 Number of stored Bytes: fixed to 18 Byte 1 Status Slot Status Slot Status Slot Status Slot Status Slot Status Slot Status Slot Status Slot Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Byte 2 Status Slot Status Slot Status Slot Status Slot Status Slot Status Slot Status Slot Status Slot Bit 15 Bit 14 Bit 13 Bit 12 Bit 11 Bit 10 Bit 9 Bit 8 Byte 3 Slot_Register 0 = Chip_ID value detected in Slot 0 Byte 4 Slot_Register 1 = Chip_ID value detected in Slot 1 Byte 5 Slot_Register 2 = Chip_ID value detected in Slot 2 Byte 6 Slot_Register 3 = Chip_ID value detected in Slot 3 Byte n ..... Byte 17 Slot_Register 14 = Chip_ID value detected in Slot 14 Byte 18 Slot_Register 15 = Chip_ID value detected in Slot 15 Status bit value description: 1: No error detected. The Chip_ID stored in the Slot register is valid. 0: Error detected – Slot register = 00h: No answer frame detected from ST short range memory – Slot register = FFh: Answer Frame detected with CRC error. Collision may have occurred 15/46 CR14 4 CR14 I²C protocol description 4 CR14 I²C protocol description The CR14 is compatible with the I²C serial bus memory standard, which is a two-wire serial interface that uses a bi-directional data bus and serial clock. The CR14 has a pre-programmed, 4-bit identification code, ’1010’ (as shown in Table 6), that corresponds to the I²C bus definition. With this code and the three Chip Enable inputs (E2, E1, E0) up to eight CR14 devices can be connected to the I²C bus, and selected individually. The CR14 behaves as a slave device in the I²C protocol, with all CR14 operations synchronized to the serial clock. I²C Read and Write operations are initiated by a START condition, generated by the bus master. The START condition is followed by the Device Select Code and by a Read/Write bit (R/W). It is terminated by an acknowledge bit. The Device Select Code consists of seven bits (as shown in Table 6): ● the Device Code (first four bits) ● plus three bits corresponding to the states of the three Chip Enable inputs, E2, E1 and E0, respectively When data is written to the CR14, the device inserts an acknowledge bit (9th bit) after the bus master’s 8-bit transmission. When the bus master reads data, it also acknowledges the receipt of the data Byte by inserting an acknowledge bit (9th bit). Data transfers are terminated by a STOP condition after an ACK for Write, or after a NoACK for Read. The CR14 supports the I²C protocol, as summarized in Figure 6. Any device that sends data on to the bus, is defined as a transmitter, and any device that reads the data, as a receiver. The device that controls the data transfer is known as the master, and the other, as the slave. A data transfer can only be initiated by the master, which also provides the serial clock for synchronization. The CR14 is always a slave device in all I²C communications. All data are transmitted Most Significant Bit (MSB) first. Table 6. Device Select Code Device Code CR14 Select 16/46 RW Chip Enable b7 b6 b5 b4 b3 b2 b1 b0 1 0 1 0 E2 E1 E0 RW CR14 4.1 4 CR14 I²C protocol description I²C Start Condition START is identified by a High-to-Low transition of the Serial Data line, SDA, while the Serial Clock, SCL, is stable in the High state. A START condition must precede any data transfer command. The CR14 continuously monitors the SDA and SCL lines for a START condition (except during Radio Frequency data exchanges), and will not respond unless one is sent. 4.2 I²C Stop Condition STOP is identified by a Low-to-High transition of the Serial Data line, SDA, while the Serial Clock, SCL, is stable in the High state. A STOP condition terminates communications between the CR14 and the bus master. A STOP condition at the end of an I²C Read command, after (and only after) a NoACK, forces the CR14 into its stand-by state. A STOP condition at the end of an I²C Write command triggers the Radio Frequency data exchange between the CR14 and the PICC. 4.3 I²C Acknowledge Bit (ACK) An acknowledge bit is used to indicate a successful data transfer on the I²C bus. The bus transmitter, either master or slave, releases the Serial Data line, SDA, after sending 8 bits of data. During the 9th clock pulse the receiver pulls the SDA line Low to acknowledge the receipt of the 8 data bits. 4.4 I²C Data Input During data input, the CR14 samples the SDA bus signal on the rising edge of the Serial Clock, SCL. For correct device operation, the SDA signal must be stable during the Low-to-High Serial Clock transition, and the data must change only when the SCL line is Low 17/46 CR14 4 CR14 I²C protocol description Figure 6. I²C Bus Protocol SCL SDA START CONDITION SCL 1 SDA MSB SDA INPUT 2 SDA CHANGE STOP CONDITION 3 7 8 9 ACK START CONDITION SCL 1 SDA MSB 2 3 7 8 9 ACK STOP CONDITION AI00792 4.5 I²C Memory Addressing To start up communication with the CR14, the bus master must initiate a START condition. Then, the bus master sends 8 bits (with the most significant bit first) on the Serial Data line, SDA. These bits consist of the Device Select Code (7 bits) plus a RW bit. According to the I²C bus definition, the seven most significant bits of the Device Select Code are the Device Type Identifier. For the CR14, these bits are defined as shown in Table 6. The 8th bit is the Read/Write bit (RW). It is set to ‘1’ for I²C Read, and to ‘0’ for I²C Write operations. If the data sent by the bus master matches the Device Select Code of a CR14 device, the corresponding device returns an acknowledgment on the SDA bus during the 9th bit time. The CR14 devices whose Device Select Codes do not correspond to the data sent, generate a No-ACK. They deselect themselves from the bus and go into stand-by mode. 18/46 CR14 4.6 4 CR14 I²C protocol description CR14 I²C Write Operations The bus master sends a START condition, followed by a Device Select Code and the R/W bit set to ’0’. The CR14 that corresponds to the Device Select Code, acknowledges and waits for the bus master to send the Byte address of the register that is to be written to. After receipt of the address, the CR14 returns another ACK, and waits for the bus master to send the data Bytes that are to be written. In the CR14 I²C Write mode, the bus master may sends one or more data Bytes depending on the selected register. The CR14 replies with an ACK after each data Byte received. The bus master terminates the transfer by generating a STOP condition. The STOP condition at the end of a Write access to the Input/Output Frame Register causes the Radio Frequency data exchange between the CR14 and the PICC to be started. During the Radio Frequency data exchange, the CR14 disconnects itself from the I²C bus. The time (tRFEX) needed to complete the exchange is not fixed as it depends on the PICC command format. To know when the exchange is complete, the bus master uses an ACK polling sequence as shown in Figure 8. It consists of the following: Initial condition: a Radio Frequency data exchange is in progress. ● Step 1: the master issues a START condition followed by the first Byte of the new instruction (Device Select Code plus R/W bit). ● Step 2: if the CR14 is busy, no ACK is returned and the master goes back to Step 1. If the CR14 has completed the Radio Frequency data exchange, it responds with an ACK, indicating that it is ready to receive the second part of the next instruction (the first Byte of this instruction being sent during Step 1). BUS Master R/W DEV SEL BYTE ADDR DATA 1 DATA 2 DATA N DATA 3 STOP CR14 I²C Write Mode Sequence START Figure 7. ● CR14 WRITE BUS Slave ACK ACK ACK ACK ACK ACK AI12062 19/46 CR14 4 CR14 I²C protocol description Figure 8. I²C Polling Flowchart using ACK Radio Frequency data exchange in progress START Condition DEVICE SELECT CODE with R/W=1 NO First byte of instruction with R/W = 1 already decoded by the CR14 YES NO ReSTART ACK returned Next operation is addressing the CR14 YES Proceed to READ Operation STOP STOP ai12063 20/46 CR14 CR14 I²C Read Operations To send a Read command, the bus master sends a START condition, followed by a Device Select Code and the R/W bit set to ’1’. The CR14 that corresponds to the Device Select Code acknowledges and outputs the first data Byte of the addressed register. To select a specific register, a dummy Write command must first be issued, giving an address Byte but no data Bytes, as shown in the bottom half of Figure 9. This causes the new address to be stored in the internal address pointer, for use by the Read command that immediately follows the dummy Write command. In the I²C Read mode, the CR14 may read one or more data Bytes depending on the selected register. The bus master has to generate an ACK after each data Byte to read all the register data in a continuous stream. Only the last data Byte should not be followed by an ACK. The master then terminates the transfer with a STOP condition, as shown in Figure 9. After reading each Byte, the CR14 waits for the master to send an ACK during the 9th bit time. If the master does not return an ACK within this time, the CR14 terminates the data transfer and switches to stand-by mode. Figure 9. CR14 I²C Read Modes Sequences ACK R/W ACK ACK ACK NoACK STOP BUS Master START I²C CURRENT ADDRESS READ DEV SEL CR14 READ DATA 1 BUS Slave DATA 2 DATA 3 DATA 4 DATA N ACK DEV SEL ADDRESS R/W ACK ACK NoACK STOP BUS Master R/W Re-START I²C RANDOM ADDRESS READ START 4.7 4 CR14 I²C protocol description DEV SEL CR14 READ DATA 1 BUS Slave ACK ACK DATA 2 DATA N ACK AI12064 21/46 CR14 5 Applying the I²C protocol to the CR14 registers 5 Applying the I²C protocol to the CR14 registers 5.1 I²C Parameter Register Protocol Figure 10 shows how new data is written to the Parameter Register. The new value becomes active after the I²C STOP condition. Figure 11 shows how to read the Parameter Register contents. The CR14 sends and re-sends the Parameter Register contents until it receives a NoACK from the I²C Host. The CR14 supports the I²C Current Address and Random Address Read modes. The Current Address Read mode can be used if the previous command was issued to the register where the Read is to take place. Figure 10. Host-to-CR14 Transfer: I²C Write to Parameter Register Bus Master S T A R T CR14 Write R/W Device Select Code Parameter Register Address 1 0 1 0 X X X 00h S T O P Register Byte Value data Bus Slave ACK ACK ACK ai12038 Figure 11. CR14-to-Host Transfer: I²C Random Address Read from Parameter Register S T Bus Master A R T CR14 Read R E S T A R T R/W Device Select Code Parameter Register Address 1 0 1 0 X X X 00h R/W Device Select Code 1 0 1 0 X X X ACK S T O P data Bus Slave ACK NoACK ACK Register Byte Value ai12039 Figure 12. CR14-to-Host Transfer: I²C Current Address Read from Parameter Register Bus Master CR14 Read S T A R T R/W NoACK Device Select Code S T O P data 1 0 1 0 X X X Bus Slave ACK Register Byte Value ai12040 22/46 CR14 5.2 5 Applying the I²C protocol to the CR14 registers I²C Input/Output Frame Register Protocol Figure 13 shows how to store a PICC request frame command of N Bytes into the Input/Output Frame Register. After the I²C STOP condition, the request frame is RF transmitted in the ISO14443 type-B format. The CR14 then waits for the PICC answer frame which will also be stored in the Input/ Output Frame Register. The request frame is over-written by the answer frame. Figure 14 shows how to read an N-Byte PICC answer frame. The two CRC Bytes generated by the PICC are not stored. The CR14 continues to output data Bytes until a NoACK has been generated by the I²C Host, and received by the CR14. After all 36 Bytes have been output, the CR14 “rolls over”, and starts outputting from the start of the Input/Output Frame Register again. The CR14 supports the I²C Current Address and Random Address Read modes. The Current Address Read mode can be used if the previous command was issued to the register where the Read is to take place. Figure 13. Host-to-CR14 Transfer: I²C Write to Input/Output Frame Register for ISO14443B S T A Bus R Master T CR14 Write Bus Slave R/W Device Select Code Input/Output Register Address 1 0 1 0 XX X 01h ACK PICC Command Code Request Frame Length N N PICC Command Parameter Data 1 ACK PICC Command Parameter Data 2 ACK ACK PICC Command Parameter S T O P Data N ACK ACK ACK ai12041 Figure 14. CR14-to-Host Transfer: I²C Random Address Read from Input/Output Frame Register for ISO14443B R/W S Input/Output Device T Register Select Bus A Address Code Master R T CR14 1 0 1 0XXX 01h Read Bus Slave ACK R E S T A R T ACK R/W ACK ACK ACK NoACK Device Select Code 1 0 1 0 XXX ACK S T O P N Received ACK Frame Length Data1 Answer Frame Data Data 2 Answer Frame Data Data N Answer Frame Data Answer Frame Data ai12042 23/46 CR14 5 Applying the I²C protocol to the CR14 registers Figure 15. CR14-to-Host Transfer: I²C Current Address Read from I/O Frame Register for ISO14443B Bus Master CR14 Write S T A R T ACK R/W ACK ACK ACK NoACK Device Select Code S T O P 1 0 1 0 XX X N Bus Slave ACK Data 1 Received Answer Frame Frame Length Data Data 2 Data N Answer Frame Data Answer Frame Data Answer Frame Data ai12043 5.3 I²C Slot Marker Register Protocol An I²C Write command to the Slot Marker Register generates an automated sixteen-command loop (See Figure 16 for a description of the command). All the answers from the ST short range memory devices that are detected, are written in the Input/Output Frame Register. Read from the I²C Slot Marker Register is not supported by the CR14. If the I²C Host tries to read the Slot Marker Register, the CR14 will return the data value FFh in both Random Address and Current Address Read modes until NoACK is generated by the I²C Host. The result of the detection sequence is stored in the Input/Output Frame Register. This Register can be read by the host by using I²C Random Address Read. Figure 16. Host-to-CR14 Transfer: I²C Write to Slot Marker Register Bus Master CR14 Write S T A R T R/W Device Select Code Slot Marker Register Address 1 0 1 0 X X X 03h S T O P Bus Slave ACK ACK ai12044 24/46 CR14 5 Applying the I²C protocol to the CR14 registers Figure 17. CR14-to-Host Transfer: I²C Random Address Read from Slot Marker Register Bus Master CR14 Read S T A R T R E S T A R T R/W Device Select Code Slot Marker Register Address 1 0 1 0 X X X 00h R/W NoACK Device Select Code 1 0 1 0 X X X S T O P FFh Bus Slave ACK ACK ACK ai12045 Figure 18. CR14-to-Host Transfer: I²C Current Address Read from Slot Marker Register Bus Master CR14 Read S T A R T R/W NoACK Device Select Code S T O P FFh 1 0 1 0 X X X Bus Slave ACK ai12047 5.4 Addresses above Location 06h In I²C Write mode, when the CR14 receives the 8-bit register address, and the address is above location 06h, the device does not acknowledge (NoACK) and deselects itself from the bus. The Serial Data line, SDA, stays at logic ‘1’ (pull-up resistor), and the I²C Host receives a NoACK during the 9th bit time. The SDA line stays High until the STOP condition is issued. In the I²C Current and Random Address Read modes, when the CR14 receives the 8-bit register address, and the address is above location 06h, the device does not acknowledge the Device Select Code after the START condition, and deselects itself from the bus. 25/46 6 CR14 ISO14443 type-B Radio Frequency data transfer CR14 6 CR14 ISO14443 type-B Radio Frequency data transfer 6.1 Output RF Data Transfer from the CR14 to the PICC (Request Frame) The CR14 output buffer is controlled by the 13.56MHz clock signal generated by the external oscillator and by the request frame generator. The CR14 can be directly connected to an external matching circuit to generate a 13.56MHz sinusoidal carrier frequency on its antenna. The current driven into the antenna coil is directly generated by the CR14 RFOUT output driver. If the antenna is correctly tuned, it emits an H-field of a large enough magnitude to power a contactless PICC from a short distance. The energy received on the PICC antenna is converted to a Power Supply Voltage by a regulator, and turned into data bits by the ASK demodulator. The CR14 amplitude modulates the 13.56MHz wave by 10% as represented in Figure 19. The data transfer rate is 106 kbit/s. Figure 19. Wave Transmitted using ASK Modulation DATA BIT TRANSMITTED BY THE CR14 10% ASK MODULATION OF THE 13.56MHz WAVE, GENERATED BY THE RFOUT DRIVER 10% ASK MODULATION OF THE 13.56MHz WAVE, GENERATED ON THE CR14 ANTENNA Transfer time for one data bit is 1/106 kHz AI12048 26/46 CR14 6.2 6 CR14 ISO14443 type-B Radio Frequency data transfer Transmission Format of Request Frame Characters The CR14 transmits characters of 10 bits, with the Least Significant Bit (b0) transmitted first, as shown in Figure 20. Several 10-bit characters, preceded by the Start Of Frame (SOF) and followed by the End Of Frame (EOF), constitute a Request Frame, as shown in Figure 26. A Request Frame includes the SOF, instructions, addresses, data, CRC and the EOF as defined in the ISO14443 type-B. Each bit duration is called an Elementary Time Unit (ETU). One ETU is equal to 9.44µs (1/ 106kHz). Figure 20. CR14 Request Frame Character Format b0 b1 b2 b3 1 Start LSB ETU '0' b4 b5 b6 b7 b8 b9 MSB Stop '1' Information Byte ai12049 Table 7. CR14 Request Frame Character Format Bit 6.3 Description Value b0 Start bit used to synchronize the transmission b0 = 0 b1 to b8 Information Byte (instruction, address or data) Information Byte is sent Least Significant Bit first b9 Stop bit used to indicate the end of the character b9 = 1 Request Start Of Frame The Start Of Frame (SOF) described in Figure 21 consists of: ● a falling edge, ● followed by ten Elementary Time Units (ETU) each containing a logical ‘0’ ● followed by a single rising edge ● followed by two ETUs, each containing a logical ‘1’. Figure 21. Request Start Of Frame ETU b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 b10 b11 0 0 0 0 0 0 0 0 0 0 1 1 ai12050 27/46 CR14 6 CR14 ISO14443 type-B Radio Frequency data transfer 6.4 Request End Of Frame The End Of Frame (EOF) shown in Figure 22 consists of: ● a falling edge, ● followed by ten Elementary Time Units (ETU) containing each a logical ‘0’, ● followed by a single rising edge. Figure 22. Request End Of Frame ETU b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 0 0 0 0 0 0 0 0 0 0 ai09252 6.5 Input RF Data Transfer from the PICC to the CR14 (Answer Frame) The CR14 uses the ISO14443 type-B retro-modulation scheme which is demodulated and decoded by the RFIN circuitry. The modulation is obtained by modifying the PICC current consumption (load modulation). This load modulation induces an H-field variation, by coupling, that is detected by the CR14 RFIN input as a voltage variation on the antenna. The RFIN input demodulates this variation and decodes the information received from the PICC. Data must be transmitted using a 847kHz, BPSK modulated sub-carrier frequency, fS, as shown in Figure 23, and as specified in ISO14443 type-B. In BPSK, all data state transitions (from ‘0’ to ‘1’ or from ‘1’ to ‘0’) are encoded by phase shift keying the sub-carrier. Figure 23. Wave Received using BPSK Sub-carrier Modulation 1/106kHz PICC data bit to be transmitted to the CR14. 847kHz BPSK, resulting signal generated by the PICC for the load modulation. 1/847kHz phase shift VRFIN VRET VDYN Load modulation effect on the H-Field received on the CR14 RFIN input pad VOFFSET t ai12051 28/46 CR14 6.6 6 CR14 ISO14443 type-B Radio Frequency data transfer Transmission Format of Answer Frame Characters The PICC should use the same character format as that used for output data transfer (see Figure 20). An Answer Frame includes the SOF, data, CRC and the EOF, as illustrated in Figure 26. The data transfer rate is 106 kbit/s. The CR14 will also accept Answer Frames that do not contain the SOF and EOF delimiters, provided that these Frames are correctly set in the Parameter Register. (See Figure 26). 6.7 Answer Start Of Frame The PICC SOF must be compliant with the ISO14443 type-B, and is shown in Figure 24 ● Ten or eleven Elementary Time Units (ETU) each containing a logical ‘0’, ● Two ETUs containing a logical ‘1’. Figure 24. Answer Start Of Frame ETU b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 b10 b11 b12 0 0 0 0 0 0 0 0 0 0 1 1 1 ai09254 6.8 Answer End Of Frame The PICC EOF must be compliant with the ISO14443 type-B, and is shown in Figure 25: ● Ten or eleven Elementary Time Units (ETU) each containing a logical ‘0’, ● Two ETUs containing a logical ‘1’ Figure 25. Answer End Of Frame ETU b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 b10 b11 b12 0 0 0 0 0 0 0 0 0 0 1 1 1 ai09254 29/46 CR14 6 CR14 ISO14443 type-B Radio Frequency data transfer 6.9 Transmission Frame The Request Frame transmission must be followed by a minimum delay, t0 (see Table 13), in which no ASK or BPSK modulation occurs, before the Answer Frame can be transmitted. t0 is the minimum time required by the CR14 to switch from transmission mode to reception mode, and should be inserted after each frame. After t0, the 13.56MHz carrier frequency is modulated by the PICC at 847kHz for a minimum time of t1 (see Table 13) to allow the CR14 to synchronize. After t1, the first phase transition generated by the PICC represents the start bit (‘0’) of the Answer SOF (or the start bit ‘0’ of the first data character in non SOF/EOF mode). Figure 26. Example of a Complete Transmission Frame Sent by the CR14 SOF 12 bits at 106Kb/s Cmd Data CRC CRC EOF 10 bits 10 bits 10 bits 10 bits 10 bits tDR fs = 847.5kHz Sync Case of Answer Frame with SOF & EOF t0 64/fs Min Sent by the PICC t1 80/fs Min SOF 12 or 13 bits Data CRC CRC 10 bits 10 bits 10 bits EOF 12 or 13 bits tWDG Sync Case of Answer Frame without SOF & EOF t0 64/fs Min t1 80/fs Min Data Data Data CRC CRC 10 bits 10 bits 10 bits 10 bits 10 bits tWDG Output Data Transfer using ASK Modulation Input Data Transfer using 847kHz BPSK Modulation ai12052 6.10 CRC The 16-bit CRC used by the CR14 follows the ISO14443 type B recommendation. For further information, please see Appendix A on page 44. The two CRC Bytes are present in all Request and Answer Frames, just before the EOF. The CRC is calculated on all the Bytes between the SOF and the CRC Bytes. Upon transmission of a Request from the CR14, the PICC verifies that the CRC value is valid. If it is invalid, it discards the frame and does not answer the CR14. Upon reception of an Answer from the PICC, the CR14 verifies that the CRC value is valid. If it is invalid, it stores the value FFh in the Input/Output Frame Register. The CRC is transmitted Least Significant Byte first. Each Byte is transmitted Least Significant Bit first. Figure 27. CRC Transmission Rules LSByte LSBit MSByte MSBit LSBit CRC 16 (8 bits) MSBit CRC 16 (8 bits) ai09256 30/46 CR14 7 7 Tag access using the CR14 coupler Tag access using the CR14 coupler In all the following I²C commands, the last three bits of the Device Select Code can be replaced by any of the three-bit binary values (000, 001, 010, 011, 100, 101, 110, 111). These values are linked to the logic levels applied to the E2, E1 and E0 pads of the CR14. 7.1 Standard TAG Command Access Description Standard PICC commands, like Read and Write, are generated by the CR14 using the Input/ Output Frame Register. When the host needs to send a standard frame command to the PICC, it first has to internally generate the complete frame, with the command code followed by the command parameters. Only the two CRC Bytes should not be generated, as the CR14 automatically adds them during the RF transmission. When the frame is ready, the host has to write the request frame into the Input/Output Frame Register using the I²C write command specified in Figure 13 on page 23. After the I²C STOP condition, the CR14 inserts the I²C Bytes in the required ISO character format ( Figure 20) and starts to transmit the request frame to the PICC. Once the RF transmission is over, the CR14 waits for the PICC to send an answer frame. If the PICC answers, the characters received (Figure 26) are demodulated, decoded and stored into the Input/Output Frame Register, as specified in Table 4. During the entire RF transmission, the CR14 disconnects itself from the I²C bus. On reception of the PICC EOF, the CR14 checks the CRC and reconnects itself to the I²C bus. The host can then get the PICC answer frame by issuing an Input/Output Frame Register Read on the I²C bus, as specified in Figures 14 and 15. If no answer from the PICC is detected after a time-out delay, fixed in the Parameter Register (bits b5 and b6), the Input/Output Frame Register is set as specified in Table 4. Figure 28. Standard TAG Command: Request Frame Transmission S T A Device R Select T Code I²C RF Input/ Output Register Address Request Frame Length TAG Cmd Code 01h N Data 1 Param Data 2 Param Data Param S T O P CR14 SOF TAG Cmd Code Param Param Param CRC CRC SR14 EOF Data 2 Data Data N CRC CRC EOF Data N SOF Data 1 ai12053 31/46 CR14 7 Tag access using the CR14 coupler Figure 29. Standard TAG Command: Answer Frame Reception TAG SOF TAG Data TAG Data TAG Data TAG Data TAG CRC TAG CRC TAG EOF I²C RF SOF Data 1 Data 2 Data Data P CRC CRC S T A Device R Select T Code Input/ Output Register Address Answer Frame Length TAG Data 01h P Data 1 TAG Data Data 2 TAG Data Data TAG Data S T O P Data P EOF ai09261 Figure 30. Standard TAG Command: Complete TAG Access Description I²C Device I/O Request Request Select Code Register Frame Frame Write Address Length Bytes START Device Answer Request Select Frame Frame Code Length Bytes Read STOP START STOP SOF RF EOF SOF EOF Request TAG Frame CRC T0 T1 Answer Frame CRC <--> <--> Characters Characters ai09262 7.2 Anti-Collision TAG Sequence The CR14 can identify an ST short range memory using a proprietary anti-collision system. Issuing an I²C Write command to the Slot Marker Register (Figure 16) causes the CR14 TO automatically generate a 16-slot anti-collision sequence, and to store the identified Chip_ID in the Input/Output Frame Register, as specified in Table 5. After receiving the Slot Marker Register I²C Write command, the CR14 generates an RF PCALL16 command followed by fifteen SLOT_MARKER commands, from SLOT_MARKER(1) to SLOT_MARKER(15). After each command, the CR14 waits for a tag answer. If the answer is correctly decoded, the corresponding Chip_ID is stored in the Input/Output Frame Register. If there is no answer, or if the answer is wrong (with a CRC error, for example), the CR14 stores an error code in the Input/Output Frame Register. At the end of the sequence, the host has to read the Input/Output Frame Register to retrieve all the identified Chip_IDs. 32/46 CR14 7 Tag access using the CR14 coupler Figure 31. Anti-Collision ST short range memory Sequence (1) S Slot S T Device Marker T CR14 A Select Register SOF R Code Address O P T I²C RF PCALL 16 TAG Command CRC CRC CR14 EOF CRC CRC EOF Slot Marker CRC Command CRC CR14 EOF TAG SOF TAG Chip_ID TAG CRC TAG CRC TAG EOF SOF Chip_ID CRC CRC EOF TAG SOF TAG Chip_ID TAG CRC TAG CRC TAG EOF 03h Slot 0 SOF 06h CR14 SOF 04h t0 t1 <--> <--> I²C RF... Slot 1 SOF 16h CRC CRC EOF t0 t1 <--> <--> SOF Chip_ID CRC CRC EOF Slot 2 SOF 26h CRC CRC EOF t0 t1 <--> <--> SOF Chip_ID CRC CRC EOF Slot 3 SOF 36h CRC CRC EOF t0 t1 <--> <--> SOF Chip_ID CRC CRC EOF Slot 4 SOF 46h CRC CRC EOF t0 t1 <--> <--> SOF Chip_ID CRC CRC EOF Slot 5 SOF 56h CRC CRC EOF t0 t1 <--> <--> SOF Chip_ID CRC CRC EOF Slot 6 SOF 66h CRC CRC EOF t0 t1 <--> <--> SOF Chip_ID CRC CRC EOF Slot 7 SOF 76h CRC CRC EOF t0 t1 <--> <--> SOF Chip_ID CRC CRC EOF Slot 8 SOF 86h CRC CRC EOF t0 t1 <--> <--> SOF Chip_ID CRC CRC EOF Slot 9 SOF 96h CRC CRC EOF t0 t1 <--> <--> SOF Chip_ID CRC CRC EOF I²C RF... I²C RF... I²C RF... I²C RF... I²C RF... I²C RF... I²C RF... I²C RF... ai12054 33/46 CR14 7 Tag access using the CR14 coupler Figure 32. Anti-Collision ST short range memory Sequence Continued I²C RF ... Slot 10 SOF 96h CRC CRC EOF t0 t1 <--> <--> SOF Chip_ID CRC CRC EOF Slot 11 SOF 56h CRC CRC EOF t0 t1 <--> <--> SOF Chip_ID CRC CRC EOF Slot 12 SOF 66h CRC CRC EOF t0 t1 <--> <--> SOF Chip_ID CRC CRC EOF Slot 13 SOF 76h CRC CRC EOF t0 t1 <--> <--> SOF Chip_ID CRC CRC EOF Slot 14 SOF 86h CRC CRC EOF t0 t1 <--> <--> SOF Chip_ID CRC CRC EOF Slot 15 SOF 96h CRC CRC EOF SOF Chip_ID CRC CRC EOF I²C RF ... I²C RF ... I²C RF ... I²C RF ... I²C RF ... S T Device A Select R Code T I²C ... RF t0 t1 <--> <--> R E S T Device Answer Status Status Slot 1 I/O Slot 2 Slot 3 Slot 4 Slot 5 Slot 6 Slot 7 Slot 8 Slot 0 Register A Select Frame Slot Bits Slot Bits Chip_ID Chip_ID Chip_ID Chip_ID Chip_ID Chip_ID Chip_ID Chip_ID Chip_ID Address R Code Length b0 to b7 b8 to b15 Answer Answer Answer Answer Answer Answer Answer Answer Answer T 01h 12h Status Status Chip_ID Chip_ID Chip_ID Chip_ID Chip_ID Chip_ID Chip_ID Chip_ID Chip_ID S Slot 9 Slot 10 Slot 11 Slot 12 Slot 13 Slot 14 Slot 15 T Chip_ID Chip_ID Chip_ID Chip_ID Chip_ID Chip_ID Chip_ID O Answer Answer Answer Answer Answer Answer Answer P I²C ... Chip_ID Chip_ID Chip_ID Chip_ID Chip_ID Chip_ID Chip_ID RF ai09264 34/46 CR14 8 8 Maximum rating Maximum rating Stressing the device above the rating listed in the Absolute Maximum Ratings table may cause permanent damage to the device. Exposure to Absolute Maximum Rating conditions for extended periods may affect device reliability. These are stress ratings only and operation of the device at these or any other conditions above those indicated in the Operating sections of this specification is not implied. Refer also to the STMicroelectronics SURE Program and other relevant quality documents. Table 8. Absolute Maximum Ratings Symbol Value Unit Storage Temperature –65 to 150 °C VIO Input or Output range (SDA) –0.3 to 6.5 V VIO Input or Output range (others pads) –0.3 to Vcc+0.3 V VCC Supply Voltage –0.3 to 6.5 V POUT Output Power on Antenna Output Driver (RFOUT) 100 mW Electrostatic Discharge Voltage (Human Body model) (1) 4000 V Electrostatic Discharge Voltage (Machine model) (2) 500 V TSTG VESD Parameter 1. MIL-STD-883C, 3015.7 (100pF, 1500Ω). 2. EIAJ IC-121 (Condition C) (200pF, 0Ω) 35/46 CR14 9 DC and AC parameters 9 DC and AC parameters This section summarizes the operating and measurement conditions, and the DC and AC characteristics of the device. The parameters in the DC and AC Characteristic tables that follow are derived from tests performed under the Measurement Conditions summarized in the relevant tables. Designers should check that the operating conditions in their circuit match the measurement conditions when relying on the quoted parameters. Table 9. I²C AC Measurement Conditions Parameter Min. Max. Unit VCC Supply Voltage 4.5 5.5 V Ambient Operating Temperature (TA) –20 85 °C 50 ns Input Rise and Fall Times Input Pulse Voltages 0.2VCC 0.8VCC V Input and Output Timing Reference Voltages 0.3VCC 0.7VCC V Figure 33. I²C AC Testing I/O Waveform 0.8VCC 0.2VCC 0.7VCC 0.3VCC AI09235 Table 10. I²C Input Parameters(1,2) Symbol Parameter Min. Max. Unit CIN Input Capacitance (SDA) 8 pF CIN Input Capacitance (SCL, E0, E1, E2)) 6 pF tNS Low Pass Filter Input Time Constant (SCL & SDA Inputs) 400 ns 1. Sampled only, not 100% tested. 2. TA = 25 °C, f = 400kHz. 36/46 Test Condition 100 CR14 9 DC and AC parameters Table 11. Symbol I²C DC Characteristics Parameter Test Condition Min. Max. Unit ILI Input Leakage Current (SCL, SDA, E0, E1, E2) 0V ≤VIN ≤VCC ±2 µA ILO Output Leakage Current (SCL, SDA, E0, E1, E2) 0V ≤VOUT ≤VCC, SDA in Hi-Z ±2 µA VCC = 5V, fC = 400kHz (rise/fall time < 30ns), RF OFF 6 mA VCC = 5V, fC = 400kHz (rise/fall time < 30ns), RF ON 20 mA VIN = VSS or VCC, VCC = 5V, RF OFF 5 mA ICC ICC1 VIL VIH VOL Supply Current Supply Current (Stand-by) Input Low Voltage (SCL, SDA) –0.3 0.3VCC V Input Low Voltage (E0, E1, E2) –0.3 0.3VCC V Input High Voltage (SCL, SDA) 0.7VCC VCC + 1 V Input High Voltage (E0, E1, E2) 0.7VCC VCC + 1 V Output Low Voltage (SDA) IOL = 3mA, VCC = 5V 0.4 V 37/46 CR14 9 DC and AC parameters Figure 34. I²C AC Waveforms tCHCL CLCH SCL tDXCX tDLCL tCHDH SDA IN tCHDX START CONDITION tCLDX SDA INPUT tDHDL STOP & BUS FREE SDA CHANGE SCL tCLQV tCLQX DATA VALID SDA OUT DATA OUTPUT SCL tRFEX SDA IN tCHDH STOP CONDITION tCHDX CR14 command execution START CONDITION ai12055 38/46 CR14 9 DC and AC parameters Table 12. Symbol I²C AC Characteristics Alt. Parameter Fast I²C I²C 400 kHz 100 kHz Min Max Min Unit Max tCH1CH2(1) tR Clock Rise Time 300 1000 ns tCL1CL2(1) tF Clock Fall Time 300 300 ns tDH1DH2(1) tR SDA Rise Time 20 300 20 1000 ns tDL1DL2(1) tF SDA Fall Time 20 300 20 300 ns tCHDX (2) tSU:STA Clock High to Input Transition 600 4700 ns tCHCL tHIGH Clock Pulse Width High 600 4000 ns tDLCL tHD:STA Input Low to Clock Low (START) 600 4000 ns tCLDX tHD:DAT Clock Low to Input Transition 0 0 µs tCLCH tLOW Clock Pulse Width Low 1.3 4.7 µs tDXCX tSU:DAT Input Transition to Clock Transition 100 250 ns tCHDH tSU:STO Clock High to Input High (STOP) 600 4000 ns tDHDL tBUF Input High to Input Low (Bus Free) 1.3 4.7 µs tCLQV tAA Clock Low to Data Out Valid tCLQX tDH Data Out Hold Time After Clock Low fC fSCL Clock Frequency 1000 200 3500 200 400 ns ns 100 kHz 1. Sampled only, not 100% tested. 2. For a reSTART condition, or following a write cycle. 39/46 CR14 9 DC and AC parameters Figure 35. CR14 Synchronous Timing RFOUT ASK Modulated Signal VRFOUT tRFSBL tRFF A tRFR B fCC tPOR FRAME transmission between the reader and the contactless device tDR 1 tDR 0 DATA 1 EOF FRAME transmitted by the CR14 in ASK 847kHz FRAME transmitted by the PICC in BPSK t0 SOF t1 1 1 0 DATA tDA 1 0 DATA 1 0 tDA Data jitter on FRAME transmitted by the CR14 in ASK tJIT tJIT tJIT tJIT tJIT 0 START tRFSBL tRFSBL tRFSBL tRFSBL tRFSBL ai12056 40/46 CR14 9 DC and AC parameters Table 13. Symbol RFOUT AC Characteristics Parameter Condition Min. Max. Unit fCC External Oscillator Frequency VCC = 5V 13.553 13.567 MHz MICARRIER Carrier Modulation Index MI=(A-B)/(A+B) 10 14 % tRFR, tRFF 10% Rise and Fall time 0.5 1.5 µs tRFSBL Pulse Width on RFOUT 1 ETU = 128/fCC 9.44 tJIT ASK modulation bit jitter CR14 to PICC -0.5 t0 Antenna Reversal delay Min = 64/fS 75 µs t1 Synchronization delay Min = 80/fS 94 µs tWDG Answer delay watchdog (b5=0, b6=0) tWDG Answer delay watchdog (b5=0, b6=1) tWDG Answer delay watchdog (b5=1, b6=0) tWDG Answer delay watchdog (b5=1, b6=1) tDR Time Between Request characters PA RFOUT output power 90 mW tPOR CR14 Power-On delay 20 ms µs 0.5 Request EOF rising edge to first Answer start bit CR14 to PICC µs 500 µs 5 ms 10 ms 309 ms 9.44 µs 1. Data specified in the table above are estimated or target values. All values can be updated during product qualification. Table 14. Symbol tRFSBL RFIN AC Characteristics Parameter PICC Pulse Width fS PICC Sub-carrier Frequency tDA Time Between Answer characters VDYN VOFFSET VRET RFIN Dynamic Voltage Level RFIN Offset Voltage Level RFIN Retro-modulation Level Condition Min. Max. Unit 1 ETU = 128/fCC 9.44 µs fCC/16 847.5 KHz PICC to CR14 1, 2, 3 ETU VDYN Max for VOFFSET = VCC/2 0.5 VCC/2 V 2 3 V 120 mV 1. Data specified in the table above are estimated or target values. All values can be updated during product qualification. 41/46 CR14 10 Package mechanical 10 Package mechanical In order to meet environmental requirements, ST offers these devices in ECOPACK® packages. These packages have a Lead-free second-level interconnect. The category of Second-Level Interconnect is marked on the package and on the inner box label, in compliance with JEDEC Standard JESD97. The maximum ratings related to soldering conditions are also marked on the inner box label. ECOPACK is an ST trademark. ECOPACK specifications are available at: www.st.com. Figure 36. SO16 Narrow - 16 lead Plastic Small Outline, 150 mils body width, Package Outline A2 A C B CP e D N E H 1 A1 α L SO-b 1. Drawing is not to scale. Table 15. SO16 Narrow - 16 lead Plastic Small Outline, 150 mils body width, Package Mechanical Data millimeters inches Symbol Typ. Min. A Typ. Min. 1.75 A1 0.10 A2 Max. 0.069 0.25 0.004 1.60 0.010 0.063 a 0° 8° 0° 8° B 0.35 0.46 0.014 0.018 C 0.19 0.25 0.007 0.010 CP 0.10 D 9.80 10.00 – – E 3.80 L 0.40 N 16 e 42/46 Max. 1.27 0.004 0.386 0.394 – – 4.00 0.150 0.157 1.27 0.016 0.050 0.050 16 CR14 11 11 Part numbering Part numbering Table 16. Ordering Information Scheme Example: CR14 – MQ / XXX Device Type CR14 Package MQ = SO16 Narrow (150 mils width) MQP = SO16 Narrow (150 mils width) ECOPACK® Customer Code XXX = Given by the issuer For a list of available options (speed, package, etc.) or for further information on any aspect of this device, please contact your nearest ST Sales Office. 43/46 11 Part numbering Appendix A ISO14443 type B CRC calculation #include <stdio.h> #include <stdlib.h> #include <string.h> #include <ctype.h> #define BYTEunsigned char #define USHORTunsigned short unsigned short UpdateCrc(BYTE ch, USHORT *lpwCrc) { ch = (ch^(BYTE)((*lpwCrc) & 0x00FF)); ch = (ch^(ch<<4)); *lpwCrc = (*lpwCrc >> 8)^((USHORT)ch << 8)^((USHORT)ch<<3)^((USHORT)ch>>4); return(*lpwCrc); } void ComputeCrc(char *Data, int Length, BYTE *TransmitFirst, BYTE *TransmitSecond) { BYTE chBlock; USHORTt wCrc; wCrc = 0xFFFF; // ISO 3309 do { chBlock = *Data++; UpdateCrc(chBlock, &wCrc); } while (--Length); wCrc = ~wCrc; // ISO 3309 *TransmitFirst = (BYTE) (wCrc & 0xFF); *TransmitSecond = (BYTE) ((wCrc >> 8) & 0xFF); return; } int main(void) { BYTE BuffCRC_B[10] = {0x0A, 0x12, 0x34, 0x56}, First, Second, i; printf("Crc-16 G(x) = x^16 + x^12 + x^5 + 1"); printf("CRC_B of [ "); for(i=0; i<4; i++) printf("%02X ",BuffCRC_B[i]); ComputeCrc(BuffCRC_B, 4, &First, &Second); printf("] Transmitted: %02X then %02X.", First, Second); return(0); } 44/46 CR14 CR14 12 12 Revision history Revision history Table 17. Document Revision History Date Version 16-Dec-2005 1 Revision Details Initial release. 45/46 CR14 Information furnished is believed to be accurate and reliable. However, STMicroelectronics assumes no responsibility for the consequences of use of such information nor for any infringement of patents or other rights of third parties which may result from its use. No license is granted by implication or otherwise under any patent or patent rights of STMicroelectronics. Specifications mentioned in this publication are subject to change without notice. This publication supersedes and replaces all information previously supplied. STMicroelectronics products are not authorized for use as critical components in life support devices or systems without express written approval of STMicroelectronics. The ST logo is a registered trademark of STMicroelectronics. All other names are the property of their respective owners © 2005 STMicroelectronics - All rights reserved STMicroelectronics group of companies Australia - Belgium - Brazil - Canada - China - Czech Republic - Finland - France - Germany - Hong Kong - India - Israel - Italy - Japan Malaysia - Malta - Morocco - Singapore - Spain - Sweden - Switzerland - United Kingdom - United States of America www.st.com 46/46