20170725:
1. 7816协议,用于和串口Uart通信时配置成主模式;
2. PCD是Proximity Coupling Device的简称,即接近式耦合设备,也就是读卡器;读卡的芯片通过天线传送到设备,和INCHIP芯片通信;
3. HID:Human Interface Device,人机接口设备,用到的有USB HID协议等方面;
4. 读卡器根据卡片类型的不同,可以将其分为IC卡读卡器,包括接触式IC卡,遵循ISO7816接口标准;非接触式IC卡读卡器,遵循ISO14443接口标准,远距离读卡器,遵循ETC国标GB20851接口标准。
读卡器实际上就是一个射频装置,简单的说就是读卡器形成磁场,读卡器通过磁场对置入其中的卡片读取磁信息,而后编码得到数字信息。
5. PCD模块讲解:
PCD时钟相关知识:PICC模块有两个时钟源控制:系统时钟控制PICC与CPU的通讯,通常为30MHz;PICC时钟控制PICC与PCD的通讯,通常为13.56MHz。使用时两个时钟都需要打开PICC方可正常工作。
Authentication:身份验证;pending:直到,在……期间;
下面是读卡器例程,对程序的分析:
PCD初始化程序:
IOCTL_InitTypeDef IOCTL_InitStruct ;
GPIO_InitTypeDef GPIO_InitStruct ;
//GPIO10->PCD_CLK_OUT ; GPIO23->PCD_TXD
GPIO_InitStruct.GPIO_Pin = GPIO_Pin_10|GPIO_Pin_11;
GPIO_InitStruct.GPIO_DIR = GPIO_OUT;
IOCTL_InitStruct.IOCTL_Type = IOCTL_Type_PullUp;
IOCTL_InitStruct.IOCTL_Mode = IOCTL_Mode_Fuction;
IOCTL_InitStruct.IOCTL_Fuc = IOCTL_Fuction_3; 使用引脚的第三功能;其中,10引脚和11引脚对应PCD_RXD和PCD_CLK_OUT,PCD_RXD表示PCD接收引脚,PCD_CLK_OUT引脚表示时钟和数据输入引脚;
GPIO_Init(&IOCTL_InitStruct , &GPIO_InitStruct);
6. 芯片时钟模块:
使能APB0 GPIO/TIMER/PCD/ADC时钟函数:
RCM_APB0PerirheralClockCmd(CLKAPB0_GPIOEN|CLKAPB0_TIMEREN|CLKAPB0_PCDEN|ADCEN,ENABLE);