探索Microchip EVB-SEC系列评估板:功能、配置与编程全解析
在电子工程领域,评估板是进行硬件开发和测试的重要工具。Microchip的EVB-SEC1110、EVB-SEC1210和EVB-SEC1212-DEV评估板为开发者提供了低功耗、可配置的单芯片智能卡读取解决方案。下面,我们将深入了解这些评估板的特点、配置和编程过程。
文件下载:EVB-SEC1210-URT.pdf
一、评估板概述
SEC1110/SEC1210/SEC1212-DEV是一系列低功耗、OEM可配置的单芯片智能卡读取解决方案。与之对应的评估板有EVB-SEC2112-DEV、EVB-SEC1210和EVB-SEC1110,这些评估板展示了具备各种接口和功能的独立解决方案。
二、芯片特性
2.1 SEC1110特性
2.1.1 智能卡功能
- 具备单智能卡插槽,完全符合ISO/IEC 7816、EMV和PC/SC标准。
- 支持多种ETU速率生成,最高可达861 Kbps及以上。
- 全面支持T=0和T=1协议,拥有259字节的全数据包FIFO用于收发数据。
- 半双工操作,在数据交换的收发阶段无需软件干预。
- 对软件的实时响应要求较低,最坏情况下约为180 ms。
- 动态可编程的FIFO阈值,以字节为粒度,还有独立于阈值的超时FIFO刷新中断。
- 可编程的智能卡时钟频率,采用类似UART的寄存器文件结构。
- 支持A、B、C或AB类智能卡(包括1.8 V、3 V和5 V卡),具备T=0协议奇偶校验错误恢复的自动字符重复功能,以及在卡移除和其他系统事件(包括持续奇偶校验错误)时自动停用卡的功能。
2.1.2 USB功能
- 支持全速数据传输,端点可配置为控制、批量和中断传输类型。
- 每个端点的最大数据包大小可配置(允许8 / 16/ 32/ 64字节),非控制端点支持乒乓缓冲区。
- 支持USB规范要求的挂起、恢复和远程唤醒功能,端点缓冲区可根据最大数据包大小的对齐要求位于1.5K SRAM的任意位置。
2.2 SEC1210特性
除了SEC1110的特性外,SEC1210还具有两个智能卡插槽,并增加了以下功能:
2.2.1 SPI1接口
- 支持全双工模式,可作为主或从模式工作。
- 支持七种SPI1主波特率,从模式时钟速率最高可达spi1_clk/8。
- 串行时钟的极性和相位可编程,主模式有故障错误标志和MCU中断能力,具备写冲突标志保护。
- 提供字节传输/接收、批量传输/接收和同时传输/接收的API。
2.2.2 UART接口
- 软件与标准的16C450和16C550A兼容,收发分别有16字节的FIFO,可防止缓冲区溢出,降低软件处理收发的时间要求。
- 可编程的波特率发生器,最高可达3 Mbps,支持使用RTS / CTS信号进行流控制,引脚极性可控制。
- 可编程的通信参数包括字长(5、6、7、8位)、停止位(1、1.5、2位)和奇偶校验(无、奇、偶、标记、空格),还有低功耗睡眠模式。需要注意的是,连接UART端口到PC需要电压电平转换板/电缆,通常使用FTDI电缆。
2.3 SEC1212-DEV特性
在SEC1110和SEC1210的基础上,SEC1212-DEV还具备以下模块:
- 支持从SPI2接口启动,配备1K字节的Atmel SPI闪存(AT26DF081A-SSU),支持Atmel和Windbond的SPI闪存。
- 板载RS232收发器,用于调试和RS232主机接口。
- 板载复位按钮、EDP调试头和JTAG调试头,可进入ASIC测试模式和进行调试。
三、目录结构
EVB-SEC2112-DEV发布包提供了以下文件/文件夹结构:
- EVB Schematics & BOM:包含EVB原理图和物料清单。
- SW Tools/WinUSB Driver:BootROM USB设备所需的驱动程序。
- SW Tools/OTPProgrammer:包含OTP编程实用程序和用户手册。
- SW Tools/Linux Libraries:所需的Linux库。
- SW Tools/SPIFlashUtitly:用于对SEC1212-DEV SPI2闪存进行编程的实用程序和相关用户手册。
- Firmware:包含用于编程到OTP / SPI闪存的固件二进制文件。文件名中带有"SPI2"的文件用于通过SPIFlashWriter应用程序编程到SPI闪存,带有"OTP"的文件用于通过OTPProgrammer应用程序编程到OTP。文件名中的"SINGLESLOT"或"DUALSLOT"分别表示单插槽或双插槽读取器。
四、评估板硬件设置
4.1 EVB-SEC2112-DEV
该评估板包含一个48引脚QFN的SEC1212-DEV芯片,具有USB主机接口、两个智能卡插槽、SPI1、SPI2代码执行(可从外部或板载闪存)、UART等接口和功能,输入绑定选项可使单个芯片作为SEC1110或SEC1210使用。
4.1.1 板布局
在理解板布局时,要注意每个接头的引脚1由靠近边缘的粗线表示,深红色填充的引脚表示需要用跳线短路。
4.1.2 芯片插入
如果ASIC未直接焊接在PCB上且评估板配备了插槽,插入芯片时要确保ASIC上的引脚1标记(点)与PCB上插槽的引脚1标记(三角形)对齐。
4.1.3 连接器描述
评估板上有多个连接器,每个连接器都有不同的功能和默认设置,例如J2用于自/总线电源,J3用于电源输入等。
4.1.4 开关描述
SW2为复位开关,按下时处于复位状态,释放时退出复位状态。
4.1.5 测试点描述
测试点TP1、TP2、TP4和TP5分别对应5V输入、3.3V输出、GND和VDD33电源输出。
4.1.6 绑定选项
根据J36、J37和J38跳线的绑定选项设置,SEC1212-DEV原型可以工作在SEC1210(QFN24)和SEC1110(QFN16)引脚模式。
4.1.7 代码获取源选择
SEC1212-DEV可以从内部/OTP ROM或外部串行SPI闪存执行代码,选择不同的代码获取源需要满足相应的先决条件。
4.2 EVB-SEC1210
该评估板使用24引脚QFN的SEC1210芯片,具有USB、两个智能卡插槽和SPI1或UART接口。代码只能从内部SRAM或OTP执行,插入芯片时同样要注意引脚1的对齐。
4.3 EVB-SEC1110
该评估板使用16引脚QFN的SEC1110芯片,具有USB和一个智能卡插槽,代码只能从内部SRAM或OTP执行,插入芯片时需确保引脚1对齐。
五、CCID固件
5.1 特性
- 支持所有电压(1.8V、3V和5V)的智能卡,支持T=0和T=1协议。
- 支持最快的智能卡,最大CCID命令长度为271字节。
- 支持设备挂起以节省电源,可通过插入智能卡实现远程唤醒。
- 支持所有Windows和Linux版本的内置驱动程序。
5.2 单插槽CCID固件
- 符合USB CCID类的单插槽固件,支持EVB-SEC1110、EVB-SEC1210和EVB-SEC2112-DEV评估板。
- 支持卡的移除和重新插入,根据插槽中卡的变化向主机发送中断通知。
5.3 双插槽CCID固件
- 符合USB CCID类的双插槽固件(枚举为复合USB设备),支持EVB-SEC1210和EVB-SEC2112-DEV评估板。
- 插槽1支持卡的移除和重新插入,插槽2不支持卡的移除和重新插入,因为该接口不支持状态变化中断端点。
5.4 智能卡读取器驱动程序安装(Windows)
大多数Windows操作系统默认集成了USBCCID驱动程序,连接评估板后,usbccid.sys驱动程序会自动加载。如果未预装驱动程序,可通过Windows Update网站进行安装。
六、设备固件版本检查
要检查设备的固件版本,可在设备管理器中选择智能卡读取器,右键单击并选择“属性”,在“详细信息”选项卡中选择“硬件ID”,即可查看版本号。
七、编程过程
7.1 OTP编程
该过程仅适用于EVB-SEC2112-DEV,因为EVB-SEC1110和EVB-SEC1210已预编程了适当的固件。编程步骤包括:确保设备枚举为"SMSC WINUSB",打开OTP Programmer并确认设备枚举,选择.bin文件,点击“执行”,成功完成后设置OTP_ROM_EN选项。
7.2 SPI编程
SPI编程只能在EVB-SEC2112-DEV上进行。编程步骤包括:在开机时将Bond2跳线(J38)设置为1-2,打开SPI Flashwriter并确认设备枚举,选择.bin文件,点击“Program SPI2 Flash”,完成后将Bond2跳线(J38)更改为2-3并重置板,此时评估板将从SPI启动。
Microchip的EVB-SEC系列评估板为开发者提供了丰富的功能和灵活的配置选项,通过深入了解这些评估板的特性、配置和编程过程,开发者可以更好地利用它们进行智能卡读取解决方案的开发和测试。你在使用这些评估板的过程中遇到过哪些问题呢?欢迎在评论区分享你的经验和见解。
发布评论请先 登录
探索Microchip EVB-SEC系列评估板:功能、配置与编程全解析
评论