USB Class CCID

名词解释 CCID: Integrated Circuit(s) Cards Interface Device ICC: Integrated Circuit(s) Cards 概述 当一个CCID插入USB host时,它可以有或者没有一个插入的ICC。 CCID模型假设一个ICC被或者可以被插入到设备。这就是"slot change"中断消息的目的。 CCID功能特性 通信管道 控制管道 控制管道消息用来控制一个USB设备。这些消息包括标准请求,例如GET_DESCRIPTOR和SET_CONFIGURATION。命令经由默认管道发送,报告信息也经由默认管道返回给主机。如果产生了一个错误,它会产生一个标准的USB错误状态。 中断管道 CCID模型在中断管道处理异步事件。ICC在线,ICC移除或者硬件错误比如电流太大,这些经由这个管道送出。 中断管道对于一个支持ICC插入/移除的CCID是强制的。对于一个只插入没有移除的ICC是可选的。 块进,块出管道 CCID命令经由BULK-OUT端点发出。每个发送给CCID的命令都有一个相应的响应。一些命令也有过程响应。这些响应从BULK-IN端点发送。 所有发送给指定CCID槽位的命令都必须同步发送。一个指定的槽位同时只能接受一条命令。如果一个槽位准备好接受一个新命令那么就认为它是空闲的。 协议和参数选择 CCID在与主机的底层交互的dwFeatures字段声明TPDU、APDU(短或扩展)或者字符。 TPDU层交互 对于PPS交互的TPDU格式如下:…