Simplifying System IntegrationTM 73S12xxF Software User Guide September 14, 2009 Rev. 1.50 UG_12xxF_016
73S12xxF Software User Guide UG_12xxF_016 10 Rev. 1.50 2.2.2 API/Library and Header Files The library files included in the software development ki
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 11 2.2.3 External Application An external application can run on a PC or any host microproc
73S12xxF Software User Guide UG_12xxF_016 12 Rev. 1.50 Figure 2: Device Options for Building with the Boot Loader Figure 2 shows the Device configu
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 13 Figure 3: Target Options for Building with the Boot Loader Off-chip code memory should
73S12xxF Software User Guide UG_12xxF_016 14 Rev. 1.50 The Preprocessor Symbol “MULTI8010” (refer to Figure 4) is used for a hardware configuration
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 15 Figure 5: Target Options for Building with the DFU Boot Loader Figure 5 shows the appl
73S12xxF Software User Guide UG_12xxF_016 16 Rev. 1.50 Figure 6: C51 Options for Building with the Boot Loader In Figure 6, the interrupt vectors
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 17 3 Testing Environment Teridian performs conformance and certification testing to verify
73S12xxF Software User Guide UG_12xxF_016 18 Rev. 1.50 The USB Command Verifier version 1.3 Beta (latest version) was also run with this release usi
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 19 4 Design Reference As depicted in Figure 1: Software Architecture Diagram, the 73S12xxF
73S12xxF Software User Guide UG_12xxF_016 2 Rev. 1.50 © 2009 Teridian Semiconductor Corporation. All rights reserv
73S12xxF Software User Guide UG_12xxF_016 20 Rev. 1.50 4.1.2 External Data Memory The 2 KB of XRAM are available at address locations 0x0000 throug
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 21 The core provides four interrupt priority levels among six group sources. The 73S12xxF
73S12xxF Software User Guide UG_12xxF_016 22 Rev. 1.50 KEY_Init () Purpose Configure the keyboard. This API will call the Set_Event() routine to e
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 23 EVENT_VDDF 0x00000400 EVENT_I2C 0x00000800 EVENT_ANALOG 0x000
73S12xxF Software User Guide UG_12xxF_016 24 Rev. 1.50 LCD_Command () Purpose Send command to LCD. Synopsis Void LCD_Command ( IN char LcdCmd );
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 25 LED_Config () Purpose Configure the LED interface (all pins). Synopsis Void LED_Config
73S12xxF Software User Guide UG_12xxF_016 26 Rev. 1.50 4.2.4 Real Time Clock API - Available with the 68-pin 73S12xxF The 73S12xxF provides a 32-b
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 27 Synopsis Void RTClk_Init ( void ); Parameters None. Return Codes None. RTCClk_Contr
73S12xxF Software User Guide UG_12xxF_016 28 Rev. 1.50 RTCCnt: Input parameter 32-bit RTC counter value. RTCAcc[3]: Input parameter 24-bit ac
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 29 Where MONTH is defined as: enum { JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NO
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 3 Table of Contents 1 Introduction ...
73S12xxF Software User Guide UG_12xxF_016 30 Rev. 1.50 Year: Input parameter Current year unit, e.g. 2005. TicInterval: Input parameter Tic i
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 31 Figure 8: Smart Card Rx/Tx Timing ICC_InitUART() Purpose Initializes the Smart Card UA
73S12xxF Software User Guide UG_12xxF_016 32 Rev. 1.50 int IccExtraGuardTime, int IccBlockGuardTime, int IccCharWaitingTime, long in
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 33 IccBreakDuration: Input parameter Specifies the break signal duration. Possible valu
73S12xxF Software User Guide UG_12xxF_016 34 Rev. 1.50 ICC_RST3 = 0xB0, ICC_RST4 = 0xC0, ICC_RST5 = 0xD0, ICC_RST6 = 0xE0, ICC_RST7 = 0xF0 IccC
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 35 IccATR_TimeoutEnabled: Input parameter Specifies if the ATR timeout is enabled (TRUE)
73S12xxF Software User Guide UG_12xxF_016 36 Rev. 1.50 ICC_Tx() Purpose Send data to the selected Smart Card. Before calling this function, the Sm
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 37 ICC_Rx() Purpose Receive data from the SmartCard interface. Before calling this functio
73S12xxF Software User Guide UG_12xxF_016 38 Rev. 1.50 IccLastByte should be set when it is time to switch to transmission mode and start the BGT ti
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 39 Return Codes ICC_OK The SmartCard is present and active. ICC_ERR_PRESENT_INACTIV
73S12xxF Software User Guide UG_12xxF_016 4 Rev. 1.50 4.5 Test Tools and Certification/compliance Tests ...
73S12xxF Software User Guide UG_12xxF_016 40 Rev. 1.50 After calling Serial_Init() and prior to receiving data from the RS232 interface, Serial_Rx()
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 41 Len: Input parameter. Specifies the current number of bytes to be sent. Return Code
73S12xxF Software User Guide UG_12xxF_016 42 Rev. 1.50 len: Input parameter. Specifies the maximum number of bytes to receive at any one time. Re
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 43 The USB interface contains four endpoints, which are defined as follows: 1. Endpoint 0 f
73S12xxF Software User Guide UG_12xxF_016 44 Rev. 1.50 requests and will return the configuration, endpoint, interface and string descriptors includ
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 45 unsigned int idProduct; // Always 0x0500 unsigned int Device; // 0x4600; unsigne
73S12xxF Software User Guide UG_12xxF_016 46 Rev. 1.50 #define SELF_POWERED BIT6 #define REMOTE_WAKEUP BIT5 #define MAXPOWER 50 // 100
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 47 #define BPS9600 9600L // 0x00002580 (9600 +- 1%) #define BPS14400 14400L #define BPS
73S12xxF Software User Guide UG_12xxF_016 48 Rev. 1.50 unsigned char NumDataRates; // 7. unsigned long MaxIFSD; // Application specific. unsign
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 49 USB_Stall() Purpose Stalls portions of the USB interface: The Endpoints to be stalled ar
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 5 1 Introduction The Teridian Semiconductor Corporation 73S12xxF single-chip Smart Card Ter
73S12xxF Software User Guide UG_12xxF_016 50 Rev. 1.50 USBStatus: Output parameter Contains the current status of this transmission, one of the fo
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 51 Return Codes None. 4.2.8 Clock Generator Circuit API – Available with all 73S12xxF Dev
73S12xxF Software User Guide UG_12xxF_016 52 Rev. 1.50 BPS_38400_3MHz69,BPS_57600_3MHz69, BPS_115200_3MHz69, 0, 0, 0 }, //Can only support these r
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 53 PowerOFF() Purpose Manage power consumption. Synopsis void PowerOFF ( IN unsigned i
73S12xxF Software User Guide UG_12xxF_016 54 Rev. 1.50 Parameters threshold_select: Input parameter Specifies which input voltage channel must be
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 55 4.2.11 Event Management API – Available with all 73S12xxF Devices The Event Management A
73S12xxF Software User Guide UG_12xxF_016 56 Rev. 1.50 Get_Event () Purpose Get selected event vector. Synopsis (* void () ) Get_Event_Vector ( I
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 57 RFU // 17 pEventVector: Input parameter Pointer (vector) to the function to call when t
73S12xxF Software User Guide UG_12xxF_016 58 Rev. 1.50 Synopsis Unsigned Integer *Add_Timer ( IN Unsigned integer nDuration) Parameters nDuratio
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 59 USR_INT_Config () Purpose Configure USER IO as an interrupt source for T0, T1, INT0 or I
73S12xxF Software User Guide UG_12xxF_016 6 Rev. 1.50 RTC Real Time Clock TSC Teridian Semiconductor Corporation USB Universal Serial Bus WHQL
73S12xxF Software User Guide UG_12xxF_016 60 Rev. 1.50 USER_IO_Config() Purpose Configure the direction for the USER IO pins. Synopsis void USER_
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 61 Parameters Enable: Input parameter Enable (1) or disable (0) interrupt 2. Polarity :
73S12xxF Software User Guide UG_12xxF_016 62 Rev. 1.50 Synopsis SFR_RC SFR_Read ( IN char cSFRAddr, OUT char *pcSFRValue ); Parameters cSFRAddr:
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 63 4.2.16 Flash/Memory API – Available with all 73S12xxF Devices Flash management assumes t
73S12xxF Software User Guide UG_12xxF_016 64 Rev. 1.50 memcpy_xx () Purpose Memory management – use to copy the contents of external RAM (XRAM) loc
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 65 memcmp_rx () Purpose Memory management – use to compare the contents of an XRAM location
73S12xxF Software User Guide UG_12xxF_016 66 Rev. 1.50 strlen_x () Purpose Compute the string length of ASCII data in XDATA (XRAM). Synopsis uns
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 67 4.2.17 Boot Loader and Passcode Management – Available with the LAPI-*BL.lib Only The Bo
73S12xxF Software User Guide UG_12xxF_016 68 Rev. 1.50 Application/HostReceived hex record from App/HostGood record (good CRC)?Send 'F' to
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 69 SetPassCode ( ) Purpose Change the PassCode to a new value. The first (and default) pas
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 7 2 Design Guide This section provides designers with basic guidance in developing smart ca
73S12xxF Software User Guide UG_12xxF_016 70 Rev. 1.50 If the passcode has changed 8 times prior to entering Mode 2, it will be disabled since no mo
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 71 4.2.19 Other Miscellaneous API Calls – Available with all 73S12xxF Devices Several API c
73S12xxF Software User Guide UG_12xxF_016 72 Rev. 1.50 4.3 High-Level API The 73S12xxF comes with a high-level API library to control the Smart Car
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 73 ICC_NONE, ICC_NONE, ICC_NONE }; ICC_Enable() or ICC_Enable_Ext () Purpose Activate the
73S12xxF Software User Guide UG_12xxF_016 74 Rev. 1.50 whereas the ISO 7816-3 standard allows an error recovery procedure. EMV specifies that the I
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 75 The eIccId parameter is split into two fields: Card Detect Polarity and Card Slot number,
73S12xxF Software User Guide UG_12xxF_016 76 Rev. 1.50 ICC_PTSNegotiate() Purpose Transmit the PTS negotiation request to the Smart Card and verify
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 77 ICC_Send() Purpose Transmit a data command to the Smart Card interface and wais for the
73S12xxF Software User Guide UG_12xxF_016 78 Rev. 1.50 AR_ICC_ERR_WRONG_LEN Either the command case (T=0) is not correctly formatted, or the buffe
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 79 pucSW2: Output parameter Contains the received SW2 value. pbStatusJustAfterHeader:
73S12xxF Software User Guide UG_12xxF_016 8 Rev. 1.50 CCIDTSC-*.sys/CCIDTSC-*.inf – Teridian Windows Drivers. ccidusb-*.hex – an embedded app
73S12xxF Software User Guide UG_12xxF_016 80 Rev. 1.50 //This is newly added from version 1.50 release IN ICC_HWConfigure_t ptrHWConfigure
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 81 punIccTSTimeOut: Input/output parameter Specifies the maximum delay in clock cycles be
73S12xxF Software User Guide UG_12xxF_016 82 Rev. 1.50 DebouncePDEnable: Input parameter The higher order (most significant) nibble of this byte e
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 83 pucIccIFSD: Input/output parameter Specifies the IFSD value to be used (or being used)
73S12xxF Software User Guide UG_12xxF_016 84 Rev. 1.50 Parameters eIccId: Input parameter Specifies which Smart Card interface is to be activated
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 85 4.4 Flash Programming There are two ways to download a hex file to the 73S12xxF Flash:
73S12xxF Software User Guide UG_12xxF_016 86 Rev. 1.50 4.5.1 EMV LEVEL I Certification Tests The EMV compliant test suite follows the Payment Sys
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 87 InitializationGet Delay Time (in Secs)Power-Up Ok (Good ATR)?Start Test by sending a Blo
73S12xxF Software User Guide UG_12xxF_016 88 Rev. 1.50 InitializationEMV Power UpPower-Up Ok(Good ATR)?Select File1PAY.SYS.DDF01EMV PowerDownYesWarm
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 89 InitializationEMV Power UpPower-Up Ok(Good ATR)?Select File1PAY.SYS.DDF01EMV PowerDownYes
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 9 ApplicationLow Level API - CoreHardware73S12xxFPCEmbedded ApplicationTSC Serial Pseudo - C
73S12xxF Software User Guide UG_12xxF_016 90 Rev. 1.50 4.5.1.3 VISA-1 Loopback Test Teridian used the RFI Global test lab in the UK (listed on the
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 91 4.5.2 VISA-2 Loopback Test Teridian used the ICT-K test lab in Korea (listed on the ww
73S12xxF Software User Guide UG_12xxF_016 92 Rev. 1.50 5 Related Documentation The following 73S12xxF documents are available from Teridian Semicon
UG_12xxF_016 73S12xxF Software User Guide Rev. 1.50 93 Revision History Date Revision Description 12/12/2005 0.01 Preliminary version 11/20
Comentários a estes Manuais