【正文】
08H 8 CRC B Y T E R E A D CRC B Y T E W R I T E C R C S T A C O N 09H 9 C V C Z C 8 C R K E Y D A T A 0A H 1 0 N / A K E Y B Y T E W R I T E K E Y S T A C O N 0 B H 1 1 A L 0 K S 1 K S 0 K E Y A D D R 0 C H 1 2 N / A A L A B A 5 A 4 A 3 A 2 A 1 A 0 0 D H 1 3 R C O D E 0 E H 1 4 N / A 0 0 R C 1 R C 0 0 F H 1 5 MCM 內(nèi) 核 特 殊 寄 存 器 SmartCard MIFARE卡的讀寫操作步驟 ?激活 MCM ? MCM軟復位 ?向 MCM下載密碼( LOAD KEY),校驗傳輸密碼正確后可向 MCM的 KEYRAM寫入用戶自己設(shè)定的密碼,以上操作與卡無關(guān)。 ( 4) 檢查 DV標志 , 查詢數(shù)據(jù)接收是否完成 。 ?卡收到該指令將回送卡類型號作為卡應答:TAGTYPE( 2個字節(jié)) 初始化設(shè)置BCN TS= 7bi tsBCNTR=2Byte開始選擇REQ UES T A LL或R EQU EST ST D發(fā)送REQ UES T命 令設(shè)置TOC =1m s讀S TAC ONDV=1?清零TOC判斷是否出錯?讀T AG TYP ERET出錯處理YNYNSmartCard ?With a “request std”(26H) instruction only cards which are not set into a “HALTmode” will respond to this request,or it may be expanded to all cards in the field with a “request all” (52H) first option is needed to prevent the MCM from selecting one card several times. Difference between “request std” amp。SET TOC=1ms MOV R0,06H MOVX R0,A D_wait_value: ;讀 STACON,判斷 DV=1? MOV R0,01H MOVX A,R0 JNB ,D_wait_value MOV R6,A MOV A,00H ;清零 TOC MOV R0,06H MOVX R0,A MOV A,R6 ;出錯判斷 JB ,DEC_TE_ERR JB ,DEC_BE_ERR AJMP DEC_CONTI DEC_TE_ERR: ; NOTAGERR MOV B,01H AJMP DEC_EXIT DEC_BE_ERR: MOV B,02H AJMP DEC_EXIT SmartCard DEC_CONTI: MOV R0,00H ; 讀入 ACK/NAK, MOVX A,R0 ANL A,0BH ;僅檢查 0, 1, 3位 CJNE A,00H,D_N1 MOV B,07H 。 ? 編譯實訓程序,設(shè)置斷點。 SmartCard 實訓程序: mode EQU 00H ;設(shè)置 KEYSET=KEYSET0,使用密碼 A sector_nr EQU 01H ;設(shè)置認證扇區(qū)為扇區(qū) 1 R_H_BUF EQU 40H ;讀入數(shù)據(jù)緩沖區(qū) R_E_BUF EQU 50H ;讀入數(shù)據(jù)暫存區(qū) W_H_BUF EQU 10H ;寫入數(shù)據(jù)區(qū) R_addr EQU 04H ;被讀取的塊地址(扇區(qū) 1的塊 0) W_addr EQu 05H ;被寫入的塊地址(扇區(qū) 1的塊 1) SmartCard ORG 0000H AJMP MAIN ORG 0050H MAIN: MOV SP,60H ;重新設(shè)置堆棧 CLR EA ;關(guān)閉所有中斷 CLR SETB ;關(guān)閉 MCM200 NOP NOP CLR ;激活 MCM200 NOP LCALL D500MS START: NOP NOP MOV A,80H ; SOR軟件復位 MOV R0,01H MOVX R0,A NOP NOP LCALL D500MS CLR ;再次激活 MCM200 CLR SmartCard MOV R2,01H ;選擇 REQUEST ALL 指令 LCALL REQUEST ;請求響應 REQUEST SETB ; 斷點① ,查看 TAGTYPE—— ( 20H)( 21H)