PN7462AU-FW_v05.19.00_Full\PN7462AU_ex_phExCcid在正常使用一段时间后,20天左右,插在PC上连续工作,不断电,PC端无法连接,scardconnect 返回错误代码:0x80100066(0x80100066 The smart card is not responding to a reset.),但读卡是正常的,放卡后灯不闪,亮黄灯,拿开卡后,红黄绿蓝4个灯循环闪(LED灯的连接同PN7462BM开发板),就是PC端无法连接到读卡器。
在phExCcid_UsbUser.c文件中,有这样一段代码:
/*
* User Defined Interrupt IN End Point Handler
*/
ErrorCode_t CCID_Interrupt_In_hdlr(USBD_HANDLE_T hUsb, void* data, uint32_t event)
{
switch (event)
{
case USB_EVT_IN:
case USB_EVT_IN_NAK:
break;
//phExCcid_UsbCcid_Usb_IntIn();
}
return LPC_OK;
}
函数phExCcid_UsbCcid_Usb_IntIn()是没起作用的,我看了一下历次的版本,均是如此,请问这个phExCcid_UsbCcid_Usb_IntIn函数调用是否应该移到break上一行。
如下:
switch (event)
{
case USB_EVT_IN:
case USB_EVT_IN_NAK:
phExCcid_UsbCcid_Usb_IntIn();
break;
}
请问出现0x80100066代码如何解决?是否是PN7462AU_ex_phExCcid USB驱动有问题?
Hi @onlineit ,
The code has no relation with your issue, it is used to notify the host events like card inserted or removed. Is it possible to have a USB data capture during this issue? so we may know which cause leads to this issue.
Thanks for your patience!
Best Regards,
Kan
Hi,@Kan_Li,
我感觉是底层的库函数的问题,我比较了一下PN7462AU-FW_v05.19.00_Full\PN7462AU\external\USBD_ROMStack\lib\libusbd_armcc.lib和PN7462AU-FW_v05.22.01_Full\PN7462AU\external\USBD_ROMStack\lib\libusbd_armcc.lib,两个libusbd_armcc.lib文件完全一样,二进制代码没有差别。
能提供libusbd_armcc.lib的源代码吗?