ST意法半导体
直播中

石栓柱

7年用户 180经验值
私信 关注
[问答]

ST95HF错误代码:0x87 0x01 0x90

嗨先生/女士,
我从ST95HF收到错误代码:0x87 0x01 0x90,我可以知道这意味着什么吗?
上面的代码没有解释。 ST95HF数据表DoclD025630 Rev4中的解释代码仅为0x87 0x00。这意味着超时或没有标签,意味着没有确认或没有确认被发回。
请尽快帮忙。
非常感谢你。
干杯,
KF

#NFC

回帖(1)

石栓柱

2019-8-9 08:47:28
嗨先生/女士,
百万感谢您的支持。
 
 我正在开发2个设备之间的通信(ST95HF,对等设备是另一个供应商NFC设备)通过NFC触摸进行通信。
 我使用的是Type 2,ISO 14443-A。我的问题是ST95HF无法写入对等的NFc设备。它返回超时错误。
 
 但是,我能够从具有相同代码和相同内存位置的对等NFC设备读取。
 在我的调试尝试期间,我需要从ST95HF发回的错误代码中的更多信息。
 
 我可以提供以下信息:写我已经完成了2次试验。都失败了。
 
 [试验1]首先,选择扇区(需要发送2个命令包)进行写入,然后写入。
 第一个数据包发出后,它已经失败了。
 [试验2]如果没有选择扇区,请立即选择要写入的内存lcoation。
 所有尝试写入内存位置的方法都已失败。 // ------------------------------------------------ --------------------------------
试验1:
 
 要在对等NFC设备中选择扇区位置,我将发送数据包1。
 SEND_RECEIVE(0x04),Data_Length(0x03),Peer_NFC_Device_Sector_select_command_set(C2,FF),0x28。但响应是来自ST95HF的错误代码。以下是从微控制器内存中捕获:
 
 87 01 90 d0 00 00 00 00 f9 ff ff ff 00 00 00 00 10 ab 03 08到目前为止,我还没有遇到扇区选择成功尝试。
 
 但我可以估计扇区选择成功响应将是:
 0x90 0x04,0x000A // -------------------------------------------- --------------------------------------
试验2:
 
 要在对等NFC设备中写入内存位置(0xF0),我将以下数据包发送到ST95HF:
 SEND_RECEIVE(0x04),长度(0x07),Peer_NFC_Write_Command(0xA2),要写入的位置(0xF0),要写入的数据(01,02,03,04),0x28But从ST95HF接收错误代码:
 
 87 01 90 78 80 07 01 d5 00 00 00 00 f9 ff ff ff a0 e8 00 20 - >首先写循环
 87 01 90 00 a0 00 00 00 00 00 00 00 f9 ff ff ff a0 e8 00 20 - >第二次写循环
 87 01 90 00 e8 00 00 00 00 00 00 00 f9 ff ff ff a0 e8 00 20 - >第三个写循环
 87 01 90 00 e8 00 00 00 00 00 00 00 f9 ff ff ff a0 e8 00 20 - >第四次写入循环对于您的信息,我使用多个循环写入对等NFC设备,从Peer NFC页面地址0xF0开始的64个数据副本。
 
 到目前为止,我还没有遇到写入成功尝试。
 但我可以估计写成功响应将是:
 0x90 0x04,0x000A // -------------------------------------------- --------------------------------
 
 一些信息:对于Peer NFC设备,当ST95HF发出扇区选择命令时,按右键,它将回复以下数据或响应:
 
 它将返回Acknowledge(0x0A)或
 No Acknowledge(0x0000 - 无效页面地址,
 0x0001 - Paroty或CRC错误,
 0x0003 - 仲裁器锁定到I2C,
 0x0007 - EEPROM写错误)
 或者超时(根本没有响应)。但是,从上面的响应来看,上述代码都没有匹配。
// ------------------------------------------------ --------------------------
对于Peer NFC设备,当ST95HF写入其内存位置时,右侧将回复以下数据或响应:
 
 它将返回Acknowledge(0x0A)或
 No Acknowledge(0x0000 - 无效页面地址,
 0x0001 - Paroty或CRC错误,
 0x0003 - 仲裁器锁定到I2C,
 0x0007 - EEPROM写错误)
 或者超时(根本没有响应)。但是,从上面的响应来看,上述代码都没有匹配。
// ------------------------------------------------ ---------------------------
供你参考,
 
 我已使用相同的代码从Peer NFC设备中的相同内存位置(0xF0)成功读取64字节数据。
 ST95HF将所有64字节的正确信息发送回微控制器。
 
 读写的区别是:
 对等NFC设备读取超时为5ms。但是,它的写入超时是10ms。请问,从上面的错误代码中,是否有任何线索表明我需要延长ST95HF的等待时间,
 
 等待从同行NFC设备收到确认(0x000A)?我可以知道如何调整ST95HF的这个特性,
 
 从同行NFC设备收到确认的等待时间?
 
 请尽快咨询。
 非常感谢您的建议。
 
 谢谢。
 
 干杯,
 KF
举报

更多回帖

发帖
×
20
完善资料,
赚取积分