This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TRF7964A:在一个页期间接收到冲突错误导致意外操作

Guru**** 2382480 points
Other Parts Discussed in Thread: TRF7964A, TPS61042
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/other-wireless-group/other-wireless/f/other-wireless-technologies-forum/678638/trf7964a-collision-error-received-during-a-page-causes-unexpected-operation

器件型号:TRF7964A
主题中讨论的其他器件: TPS61042

主席先生或女士,

我的 RFID 项目现在运行良好、不同之处在于、在通过 NTAG21x 标签执行 FAST_READ 操作期间、寄存器0x0C 的位2中会报告冲突错误。  当在 EORX 中断期间报告任何错误时、固件通过重新发送以下读取命令序列重新启动操作。

0x01、0x08 启用 CRC 校验

0x10、0x02 使能正常接收和正常组帧

0x8F 复位 FIFO

带 CRC 的0x91发送

0x3D、0x00、0x30 发送以下三个字节

第 NN 页的0x3A、0xNN、0xNN FAST_READ 命令。

对于接收到的 CRC 错误、这会重新启动操作、一切正常。  对于冲突错误、重新启动的操作在30ms 后超时。  固件自动重试失败最多可读取5次、此特定错误会在 EORX 超时的4次重试失败。  重试期间,托盘保持打开状态。  由于系统中的时序限制、低级驱动程序一次只读取一页、但它能够以这种方式读取连续的页块。

我已经扫描了数据表、在选择和激活标签时找不到任何关于特殊处理碰撞错误的说明。  该标签用于噪声稍大的环境、检测到偶尔的 CRC 错误并通过退休人员进行正确校正。  读取期间的冲突错误总是失败的。  我出了什么问题?

此致、

Al Otis、JR

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Alton、

    在预期会发生碰撞错误的状态(例如标签检测/激活)之后、TRF7964A 接收到的任何碰撞错误都应被处理、处理方式不应与 CRC 或奇偶校验错误不同。 当射频信号受到噪声/等干扰/破坏时、可以看到冲突错误而不是 CRC 错误、这种情况并不少见

    有时、这些错误只能通过软复位器件来解决、我们建议使用0x03直接命令(SPI 0x83)、后跟0x00直接命令(SPI 0x80)、后跟1ms 延迟。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    拉尔夫

    我尝试了您的建议、但似乎对问题没有任何影响。  软件复位命令将芯片状态控制寄存器(0x00)复位为0x01、关闭我假设在1ms 后的载波会导致标签进入 POR 状态、因此需要重新选择活动状态。  这是正确的陈述吗?  如果不是、则在移除载波后、标签将保持活动状态多长时间?

    为了解决应用程序中的问题、我现在在执行所有读/写重试之前先执行取消选择、然后执行新的选择。  取消选择将执行以下操作。

    1) 1) 将寄存器0x00设置为0x01以关闭载波。

    2) 2)延迟20ms 以确保标签处于 POR 状态。

    3) 3) 将 EN 设置为低电平。

    选择将执行以下操作。

    a) 将 EN 设置为低电平1ms、然后设置为高电平(对于之前未取消选择标签的情况)。

    b) 发出软件复位、然后等待 osc_ok 位被设置(5ms 时间限制)。

    c) 将寄存器0x00设置为0x21以启用载波。

    d) 等待7ms、使标签完成 POR 并进入空闲状态。

    e) 继续防冲突、直到达到活动状态。

    现在、在对 NTAG216标签进行100次完全读取的多次运行中、每次运行的 CRC 错误少于5个、每次错误的重试次数不超过1次。

    供参考: 系统紧密耦合标签和读取器天线。  间距小于5毫米、与天线最接近的第二个标签大于30毫米。  在冲突处理过程中、任何冲突错误都被视为噪声、并重试此过程(取消选择、然后选择)。  噪声源是一个离标签大约10mm 远的 TI TPS61042 LED 开关反向光驱动器、在电感器输出端产生19V 500KHz 脉冲。  驱动器电路现在覆盖了一个接地铜屏蔽层、这非常有效。

    感谢您指导我使用 TRF7964A 的 TI C 代码。  它有助于完成我的 ARM 汇编器编码固件。

    请提供评论。

    此致、

    阿尔

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Alton、

    [引用 USER="Alton Otis JR">]软件复位命令将芯片状态控制寄存器(0x00)复位为0x01、关闭载波、在1ms 后我认为这会导致标签进入 POR 状态、因此需要重新选择为活动状态。  这是正确的陈述吗?

    它可能小于1ms、因为标签由射频场被动供电、一旦移除标签、标签就会复位状态。 我建议作为一种恢复 TRF7964A 内部状态机的方法、除非以这种方式复位、否则可能会导致反复出现错误(这种情况很少见、但在嘈杂的环境中发生)。 该方法肯定需要完全重新激活标签。

    我觉得30mm 的距离不足以确保避免碰撞、这完全符合 NFC 技术的标准读取范围。 如果标签接近、您可能会观察到冲突或其他错误。

    我认为开关噪声通常不会影响低频下的射频通信、但如果电感器未被屏蔽、我可以看到这更多是一个问题。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    拉尔夫

    感谢您的常见快速回复。  还有一些评论、我将关闭此 TT。

    RFID 天线是一种1uH 非屏蔽桶形电感器、磁轴与标签天线磁轴同轴。  此标签是一种定制设计、带有12 x 12 mm 方形螺旋天线。  电感器顶部比标签平面低3mm。  在此位置、RSSI 水平为7。  将标签移至5 mm 间隔时、通信不良会将电平降至3。  在10mm 处没有通信。  由于标签和天线在产品外壳中的物理位置、因此可以放置距离天线同轴的最近的外部标签、该标签与天线的距离为50mm、并有三个中间的接地层。  在机箱外部、如果没有中间接地层、则在正常标签位置上方3 mm 处放置第二个自定义标签、或在正常标签位置上方30 mm 处放置25 mm 商业标签、不会产生碰撞错误。  我认为我们可以安全地防止次级标签干扰。

    背光开关使用屏蔽式 SMT 电感器、我同意您的看法、这似乎不可能是干扰的原因。  然而、一旦添加了铜屏蔽层、对 RFID 子系统的干扰就从相当大的下降到几乎为零。  干扰程度是 PWM 水平的函数、0和100表示无干扰、50%(正常水平)表示最大干扰。  因此、干扰信号是开关频率和 PWM 频率混合的副产品。

    非常感谢您的所有帮助、我希望我不必再为这个项目麻烦您。

    此致、

    阿尔