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.

[参考译文] TRF7962A:UID 编号发生变化。

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

https://e2e.ti.com/support/wireless-connectivity/other-wireless-group/other-wireless/f/other-wireless-technologies-forum/777621/trf7962a-the-uid-number-changes

器件型号:TRF7962A
主题中讨论的其他器件: RF37S114TRF7970A

你好。
我使用 TRF7962A 读取 IC 标签[RF37S114]的 UID。

我有时无法正确读取 UID。
例如、如果读数失败、将如下所示。
成功示例:4e 58 A1 66 E 7 C 0 7 E 0
故障示例:4e 58 A1 66 E7 C0 07 52
E0变为52。
如果失败、则始终会更改为相同的数字。
当更改为另一个 IC 标签时、它将更改为另一个数字。
示例:E0 -> C1
失败的概率约为4%。

我知道通信距离会影响读取。 但是、即使在0 mm 的距离进行通信、结果也不会改变。 (在我的环境中、IC 标签可以在9 mm 的距离进行通信。)

我使用此函数进行通信。
支持从器件选择(SS)的串行接口模式
我看到了勘误表、并在负边沿获得了 SPI 数据。 我通过另一种方法分析了 SPI 信号、但得到了失败的数据。

请告诉我、为了正确获取数据、我应该小心谨慎。

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

    您使用什么 TI 示例代码作为实现此目的的基础?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢你的答复。
    我第一次使用[TRF7970A]的评估板。
    根据示例代码、我将其定制为 TRF7962A。
    具体而言、使用以下通信读取标签 IC。
    标签 IC 读取间隔最短为6ms。

    MOSI
    83.
    80
    4F FF
    09 31.
    49 FF
    0b 07
    0b 86
    4B FF
    40 00
    00 31.
    01 02
    07 15.
    08 1F
    6C 00 00
    8F 91 3D 00 30 26 01 00
    41 FF
    6C 00 00
    8F
    41 FF
    6C 00 00
    5C 00
    5C 00
    5C 00
    5C 00
    5C 00
    5C 00
    5C 00
    5C 00
    5C 00
    5C 00 (当数据在 FIFO 中累积时读取。)
    7F FF FF FF FF FF FF FF FF FF FF FF FF
    8F
    4F FF
    8F
    40 00
    00 91
    0b 07
    4B FF
    6C 00 00

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

    我的问题还没有得到很好的回答、请提供适用于 SLOC297C 或 SLOA227A 等示例代码的 TI 软件编号。

    您是否还在轮询 IRQ? 为什么不使用中断? 以及为何使用半功率模式?

    您是否在任何时候获得 TX 完整 IRQ? 这对我来说并不清楚。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    你好
    我指的是 SLOC 250。

    我正在读取数据10字节。
    没有用于接收10字节 IRQ 的设置。
    我在9字节接收到 IRQ、并通过轮询读取剩余的1字节。

    下面是半功率使用它的原因。
    ·以符合无线电标准。
    即使是半功率,也可以获得必要的通信距离。

    我正在使用 IRQ。
    6C 00 00
    在上述导联之前接收到 IRQ。

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

    您好!

    该软件库非常旧、也有一些错误。 我们不再支持它。 我建议查看我们经过大幅改进和充分测试的示例 :http://www.ti.com/lit/zip/sloc297

    就问题本身而言,如果不看错线或任何时间安排,我很难对具体的情况作出真正的评论。 理想情况下、最好进行完整的逻辑状态分析器捕获、我可能可以从该捕获中快速确定问题。 但从你们向我展示的内容来看、我怀疑问题与某种时间相关。 您可能需要检查您是否不会受到本文档中报告的任何问题的影响、包括第1.6节: www.ti.com/.../sloa140b.pdf 中的问题

    您提到了半功率以符合无线电标准... 我从未听说过这是需要的、我们已经使用我们推荐的硬件设计对器件进行了测试和认证、即使是红色的器件也是如此。 您可能希望与任何人讨论这一点、他们告诉您输出功率太远了。 您所做的就是减小读取范围。

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

    你好
    感谢你的答复。
    我了解影响这一点的因素。
    从 Tx 完成 IRQ 到 FIFO 复位的时间受到影响。
    这次是100到150us。
    如果此时间延长或缩短、则不会发生。

    www.tij.co.jp/.../sloa248a.pdf
    4.6 0xC 0的 IRQ 状态是什么意思?
    此问题的典型原因不是 TX 完成事件(IRQ 状态= 0x80)的中断处理速度不够快。

    从上面的 QA 中删除。
    我希望您告诉[处理时间]、以便正常运行。
    状态不是0xC0或0xE0。

    我想遵守弱无线电标准。
    无需许可证。

    其他信息
    E0更改为 CRC 的高字节。

    谢谢你。

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

    您看到的0xE0是标签 UID 的最后一个字节: en.wikipedia.org/.../IEC_15693

    对于 FIFO 复位、100至150us 是可以的、问题是在接收到标签数据之前您没有处理 IRQ、因此在几毫秒内 IRQ 不会被处理。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好

    到目前为止,我已经研究了各种问题。

    发生错误的条件
    从接收到发送完成 IRQ 到 FIFO 复位的时间被延迟了1us、范围为68us 至140us。
    因此、发现在大约19us (52.6kHz)的周期内出现错误。
    请参阅随附的图表。

    2.出现错误的次数
    我有21个 TRF 7962A 电路板。
    其中两个发生了相同的错误。
    我执行了与1相同的操作。 不会产生错误、但不会发生错误。

    3.如果您停止 FIFO 复位
    在发生错误的情况下停止 FIFO 复位。
    不会发生错误。

    4. IC 标签
    有些 IC 标签会产生错误、而 IC 标签不会产生错误。
    误差发生在大约10%的 IC 标签中。

    5. IC 标签的输出数据
    当发生错误时、我检查了 IC 标签的模拟数据、但以正常顺序接收了数据。
    然而、当 TRF 7962A 向 CPU 发送数据时、本应始终为'E0'的数据已更改为'CRC 的高字节'。
    也就是说、在 TRF 7962A 中、'E0'和'CRC 的高字节'被互换。

    如果 FIFO 复位未完成、则会在常见问题解答中写入数据损坏。
    但是、在我的环境中、如果我复位 FIFO、就会发生数据损坏。
    此外、数据损坏发生的时间是周期性的。

    我确认电流点没有问题、但我不知道是 TRF 7962A 的单独差值还是外部器件的微小差值导致的差值。

    我认为、如果在19us 的周期内对 TRF 7962A 和 FIFO 复位进行一些内部处理、'E0'和'CRC 高位字节'将被互换。

    作为对策,我决定屏蔽“E0”。

    感谢你的帮助。

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

    这对我来说仍然是非常奇怪的行为、但现在我需要一个完整的 SPI 捕捉、每个字节之间的时序进行进一步分析。 这可以通过 Saleae 逻辑分析仪等工具来实现。 如果提供了此类数据、我就可以更详细地进行分析、并可能确定任何时序问题。