发布于  更新于 

彩色丝印 PN532 + CH582 读卡器

嘉立创eda 电子设计
彩色丝印 PN532 + CH582 读卡器
彩色丝印 PN532 + CH582 读卡器

八月份获得了一张嘉立创彩色丝印免费券,看到立创开源上多数彩色丝印工程都是单片机核心板或者是简单的 NFC 卡片,于是为了能让这张彩色丝印券物尽其用(又要有电路,又要有大面积的彩色丝印留空区域),我画了这个 PN532 + CH582 读卡器。立创开源上其他的几个 PN532 工程都是直接引出了 PN532 的串口或是加上了一个 CH340,必须搭配专门的上位机软件才能使用,本工程则是在 PN532 的基础上加上了一个 CH582,既可以通过 USB CDC 串口或 BLE 连接上位机,也可以直接在 CH582 单片机上直接与 PN532 交互,另外引出了串口屏的四线 XH2.54 接口,连接串口屏可开发更多应用。

电路设计

  • NXP PN532 芯片,支持 ISO14443A/B、FeliCa、NFCIP-1 等多种协议,支持读卡、写卡、模拟卡等功能

    • 通过 UART、SPI、I2C 等多种接口与主控连接,本工程使用了 UART 接口连接 CH582

    • 淘宝上的 PN532 芯片价格在 9 元左右,但是有打磨假货不能用的风险(甚至是好评很多的店铺),建议购买 10 元左右的成品模块拆芯片

      左侧是从 PN532 模块上拆下来可用的 PN532,右侧是某店铺 9 元的芯片,有明显打磨和焊锡氧化痕迹,上板无法使用。注意底部散热焊盘右下角的形状不一样。调试可测 26 脚的 RSTOUT_N 测试点,芯片完成复位后应为 3.3V,若为 0V 则芯片或晶振有问题

    • 天线匹配电路 Layout 参考 NXP 的 AN10688,电容电阻值参考 立创开源工程,实测感应距离在 4-5cm 左右

    • PN532 晶振频率为 27.12MHz 非常用型号

  • WCH CH582F 低功耗蓝牙 MCU 芯片,带有 32KB RAM 和 512KB Flash,和两路 USB FS OTG 控制器

    • 实际上只用到了一路 USB,可换成 CH573F 或 CH571F,但价格差不多,都在 2 到 3 元左右

    • 支持免烧录器直接通过 USB 下载固件:安装 WCHISPStudio,先按住 SW1 按钮再插入电脑 USB,然后在 WCHISPStudio 中选择固件文件,点击下载即可

    • 两线仿真接口通过 Type-C 的 SBU 引脚引出了, 不过 CH582 是 RISC-V 架构,不支持 ST-Link,只能再用 Type-C 调试板转接到 WCH-Link 来进行仿真调试

    • BLE 天线设计与板厚有关,本工程使用了 1.6mm 板厚

  • 板上配有 MLT-5020 蜂鸣器,可通过 CH582 的 TMR0 PWM 输出控制蜂鸣器发声

  • 彩色丝印图片来自 Unsplash, 可免费商用,正面图片背面图片

    • 彩色丝印不耐高温,我用了 260 度的回流焊烤箱焊接,有些发黄,建议用更低的温度

固件

本工程给出的固件基于 WCH 官方例程简单修改,较为简陋,您可以自行按需要修改。固件功能如下:

  • 直接插入电脑 USB,红灯亮起,CH582 会识别为 USB HID 键盘,当检测到 ISO14443A 卡片时蓝灯亮起,蜂鸣器响,会自动读取卡片 UID 并模拟键盘输入 UID 后按回车,类似于扫码枪的功能
  • 按住 SW2 按钮再插入电脑 USB,CH582 会模拟 CH340 芯片,识别成 USB CDC 串口,可搭配多种串口 PN532 上位机软件使用,立创开源上其他 PN532 工程有提供上位机软件。收发数据时红蓝灯会交替闪烁。
  • 按住 SW1 按钮再插入电脑 USB,进入 ISP 模式,可通过 WCHISPStudio 下载固件 (可直接使用附件中的 ch582-hid-cdc.hex, zip 文件为源码)

尝试过使用 WCH 的 BLE 串口透传例程,可以通过 WCH BLE Tool 安卓 APP 连接实现 BLE 串口透传,但是不出现在 MTools BLE 的设备列表中,可能是缺少了某些描述符。

参考

立创开源的其他 PN532 工程

更多图片