PN7462AU的接触式接口的兼容性不好,同样的代码,在执行取随机数指令:00 84 00 00 08时,有些卡片可以执行成功,并返回隋机数,有些卡片执行失败,返回80 91,或80 90 、80 89,请问PN7462的接触式接口(7816接口)的CLK可以修改吗?默认的时钟频率是多少?
代码如下:
uint8_t bApduCommand[]={0x00,0x84,0x00,0x00,0x08}
/* Send the Apdu */
status = phpalCt_Transceive(
bApduCommand,
sizeof(bApduCommand),
cPsamRxBuffer,&wNoOfResponseBytes);
if(status != PH_ERR_SUCCESS)
{
//phLED_SetPattern(gkphLED_Ct_Fail);
LOG_TXT("Error transceiving Apdu\n");
break;
}
if((cPsamRxBuffer[wNoOfResponseBytes-2] == 0x90) && (cPsamRxBuffer[wNoOfResponseBytes-1] == 0x00))
{
//phLED_SetPattern(gkphLED_Ct_Pass);
LOG_TXT(bApduInfo[bApduCount]);
status = PH_ERR_SUCCESS;
break;
}
else
{
status = PH_ERR_PROTOCOL_ERROR;
}
执行以上代码时,接触式SAM卡已经激活。
ATR解析的问题,eStatus = phhalCt_AtrParser(psAtrParams);
The clk can be adjusted based on Register ct_ccr1_reg/ct_ccr2_reg (Clock Configuration Register), Please refer to the following for details.
Hope that helps,
Have a great day,
Kan
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------