Onderwerp Opties
|
|
|
Stem op dit onderwerp
|
|
|
|
|
#690452 - 01/04/2005 17:14
Code snippet smartcard I/O
[Re: Hermanator]
|
Anoniem
Anoniem
Ongeregistreerd
|
Here a small Code snippet to read a SECA1 Card without error handling etc:
void SCard_Info(void) { unsigned long rc; unsigned long *SCard_base; char temp[12]; unsigned int i; SCard_base = (unsigned long *) scardInterfaceBase; //Inizialize Smart Card rc = scardInit (SCARDs_NUM_CARD); if(rc == OK){ options.ATR = atr; options.baudRate = SCARD_BAUD_9600; // 9600 bps options.ATRLength = 14; // SECA1 Card scardStateGet(0, &cardState); // if(cardState == SCARD_INSERTED); rc = scardOpen (SCARDs_NUM_CARD, &options); scardStateGet(0, &cardState);
sprintf(menu_option[6][2],"%08lx",(long) cardState); sprintf(menu_option[6][3],"rc %08lx",rc); sprintf(menu_option[6][4],"atr %02lx %02lx %02lx %02lx",(long) atr[0],(long) atr[1],(long) atr[2],(long) atr[3] ); sprintf(menu_option[6][5],"atr %02lx",(long) atr[4] ); sprintf(menu_option[6][6],"cS %02lx",SCard_base[5] );// status register card, magic 0xc0/0x80, matrix 0x00/0x40 card ins/extracted // get Card Serial scardByteWrite(SCARDs_NUM_CARD,0xc1); scardByteWrite(SCARDs_NUM_CARD,0x0e); scardByteWrite(SCARDs_NUM_CARD,0x00); scardByteWrite(SCARDs_NUM_CARD,0x00); scardByteWrite(SCARDs_NUM_CARD,0x08); for(i=0;i<11;i++) scardByteRead(SCARDs_NUM_CARD,&temp); sprintf(menu_option[6][7],"SN %02lx %02lx %02lx %02lx",(long) temp[5],(long) temp[6],(long) temp[7],(long) temp[8] );
} else { sprintf(menu_option[6][3],"bad rc %08lx",rc); };
}
|
|
Omhoog
|
|
|
|
|
|
|
|
|
|
|
#690453 - 01/04/2005 19:16
Re: Code snippet smartcard I/O
|
Hermanator
Volwaardig lid
Geregistreerd: 22/05/2004
Berichten: 174
|
Dr.Galaxis,
Kijk, dat is wat ik bedoel!! 
Zelf ben ik nu nog maar net bezig met de bestudering van de werking van de smartcards, maar voor zover ik kan zien zal dit lopen als een trein!
Bedankt voor je bijdrage!!
|
|
Omhoog
|
|
|
|
|
|
|
|
|
|
|
#690454 - 06/04/2005 09:01
Meer over de xilinx
[Re: Hermanator]
|
MiLo
Sat4all Core Member
Geregistreerd: 18/02/2004
Berichten: 2760
Uit: Ospel
|
Ben eens gaan snuffelen in je document. Ik heb ook alvast een tipje van de sluier van de Xilinx chip weten op te lichten: Het lijkt een soort VLSI chip (dat helpt, maar geen nood, lees even verder...)
De chip heeft van zichzelf geen enkele functie. Net als een processor moet je 'm uitleggen wat de bedoeling is, en dan kun je hem voor allerlei taken inzetten. In tegenstelling tot een processor heeft de xilinx geen (vaste) instructies, registers enzo. De xilinx moet je namelijk 'programmeren' door er "poorten" (gates) in te definieren. De chip is eigenlijk een soort experimenteerbordje, je kunt 'm van alles laten worden. Op het bordje zitten wat standaard componenten. De draadjes tussen deze componenten mag je zelf aanleggen (via de JTAG interface om 'm te 'programmeren'), en zo kun je in de chip zelf een specifieke bewerking stoppen.
Een functie als 'f(x) = x ^ (x << 4) ^ (x >> 2)' is in C best complex, maar stelt in poortlogica niks voor (2 XOR poorten en wat draadjes). Zo'n setje gates kan alle bewerkingen namelijk parallel uitvoeren, zodat de uitkomst bijna meteen beschikbaar is (dat is die 5ns, het kan maximaal 5 nanoseconden duren voordat de uitkomst er is).
Ik denk dat ze de chip gebruiken voor het snel kunnen uitvoeren van bepaalde bewerking. Gokje: descramblen van telkens een byte (of word) van de stream met een gegeven codeword. Je stuurt het codeword naar de chip (60 bits -> 8 bytes), vervolgens telkens een byte van de datastream. Als output krijg je dan de gedescrambelde data. Ik denk eerder dat een deel van de bewerking in de xilinx gebeurt, en een deel in de ARM processor.
_________________________
Musicians don't die - they just decompose
|
|
Omhoog
|
|
|
|
|
|
|
|
|
|
|
#690456 - 06/04/2005 12:21
Re: Meer over de xilinx
[Re: MiLo]
|
Anoniem
Anoniem
Ongeregistreerd
|
The xilinx sits in the Transport Stream at the input or output of the sidsa chip.
|
|
Omhoog
|
|
|
|
|
|
|
|
Moderator: Johan45, ozzo
|
|
|
|
40266 Leden
49 Forums
241813 Onderwerpen
1501144 Berichten
449 berichten in de afgelopen 24 uur
Max Online: 336 @ 16/04/2008 20:22
|
|
|
|
|
|
|