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:TRF7970A 初始设置和 IRQ 状态寄存器

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

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

https://e2e.ti.com/support/wireless-connectivity/other-wireless-group/other-wireless/f/other-wireless-technologies-forum/953001/trf7970a-trf7970a-initial-settings-and-irq-status-register

器件型号:TRF7970A

尊敬的所有人:

我的公司实现了一个集成  提供3.3V 电源的 tf7970a 的电路板。 我想通过无线微控制器与该器件通信。软件初始化后、我可以读取所有器件寄存器、如第53页的数据表所示。 在我发送库存命令后、仅为8个字节。

发送命令后,在 SS 线路变为高电平的1.6ms 后,IRQ 发生。 IRQ 状态寄存器读取产生0x80、这表示 TX 完成、如数据表第41页所示。 然后,如果标签在现场并且 读取器未检测到错误 ,则会触发第二个中断,并在第一个 IRQ 后4ms 发生。 当检测到标签但未检测到任何内容时、我应该读取第二个中断0x40和0x3E。

这是初始设置:

DEF NFC_init ():
testcommand=[0]
testcommand_=[0、0]

DirectCommand (SOFT_INIT)

testcommand[0]=空闲

DirectCommand (空闲)
time.sleep_ms (2)
DirectCommand (复位)
time.sleep_ms (2)

testcommand_[0]= NFC_target_level
testcommand_[1]= 0x07
WriteSingle (2、testcommand_)
ReadSingle (1、testcommand_)
testcommand_=[0、0]
testcommand_[0]=调制器控制
testcommand_[1]= 0x08 #ASK 100%、无 SYS_CLK 输出、0x01
6.78MHz、OOK 100%、0x81

WriteSingle (len (testcommand_)、testcommand_)

testcommand[0]=调制器_control
ReadSingle (1、testcommand_)
testcommand_[0]= reguler_control
testcommand_[1]= 0x06  
WriteSingle (2、testcommand_)
ReadSingle (1、testcommand_)
TurnRFON=[0、0]
tTurnRFON[0]= CHIP_STATUS_CONTROL

TurnRFON [1]=0x20---- >3.3V 是否正确?

WriteSingle (len (TurnRFON)、TurnRFON)

读数单(1、转盘旋转)

WriteSingle (len (testcommand_)、testcommand_)
testcommand_[0]= ISO_control
testcommand_[1]= 0x02 # ISO15693
WriteSingle (len (testcommand_)、testcommand_)
ReadSingle (1、testcommand_)

初始设置是否正确?(调制器控制、ISO 控制、寄存器控制、芯片状态控制、NFC_TARGET_LEVEL 是否正确?)

我正在使用13.56MHz 的振荡器晶振、它决定了13.56MHz 的时钟频率、因此我将调制器控制寄存器0x08置位。 正确吗?

在数据表的第70页中、有一个寄存器 NFC 目标方检测电平寄存器(0x18) I 放置在0x07上。 正确吗? 我输入 n 0x07是因为 RF 场为170mV (第49页)、对吗?

但是、在该寄存器中、我可以设置 NFCID 大小。 NFCID 是 UID? 因为 NFCID 大小可以是4、7、10字节、但 UID 是8字节。 为什么?

提前感谢  

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

    您好 Francesco、

    对于"调制器和 SYS_CLK 寄存器(0x09)"、当使用13.56MHz 晶振时、位7必须为"0"。 从您之前的帖子中、我看到您使用的是 ISO15693标签。 这需要 OOK 100%调制。 如果您不需要 SYS_CLK 输出、则必须向该寄存器写入0x01。

    您必须区分 两种 NFC 模式发起方和目标方。 根据我的理解、您需要 读取 ISO15693标签。 这需要初始化模式。 当 您想使用 TRF7970A 仿真标签时、需要目标模式。 因此、在您的情况下不需要目标检测电平寄存器。  这也意味着您不必处理 NFCID 大小。

    由于您的问题与另一个主题相同、我将关闭它。

    此致、

    Helfried