簡體   English   中英

ACR122u卡仿真模式發送PN532命令

[英]ACR122u card-emulation mode send PN532 commands

我剛剛看了這個答案如何把我的ACR122U卡模擬模式。 我確實了解目的,但您需要如何將命令發送到ACR122u。

據我所知FF000000意味着:

  • FF [班級]
  • 00 [INS]
  • 00 [P1]
  • 00 [P2]

我只是不知道如何發送實際的PN532命令,例如:

  • FF000000 08 D406 6305 630D 6338
  • FF000000 11 D408 6302 80 6303 80 6305 xx 630D yy 6338 zz

我走了這么遠:

    TerminalFactory factory = TerminalFactory.getDefault();
    List<CardTerminal> terminals;

    try {
            terminals = factory.terminals().list();

            CardTerminal terminal   = terminals.get(0);
            Card card               = terminal.connect("*");
            CardChannel channel     = card.getBasicChannel();
            byte[] command          = {???};
            CommandAPDU command1    = new CommandAPDU(0xFF,0x00,0x00,0x00, command);
            ResponseAPDU response1  = channel.transmit(command1);
            System.out.println(bytesToHex(response1.getBytes()));

    } catch (CardException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

我感謝您的幫助!

提前謝謝了!!

假設08 D406 6305 630D 6338表示

  • 08 [Lc]
  • D406 6305 630D 6338 [數據]

它看起來像這樣:

byte[] command = new byte[8] { (byte) 0xD4, 0x06, 0x63, 0x05, 0x63, 0x0D, 0x63, 0x38 };

您可以省略8因為javac會為您計算字節數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM