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:演示 ISO15693防碰撞和6.62kbps

Guru**** 2577385 points
Other Parts Discussed in Thread: MSP-EXP430G2ET, MSP-EXP430F5529LP, DLP-7970ABP, TRF7970A

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

https://e2e.ti.com/support/wireless-connectivity/other-wireless-group/other-wireless/f/other-wireless-technologies-forum/830225/trf7970a-demo-iso15693-anti-collision-and-6-62-kbps

器件型号:TRF7970A
主题中讨论的其他器件:MSP-EXP430F5529LPDLP-7970ABP、MSP-EXP430G2ET

我在 NFC 工具版本1.8下运行 DLP-7970ABP 和 MSP-EXP430F5529LP。  我将使用 TRF7970A 读取 ISO-15693标签。

我想看到的两个功能是:

1) 1)防碰撞

2) 6.62kbps 数据传输(ISO-15693"长型")

NFC 工具没有这些选项。  是否有用于其中任一种的演示软件?

谢谢你。

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

    Mark、您好!

    随附的 NFC 工具不支持防碰撞功能、因为我们的软件是根据不需要防碰撞功能的 NFC 论坛规范设置的。 使用该软件库、添加此类功能将很困难、因为该堆栈本身未包含此类功能。

    为了满足您的需求、我们还提供了第二个软件库、其中涵盖了 ISO15693等主题、包括具有优化算法的防冲突。 您也可以将该基础配置为低数据速率、而不会遇到太多问题。

    该软件可从以下位置下载: http://www.ti.com/lit/zip/sloc297

    您需要一个 MSP-EXP430G2ET LaunchPad 来"开箱即用"使用此固件、因为该软件还设计用于 MCU 上、其存储器资源比 F5529少。

    要启用低数据速率、您需要执行以下操作:

    1) 1)调整 TRF79xxA_setupInitiator 调用以考虑低数据速率

    2) 2)将用于传输的标志更改为不表示高数据速率。

    使用低数据速率时、您可能需要调整寄存器以实现与所有标签的互操作性、但请先尝试 ISO 控制更改中的器件默认设置。 如果存在任何问题、可能需要调整无响应等待时间。

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

    此设置演示了防撞。 谢谢、这是我的主要愿望。

    当我将调用 TRF79xxA_setupInitiator (0x02)更改为 TRF79xxA_setupInitiator (0x00)(在 ISO15693.c 和 nsf_app.c 中)时、输出调制仍然为26kbps 速率、而不是预期的6.6kbps。  代码中是否还有其他地方需要更改配置?

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

    Mark、您好!

    我可以清楚地看到、现在我做了一项糟糕的工作来传达所需的更改。 抱歉。

    通过"调整 TRF79xxA_setupInitiator 调用以考虑低数据速率"、我曾表示函数本身、因为低速率不是涵盖范围内的情况。 因此、您需要调整实际的 API 以添加新情况、然后调用正确的 ISO 控制寄存器设置。

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

    我忽略了注意,我确实进入了 TRF79xxA_setupInitiator()并将其设置为响应 ISO 控制寄存器设置0。

    通过进一步的实验、我可以在 AKS/OOK 和1:4/1:256编码之间更改调制。 调制速率不变。

    SPI_writeSingle()上设置断点,我没有看到 germlins 覆盖 ISO Control 的证据

    勘误表中没有任何内容表明存在6.62kbps 的问题。

    也许我缺少寄存器设置。  除了 ISO 控制、是否还需要其他寄存器更改

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

    Mark、您好!

    您能否布置修改后 的 TRF79xxA_setupInitiator 函数? 我将在我的结尾处尝试它

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

    e2e.ti.com/.../trf79xxa.ce2e.ti.com/.../4863.iso15693.ce2e.ti.com/.../nfc_5F00_app.c

    谢谢、Ralph。

    请告诉我文件是否未传输。  搜索我的首字母缩写"MSF (MSF)"以查看我修改了代码的位置。

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

    Mark、您好!

    他们确实做到了。 我需要进一步调试、但本周时间有限。 明天我将尝试并挤出更多时间、希望能解决问题、但这可能会延续到下周初。  

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

    Mark、您好!

    感谢您的耐心等待。

    有时、星期一处理这些事情是一件好事。 新鲜的一周,新鲜的头脑,我立即被问题的答案震惊了。

    每个发送数据的 ISO15693 API 都有一段时间等待 TX 完成和 RX 完成、然后超时。 该代码针对 ISO15693高数据速率进行了优化、具有相当大的超时时间。 但对于低数据速率、这些超时太短。 我将它们增加了三倍、并立即得到标签读数。

    请参阅以下示例(注释中标记的原始超时)

    G_sTrfStatus = TRF79xxA_waitRxData (15、45);// 5毫秒 TX 超时、15毫秒 RX 超时
    

    请尝试在 API 中进行这些更改、这应该可以解决此处的最后一个问题。

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

    我更改了在 ISO15693.c 中找到 TRF79xxA_waitRxData (5、15)的两个位置  仍然不幸运。

    如果我从我的"范围"中正确读取调制、它仍然看起来像26.5 kbps。

    我可能遇到了版本偏差问题。  如果您可以发送 trf79xxa.c ISO15693.c 的副本、我可以在此处进行编译。

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

    Mark、您好!

    您需要调整 ISO15693文件中 TRF79xxA_waitRxData 的所有调用的超时。 我刚才展示了一个示例。 超时都是根据功能定制的。

    这里是我使用的整个项目、它来自我的测试分支、因此我不记得我是否进行了其他更改、因此只需验证它是否正常工作、然后拉过您所需的 ISO15693特定项目: e2e.ti.com/.../TRF7970ABP_5F00_RFID_5F00_Reader_5F00_Demo_5F00_Low_5F00_Data.zip

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

    拉尔夫

    实际上、现在读取器确实可以使用标签。  但是、如果我正在正确读取'scope 输出、它仍然看起来像26.48kbps。 下面的光标相距为150us。  

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

    标记-  

    我想您有一种误解、即 ISO15693下行链路将以6.62kbps 的速率发生...这种情况下、从0x02 (对于 TRF79xxA ISO 控制寄存器)到0x00的设置是让部件知道的(提前) 然后、读取器在具有与标签匹配的请求标志的下行链路消息中发送的内容。

    要明确-对于低功耗 HF RFID 读取器,下行链路将始终(无论如何应该)处于高 ISO15693数据速率。 (除非您真的想使用脉冲位置、这会将您的速度降至1.6kbps、这是读取器侧的另一个选项、而不是6.62kbps)、否则应始终使用4个数据编码中的1个。  

    此处使用的请求标志字节为:  

    单副载波、低数据速率、单槽库存:0x20

    单副载波、低数据速率、十六槽库存:0x00

    单副载波、高数据速率、十六槽库存:0x06

    单副载波、高数据速率、单槽库存:0x26

    等等

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

    Josh、

    感谢您的澄清。  这些"标准"包括混乱的变化。

    在演示了用于防撞和外部调制控制的软件之后、我打算自己设计一款适用于此芯片的全新 E 类放大器!

    -Mark Freeman

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

    如果您对标准有任何疑问或需要更多的澄清、请告知我们、我们很容易分享相关知识。  

    这是我在一些 RFID 培训中介绍的 ISO15693部分、回顾了一些时间

    e2e.ti.com/.../ISO15693_5F00_Brief_5F00_Overview.pdf

    电流、这可能有助于您入门、

    https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/667/TRF7970-Exernal-Power-Amplifier-for-general-applications_5F00_V53_2800_1_2900_.pdf

    只要您在电压上升时注意调制深度变化、它就能正常工作、ISO1444B MOD 深度设置尤其需要这种情况-如果不使用(即仅限 ISO15693)、则可以去掉开关。 BDP949也可能需要更换-最后我记得、这些部件即将停产。 (快速检查 DigiKey 确认、因此如果您将其用作参考、则作业将为#1)

     

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

    Josh、

    感谢您的总结。  这会将重要信息放在一个位置;如果我先阅读这些信息、我可能不会在我的头脑中交换 VICC/VCD 调制。

    我从未找到过您如何选择的说明:OK/ASK、高/低数据速率、单/双副载波、1of4/1of256调制。

    我正在寻找6.62kbps、因为较低的带宽理论上会增加读取范围。  由于有大量 E2E 问题要求提高读取范围、因此发布6.62kbps 代码的副本可能会对其他人有所帮助。  当然、他们需要设计一个匹配的读取滤波器。  我发现您的竞争对手仅有一款支持6.62kbps 的芯片、该芯片已停产。

    我之前已经查看过 Aslanidis/Risch 应用报告、并计划将其核心内容作为起点。  由于我的应用仅为 ISO15693、我的实施计划是:

    • 在不使用调制器的情况下构建基极电路。  如果有令人信服的提问理由、我将自行设计。
    • 研究保护 MOSFET 的电路;第一个单元将是试验性的、我不希望不匹配的负载烧毁晶体管。
    • 针对 ISO15693的更窄带宽重新调整匹配/滤波器电路。
    • 针对6.62kbps 对接收滤波器进行调优、可能需要添加一个放大器。

    此致、

    标记