变更定义位置;修复自定义 HW 导致的读取问题;32u4改用spi模式,修复felica读取问题。
This commit is contained in:
parent
872a6d34fa
commit
fb0394dcee
15
README.md
15
README.md
@ -7,14 +7,13 @@
|
|||||||
|
|
||||||
### 使用方法:
|
### 使用方法:
|
||||||
1. 按照 [PN532](https://github.com/elechouse/PN532) 的提示安装库
|
1. 按照 [PN532](https://github.com/elechouse/PN532) 的提示安装库
|
||||||
2. Arduino 和 PN532 接好 VCC,GND,SDA,SCL
|
2. 按照使用方式,在 Arduino 和 PN532 接好连接线(I2C或SPI),并调整 PN532 上的拨码开关
|
||||||
3. PN532 的拨码开关按照 PCB 上丝印的指示,调整到 I2C 模式
|
3. 接上 WS2812B 灯条(可选)
|
||||||
4. 接上 WS2812B 灯条(可选)
|
4. 上传 [ReaderTest](tools/ReaderTest/ReaderTest.ino) 测试硬件是否工作正常
|
||||||
5. 上传 [ReaderTest](tools/ReaderTest/ReaderTest.ino) 测试硬件是否工作正常
|
5. 若读卡正常,可按照支持列表打开设备管理器设置 COM 端口号
|
||||||
6. 若读卡正常,可按照支持列表打开设备管理器设置 COM 端口号
|
6. 按照游戏的波特率设置代码的`high_baudrate`选项,`115200`是`true`,`38400`是`false`
|
||||||
7. 按照游戏的波特率设置代码的`high_baudrate`选项
|
7. 上传程序打开游戏测试
|
||||||
8. 上传程序打开游戏测试
|
8. 安装 [MifareClassicTool](https://github.com/ikarus23/MifareClassicTool),修改 [Aime 卡示例](doc/aime示例.mct) 后写入空白 MIFARE UID/CUID 卡
|
||||||
9. 安装 [MifareClassicTool](https://github.com/ikarus23/MifareClassicTool),修改 [Aime 卡示例](doc/aime示例.mct) 后写入空白 MIFARE UID/CUID 卡
|
|
||||||
|
|
||||||
某些 Arduino 可能需要在游戏主程序连接前给串口以正确的波特率发送 DTR/RTS,需要先打开一次 Arduino 串口监视器再启动主程序。
|
某些 Arduino 可能需要在游戏主程序连接前给串口以正确的波特率发送 DTR/RTS,需要先打开一次 Arduino 串口监视器再启动主程序。
|
||||||
如果是 SDBT,可以在启动前运行一次 [DTR-RTS.exe](tools/DTR-RTS.exe) 以向 COM1 和 COM12 发送DTR/RTS。
|
如果是 SDBT,可以在启动前运行一次 [DTR-RTS.exe](tools/DTR-RTS.exe) 以向 COM1 和 COM12 发送DTR/RTS。
|
||||||
|
40
cmd.h
40
cmd.h
@ -2,12 +2,40 @@
|
|||||||
#define NUM_LEDS 6
|
#define NUM_LEDS 6
|
||||||
CRGB leds[NUM_LEDS];
|
CRGB leds[NUM_LEDS];
|
||||||
|
|
||||||
|
#if defined(__AVR_ATmega32U4__) || defined(ARDUINO_SAMD_ZERO)
|
||||||
|
#pragma message "当前的开发板是 ATmega32U4 或 SAMD_ZERO"
|
||||||
|
#define SerialDevice SerialUSB
|
||||||
|
#define LED_PIN A3
|
||||||
|
#define PN532_SPI_SS 10 //32U4 不使用 SPI 时,执行 ReadWithoutEncryption 会失败
|
||||||
|
|
||||||
|
#elif defined(ARDUINO_ESP8266_NODEMCU_ESP12E)
|
||||||
|
#pragma message "当前的开发板是 NODEMCU_ESP12E"
|
||||||
|
#define SerialDevice Serial
|
||||||
|
#define LED_PIN D5
|
||||||
|
//#define SwitchBaudPIN D4 //修改波特率按钮
|
||||||
|
|
||||||
|
#elif defined(ARDUINO_NodeMCU_32S)
|
||||||
|
#pragma message "当前的开发板是 NodeMCU_32S"
|
||||||
|
#define SerialDevice Serial
|
||||||
|
#define LED_PIN 13
|
||||||
|
|
||||||
|
#else
|
||||||
|
#error "未经测试的开发板,请检查串口和阵脚定义"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(PN532_SPI_SS)
|
||||||
|
#pragma message "使用 SPI 连接 PN532"
|
||||||
|
#include <SPI.h>
|
||||||
|
#include <PN532_SPI.h>
|
||||||
|
PN532_SPI pn532(SPI, PN532_SPI_SS);
|
||||||
|
#else
|
||||||
#include <Wire.h>
|
#include <Wire.h>
|
||||||
#include <PN532_I2C.h>
|
#include <PN532_I2C.h>
|
||||||
#include <PN532.h>
|
PN532_I2C pn532(Wire);
|
||||||
|
#endif
|
||||||
|
|
||||||
PN532_I2C pn532i2c(Wire);
|
#include "PN532.h"
|
||||||
PN532 nfc(pn532i2c);
|
PN532 nfc(pn532);
|
||||||
|
|
||||||
uint8_t AimeKey[6], BanaKey[6];
|
uint8_t AimeKey[6], BanaKey[6];
|
||||||
|
|
||||||
@ -153,15 +181,15 @@ static void sg_nfc_cmd_reset() { //重置读卡器
|
|||||||
static void sg_nfc_cmd_get_fw_version() {
|
static void sg_nfc_cmd_get_fw_version() {
|
||||||
sg_res_init(23);
|
sg_res_init(23);
|
||||||
// memcpy(res.version, "TN32MSEC003S F/W Ver1.2", 23);
|
// memcpy(res.version, "TN32MSEC003S F/W Ver1.2", 23);
|
||||||
memcpy(res.version, "*SCRT_Reader F/W Ver1.2", 23);
|
memcpy(res.version, "-> Sucareto Aime Reader", 23);
|
||||||
// sg_res_init(1);
|
// sg_res_init(1);
|
||||||
// memset(res.version, 0x94, 1);
|
// memset(res.version, 0x94, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sg_nfc_cmd_get_hw_version() {
|
static void sg_nfc_cmd_get_hw_version() {
|
||||||
sg_res_init(23);
|
sg_res_init(23);
|
||||||
// memcpy(res.version, "TN32MSEC003S H/W Ver3.0", 23);
|
memcpy(res.version, "TN32MSEC003S H/W Ver3.0", 23);
|
||||||
memcpy(res.version, "*SCRT_Reader H/W Ver3.0", 23);
|
// memcpy(res.version, "-> Sucareto Aime Reader", 23);
|
||||||
// sg_res_init(9);
|
// sg_res_init(9);
|
||||||
// memcpy(res.version, "837-15396", 9);
|
// memcpy(res.version, "837-15396", 9);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user