1
0
mirror of synced 2024-11-23 23:50:56 +01:00

更新数据示例。

This commit is contained in:
Sucareto 2021-10-10 17:16:49 +08:00
parent 95a08d43f7
commit 40422e8db9
3 changed files with 64 additions and 78 deletions

View File

@ -1,7 +1,7 @@
# Arduino-Aime-Reader
使用 Arduino + PN532 + WS2812B 制作的 Aime 读卡器。支持 FelicabanapassportAimeMifare 卡模拟 Felica 是可选功能)。
通信数据格式可参考 [card.txt](https://github.com/Sucareto/Arduino-Aime-Reader/blob/main/doc/card.txt) 和 [nfc.txt](https://github.com/Sucareto/Arduino-Aime-Reader/blob/main/doc/nfc.txt)。
替换 chunihook.dll 可在控制台输出通信数据,源码在 [sg-cmd.c](https://github.com/Sucareto/Arduino-Chunithm-Reader/blob/main/tools/sg-cmd.c)。
通信数据格式可参考 [Example.txt](doc/Example.txt) 和 [nfc.txt](doc/nfc.txt)。
替换 chunihook.dll 可在控制台输出通信数据,源码在 [sg-cmd.c](tools/sg-cmd.c)。
#### 使用方法:
按照 [PN532](https://github.com/elechouse/PN532) 的提示安装库;
@ -15,8 +15,8 @@ Arduino 和 PN532 接好 VCCGNDSDASCL
- MaiMai FinaleCOM2仅支持读取 Aime
某些 Arduino 可能需要在打开主程序前给串口发送 DTR/RTS需要先打开一次 Arduino 串口监视器再启动主程序。
如果是 Chunithm可以在启动前运行一次 [DTR-RTS.exe](https://github.com/Sucareto/Arduino-Aime-Reader/blob/main/tools/DTR-RTS.exe) 以向 COM1 和 COM12 发送DTR/RTS。
如果需要向其他端口发送,可以修改 [DTR-RTS.c](https://github.com/Sucareto/Arduino-Aime-Reader/blob/main/tools/DTR-RTS.c) 然后编译。
如果是 Chunithm可以在启动前运行一次 [DTR-RTS.exe](tools/DTR-RTS.exe) 以向 COM1 和 COM12 发送DTR/RTS。
如果需要向其他端口发送,可以修改 [DTR-RTS.c](tools/DTR-RTS.c) 然后编译。
#### 已测试开发板:
- SparkFun Pro MicroATmega32U4需要发送 DTR/RTS

60
doc/Example.txt Normal file
View File

@ -0,0 +1,60 @@
//SG_NFC_CMD_GET_FW_VERSION
E0 [05] 00 09 (30) 00 [ ]
E0 [1D] 00 [ ] (30) 00 17 [54 4E 33 32 4D 53 45 43 30 30 33 53 20 46 2F 57 20 56 65 72 31 2E 32] [ ]
//SG_NFC_CMD_GET_HW_VERSION
E0 [05] 00 [ ] (32) 00 [ ]
E0 [1D] 00 [ ] (32) 00 17 [54 4E 33 32 4D 53 45 43 30 30 33 53 20 48 2F 57 20 56 65 72 33 2E 30] [ ]
//SG_RGB_CMD_GET_INFO
E0 [05] 08 [ ] (F0) 00 [ ]
E0 [0F] 08 [ ] (F0) 00 [09 31 35 30 38 34 FF 10 00 12] [ ]
//SG_NFC_CMD_POLL,FELICA
E0 [05] 00 [ ] (42) 00 [ ]
E0 [19] 00 [ ] (42) 00 13 01 20 10 [ 8 byte IDm ] [ 8 byte PMm ] [ ]
//SG_NFC_CMD_FELICA_ENCAP,Skip reply
E0 [13] 00 [ ] (71) [ ] [ 8 byte IDm ] [ payload_len ] ( ) [ unknown data ] [ ]
E0 [06] 00 [ ] (71) [01] 00 [ ]
//SG_NFC_CMD_FELICA_ENCAP,FELICA_CMD_POLL
E0 [13] 00 [ ] (71) 0E [ 8 byte IDm ] 06 (00) [FF FF 01 0F] [ ]
E0 [1A] 00 [ ] (71) 00 [14 14] (01) [ 8 byte IDm ] [ 8 byte PMm ] [ 2 byte system_code ] [ ]
//SG_NFC_CMD_FELICA_ENCAP,FELICA_CMD_GET_SYSTEM_CODE
E0 [17] 00 [ ] (71) 12 [ 8 byte IDm ] 0A (0C) [ 8 byte IDm ] [ ]
E0 [13] 00 [ ] (71) 00 [0D 0D] (0D) [ 8 byte IDm ] 01 00 00 [ ]
//SG_NFC_CMD_FELICA_ENCAP,FELICA_CMD_NDA_A4
E0 [18] 00 [ ] (71) 13 [ 8 byte IDm ] 0B (A4) [ 8 byte IDm ] 00 [ ]
E0 [11] 00 [ ] (71) 00 [0B 0B] (A5) [ 8 byte IDm ] 00 [ ]
//SG_NFC_CMD_FELICA_ENCAP,FELICA_CMD_NDA_06
E0 [1D] 00 [ ] (71) 18 [ 8 byte IDm ] 10 (06) [ 8 byte IDm ] [01 0B 00 01 80 82] [ ]
E0 [23] 00 [ ] (71) 00 [1D 1D] (07) [ 8 byte IDm ] [00 00 01] [ 8 byte IDm ] [ 8 byte unknown data ] [ ]
//SG_NFC_CMD_FELICA_ENCAP,FELICA_CMD_NDA_06
E0 [1D] 00 [ ] (71) 18 [ 8 byte IDm ] 10 (06) [ 8 byte IDm ] [01 0B 00 01 80 00] [ ]
E0 [23] 00 [ ] (71) 00 [1D 1D] (07) [ 8 byte IDm ] [00 00 01] [ 16 byte unknown data ] [ ]
//SG_NFC_CMD_FELICA_ENCAP,FELICA_CMD_NDA_06
E0 [23] 00 [ ] (71) 1E [ 8 byte IDm ] 16 (06) [ 8 byte IDm ] [01 0B 00 04 80 82 80 86 80 90 80 91] [ ]
E0 [53] 00 [ ] (71) 00 [4D 4D] (07) [ 8 byte IDm ] [00 00 04] [ 8 byte IDm ] [00 68 05 73 02 01] [01 00 00 01] [00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00] [ 8 byte unknown data ] [00 00 00 00 00 00 00 00] [ ]
//SG_NFC_CMD_FELICA_ENCAP,FELICA_CMD_NDA_08
E0 [2D] 00 [ ] (71) 28 [ 8 byte IDm ] 20 (08) [ 8 byte IDm ] [01 09 00 01 80 80] [ 16 byte unknown data ] [ ]
E0 [12] 00 [ ] (71) 00 [0C 0C] (09) [ 8 byte IDm ] [00 00] [ ]
//SG_NFC_CMD_POLL,MIFARE
E0 [05] 00 [ ] (42) 00 [ ]
E0 [0D] 00 [ ] (42) 00 07 01 10 04 [ 4 byte UID ] [ ]
//SG_NFC_CMD_MIFARE_READ_BLOCK
E0 [0A] 00 [ ] (52) 05 [ 4 byte UID ] [ block_no ] 84
E0 [16] 00 [ ] (52) 00 10 [ 16 byte block data ] [ ]

View File

@ -1,74 +0,0 @@
E0 [05] 00 [7D] [42] 00 [C4]
E0 [19] 00 [7D] [42] 00 13 01 20 10 [ 8 byte IDm ] [ 8 byte PMm ] [ ]
E0 [13] 00 [80] [71] 0E [ 8 byte IDm ] 06 [00] FF FF 01 0F [ ]
E0 [1A] 00 [80] [71] 00 [14] 14 01 [ 8 byte IDm ] [ 8 byte PMm ] 00 00 [ ]
E0 [17] 00 [81] [71] 12 [ 8 byte IDm ] 0A [0C] [ 8 byte IDm ] [ ]
E0 [13] 00 [81] [71] 00 [0D] 0D 0D [ 8 byte IDm ] 01 00 00 [ ]
E0 [18] 00 [82] [71] 13 [ 8 byte IDm ] 0B [A4] [ 8 byte IDm ] 00 [ ]
E0 [11] 00 [82] [71] 00 [0B] 0B A5 [ 8 byte IDm ] 00 [ ]
Felica & suica
E0 05 00 47 42 00 8E
E0 19 00 47 42 00 13 01 20 10 [ 8 byte IDm ] [ 8 byte PMm ] C4
E0 13 00 49 71 0E [ 8 byte IDm ] 06 00 FF FF 01 0F 8E
E0 06 00 49 71 01 00 C1
E0 13 00 4A 71 0E [ 8 byte IDm ] 06 00 FF FF 01 0F 8F
E0 1A 00 4A 71 00 14 14 01 [ 8 byte IDm ] [ 8 byte PMm ] 00 (03) DF
E0 17 00 4B 71 12 [ 8 byte IDm ] 0A 0C [ 8 byte IDm ] 39
E0 13 00 4B 71 00 0D 0D 0D 0D [ 8 byte IDm ] 01 00 (03) 99
E0 18 00 4C 71 13 [ 8 byte IDm ] 0B A4 [ 8 byte IDm ] 00 D5
E0 06 00 4C 71 01 00 C4
E0 18 00 4D 71 13 [ 8 byte IDm ] 0B A4 [ 8 byte IDm ] 00 D6
E0 06 00 4D 71 01 00 C5
E0 18 00 4E 71 13 [ 8 byte IDm ] 0B A4 [ 8 byte IDm ] 00 D7
E0 06 00 4E 71 01 00 C6
E0 18 00 4F 71 13 [ 8 byte IDm ] 0B A4 [ 8 byte IDm ] 00 D8
E0 06 00 4F 71 01 00 C7
E0 18 00 50 71 13 [ 8 byte IDm ] 0B A4 [ 8 byte IDm ] 00 D9
E0 06 00 50 71 01 00 C8
E0 18 00 51 71 13 [ 8 byte IDm ] 0B A4 [ 8 byte IDm ] 00 DA
E0 06 00 51 71 01 00 C9
E0 18 00 52 71 13 [ 8 byte IDm ] 0B A4 [ 8 byte IDm ] 00 DB
E0 06 00 52 71 01 00 CA
aime & mifare
E0 05 00 34 42 00 7B
E0 0D 00 34 42 00 07 01 10 04 [ 4 byte UID ] 8A
E0 09 00 35 43 04 [ 4 byte UID ] 70
E0 06 00 35 43 00 00 7E
E0 0A 00 36 55 05 [ 4 byte UID ] 03 88
E0 06 00 36 55 00 00 91
E0 0A 00 37 52 05 [ 4 byte UID ] 01 84
E0 16 00 37 52 00 10 [ 16 byte Block ] AD
E0 0A 00 38 52 05 [ 4 byte UID ] 02 86
E0 16 00 38 52 00 10 [ 16 byte Block ] D3
E0 05 00 39 41 00 7F
E0 06 00 39 41 00 00 80