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.

[参考译文] TRF7960A:无法在7970ABP 的 FIFO 中获得系统信息、错误/成功格式标志

Guru**** 2390835 points


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

https://e2e.ti.com/support/wireless-connectivity/other-wireless-group/other-wireless/f/other-wireless-technologies-forum/817050/trf7960a-cannot-get-get-system-info-error-success-format-flags-in-fifo-of-7970abp

器件型号:TRF7960A

您好!

 我在从标签读取命令的响应时遇到问题,例如获取系统信息、锁定 AFI、锁定 DSFID、写入 AFI 和 DSFID 命令。 当我读取 FIFO 时,我能够成功发送命令,并且没有从标记获得有效的响应(错误/成功)。 我验证了 lock AFI、lock DSFID、write AFI 和 DSFID 命令是否正常工作、是否更新了它们对应的值、以及是否锁定(使用 NXP 读取器进行检查)、但当我发送命令将锁定的 AFI/DSFID 标签上的值更新到 FIFO 时、我没有收到任何错误响应。

现在、当我发送获取系统信息时、 除了我在 FIFO 中发送的相同标志和命令之外,我无法看到任何数据(对于上述所有命令,如果我设置了标志 X62和命令(如2A ),我只能在  FIFO 中看到这两个值)。

您能不能通过提供正确的格式、设置和 发送标志 以及读取 FIFO 值的时间来帮助我。

注意:我可以成功读取 UID 并 读取 FIFO 中的单个块。

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

    您好、Vamsi、

    正确的格式和标志都是 ISO15693标准的一部分、因此您只需读取 ISO 标准、然后根据该标准实施命令。

    通常、对于计时、如果您需要超时的想法、则这些命令不需要太长的时间。  10毫秒的 TX 超时和30毫秒的 RX 超时就足够了。

    ISO15693标准还将帮助您解码错误代码。

    如果 您还没有、我建议参考我们的 SLOC297示例代码。

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

    您好、Ralph、

    感谢您的回复。

    我尝试了具有标记的相同命令 、如 SLOC 中的代码所示。

    我 将得到相同的命令作为响应。

    您能帮我解决这个问题吗?

    我正在连接发送命令时记录的 SPI 数据序列。

    此致、

    Vamsi

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

    您好、Vamsi、

    您发送的请求标志= 0x20 -此标志已寻址且数据速率较低。 您需要使用请求标志= 0x22、这用于高数据速率 、除非您实际将所有代码配置为执行低数据速率。

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

    您好、Ralph、

    我再次需要您的帮助、

    您建议将请求 标志更改为0x22并按照参考代码中的操作配置7970。 现在问题是、我得到"0F"作为响应。

    请查看随附的 SPI 数据并帮助我解决问题。

    如果需要代码中的任何其他设置、我将与您分享。

    谢谢、此致、

    Vamsi

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

    您好、Vamsi、

    当您在数据传输后获得0xE0时、您的设置出现了很大的错误-您的代码看起来要花太长的时间来检查 IRQ 寄存器。 您需要对其进行寻址、以便首先获取0xA0或0x80、然后获取0x40。  

    有关更多详细信息、请参阅常见问题解答指南的第4.6节: http://www.ti.com/lit/pdf/sloa248

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

    您好、Ralph、

    正如您所建议的,我尝试调整计时并读取数据。

    在前3张图片(附件)中,我没有得到任何数据(2B 除外),而且 TRF79X0_IRQ_STATUS_REG 始终为0x80,在执行 FIFO 重置命令后,我没有看到0x40:

    图片:1.

    图2:

    图3:

     当 TRF79X0_FIFO_IRQ_LEVEL=   0x0C 时、根据您以.e 为示例给出的代码进行设置时、会观察到上述三项。

    然后我更改了设置  TRF79X0_FIFO_IRQ_LEVEL= 0x02、然后我得到了如下值、并认为我得到了 DSFID 和 AFI 值、但不符合 ISO15693标准。

    图4:

    如果我在系统信息以及 DSFID 和 AFI 中得到的信息正确无误、您能不能帮助我解决天气问题。

    谢谢、此致、

    Vamsi。

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

    您好、Vamsi、

    当您得到0xA0时、您无法重置 FIFO。 0xA0表示 FIFO 接近满、您仍在发送数据。 在这种情况下、您清除了数据。

    为什么不使用 IRQ? IRQ 对于使用此器件来说极其重要。 如果没有 IRQ、正确支持器件就非常困难且要求苛刻。