您好!
TRF7970A 通过 SPI 与 MCU 连接、系统时钟为 13.56MHz。 下面是与 ISO15693标签通信的 TRF 配置:
TRF 使能()
TRF_SendDirectCommand (TRF_SOFT_INIT_CMD)
TRF_SendDirectCommand (TRF_IDLE_CMD);
TRF_ResetFIFO ();
TRF_WriteRegister (TRF_MODEG_CONTROL、0x31)
TRF_WriteRegister (TRF_电脑 控制器、0x00)
TRF_WriteRegister (TRF_NFC_TARGET_LEVEL、0x00);
TRF_TurnRfOn ();
单一库存命令8F、91、3D、00、30、 26、01、00
采用上述配置时、TRF 与 4块电路板上的 ISO15693标签进行通信、但不适用于其他4块电路板。 以下是非工作场景:
MCU 向 TRF 发送单个资源清册命令、TRF 在中断线路上生成中断(通过逻辑分析仪进行检查)。 MCU 读取 TRF 的 IRQ 状态寄存器、MCU 始终获取0x80 (传输完成)、从不接收0xC0、0xE0或0x40。 MCU 还读取 FIFO 长度并接收到0x00响应(表示 TRF 的 FIFO 中没有数据)。 根据我的理解、如果 TRF 已从标签接收到数据、则会生成中断、但不确定 IRQ 状态寄存器为什么仅提供0x80。 请帮助解决此问题。
SPI 引擎工作正常、因为它正在成功地对 TRF 的寄存器进行读取和写入。
请告诉我 、您是否需要我的最终用户对此提供更多输入。
谢谢、
Anuj