现在我们用的芯片ST32F103C8,使用智能卡接口,在做检测时有一项检测时要求如下:
终端(MCU)应连续5次重发有争议的字符,并继续进行正常处理。即在MCU检测到卡接口帧错误的时候,能够重发。
遇到的问题是:
比如发送 A0 00 00 00 03 智能卡每次接收到一个字节后,发回一个帧错误,连续回四次帧错误。
正常的应该是:[A0][A0][A0][A0]A0 [00][00][00][00]00 [00][00][00][00]00 [00][00][00][00]00 [03][03][03][03]03
异常情况是::[A0][A0][A0][A0]A0 [00][00][00][00]00 [00][03][03]][03]
括号内表示MCU检测到错误后的重发,为什么前两次可以进行重发,第三次和第4次不能进行重发,而且少一次,第四次又可进行重发但次数不够。
重发的处理是使用的an2598的例程处理方法,我们也改了另一种方法,不在中断里处理,现象是一样的。
急盼回复。 |