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.

[参考译文] TRF7970A:代码示例

Guru**** 2540720 points
Other Parts Discussed in Thread: TRF7970A

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

https://e2e.ti.com/support/wireless-connectivity/other-wireless-group/other-wireless/f/other-wireless-technologies-forum/698295/trf7970a-code-example

器件型号:TRF7970A

客户 尝试将示例代码移植到非 TI MCU。  尝试让读取器检测是否存在标签、而无需担心任何错误处理或冲突事件。   目标是 能够初始化 TRF7970A、然后在天线上显示一个标签、然后检查 IRQ 引脚是否切换、最后读取 FIFO 数据。

 

      数据表提到、IRQ 引脚将在与 IRQ 状态寄存器(0x0C)相关的特定事件下被切换、但 他们看不到它与 他们编写的代码一起切换(可能是由于代码中缺少某些逻辑)。  他们遵循与在线提供的示例代码类似的序列、但我是否遗漏了什么?  

1.      按照数据表中的6.11初始化 TRF7970A 芯片

2.      将芯片状态寄存器设置为0x21以打开射频字段

3.      将 ISO 控制寄存器设置为0x02

4.      将调制器控制寄存器设置为0x01

5.      将寄存器0x07设置为0x15

6.      将可调 FIFO 深度设为0x0C

7.      将寄存器0x18设置为0x00

8.      向天线出示标签并检查 IRQ 引脚是否正在切换(它们看不到发生任何情况、并且 IRQ 状态寄存器始终返回0)

2.      作为#1的后续问题、示例代码在步骤7后发出库存命令、同时尝试查找结束从 ISO 协议代码文件调用其他命令的标签。  是否需要在 TRF7970A 能够检测到一个标签之前发出库存命令(因此、这将是 它们从不看到 IRQ 引脚切换的原因)?

      数据表介绍了在使用芯片时如何绕过所有 ISO 协议处理、但 他们看到了很多代码、似乎是通过代码处理协议的。  是否有任何方法可以解决此问题、或者我们是否仍然需要为 ISO 协议设置所有代码?   他们 希望在 IRQ 引脚切换后立即从 FIFO 缓冲区读取数据,并查看数据是什么,但似乎并不那么简单。

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

    IRQ 根据用于射频通信的 TX 和 RX 事件进行切换。 配置设备不会导致 IRQ 切换。 发送数据包的方法。

    库存命令用于 ISO15693技术。 他们需要了解他们使用的标签技术、并为此发出正确的命令、无论是 ISO15693库存还是 ISO14443A 的 REQA/WUPA 库存等

    是需要在 IRQ 切换之前发出命令。 这是在示例代码中完成的、应该已经是他们移植过程的一部分、我不理解他们已经移植命令发送的方式...

    我不完全理解问题3。 必须为器件设置合适的 ISO 协议、必须发出命令、必须通过接收0x80 - TX 完成的 IRQ 来验证发出的命令、然后必须清除 FIFO 才能接收来自标签的响应。

    "他们希望在 IRQ 引脚切换后立即从 FIFO 缓冲区中读取数据、并查看数据是什么、但似乎并不那么简单。"

    TRF7970A 是一款复杂的器件、因为它是一款 NFC 收发器、需要微控制器进行仔细控制才能正常运行。 TI 示例代码涵盖了所有受支持标签类型的所有必需操作、我们已完成此项工作以方便客户使用。 似乎他们正在执行部分端口并因此而遇到问题。 这种做法对我来说是要设法解决问题,以及它们为什么会有任何问题。 他们需要移植整个 NFC 堆栈和应用程序代码以获得结果。 在他们验证了其 MCU 上的堆栈是否正常工作后、他们可以根据自己的需求修改应用。