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.

[参考译文] RF430FRL152H:通过数寄存器

Guru**** 2535740 points
Other Parts Discussed in Thread: RF430FRL152H

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

https://e2e.ti.com/support/wireless-connectivity/other-wireless-group/other-wireless/f/other-wireless-technologies-forum/886462/rf430frl152h-number-of-passes-register

器件型号:RF430FRL152H

尊敬的所有人:

大家好、我叫 minhyung。

我正在使用 RF430FRL152H 和 MPS-EXP430G2ET + DLP7970ABP 创建定制板。

与 NFC 配合使用的 RF430FRL152h 定制板将通过光传感器接收 LED 灯、并将数据发送到主套件 MPS-EXP430G2ET + DLP7970ABP 并发送到 PC 以进行显示。 我们将在 Matlab 中显示数据。

我通过使用 MATLAB 接收原始数据成功地实时绘制了图形。 但是我还有其他问题、我想像 GUI 界面一样一次获得100多个数据(下图)。

我知道通过数寄存器是 GUI 界面中采样数据的数量。 尽管我修改了命令以将传递寄存器的数量设置为7、但我只能像以前一样获得两个数据。

我不知道存储数据的地址。 如何从响应中一次了解100多个数据?

下面是 MATLAB 中的响应和命令。

命令8 ='01130003041802210004100101000000';

请回复。 谢谢你。

姜敏雄

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

    您好、Minhyung、

    是的、您必须对通过数寄存器进行编程、这是正确的。

    如果您需要100个样本、请将通过次数设置为100 (0x64)。

    在中断寄存器中、您已设置无限采样。 当设置通过寄存器的数量时、这是不可能的。 您必须设置 START 位并等待100个采样、 之后您必须读取数据并再次启动以获得接下来的100个采样。

    此致、

    Helfried

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

    尊敬的 Helfried

    感谢您的回复。 但我需要您的更多帮助。  

    我修改了该命令、在不使用无限采样模式的情况下对100个原始数据进行采样。  

    命令8 =  '0113000304180221000410640100000000';  

    命令的响应如下所示。 我确认 ,当光被阻挡时,反应是不同的,而不是。

    指示灯熄灭:[00401600210021]

    灯亮:[00FF3F00210021]

    我认为该响应太短、无法显示100个原始数据。

    我想知道如何从响应中获取所有100个原始数据。 实际上、我希望获得尽可能多的原始数据。

    完整命令如下所示。

    Command1 ='0108000304FF0000';%TRF7970AEVM
    Command2 ='0109000304F0000000';
    命令3 ='0109000304F1FF0000';
    命令4 ='010C00030410002101020000';%Register 写入请求。

    ommand5 ='01130003041802210100000000000000010000';%block 1 NumBlocksReceivedv 1.

    命令6 ='011300030418022102000002000000FFFF0000';%block 2 % ADCO 过采样率32

    命令7 ='011300030418022108640046020300A6A30000';%block 8.

    命令8 ='0113000304180221000410640100000000';%block 0 %通过率100

    命令9 ='011300030418022103280000000000000000000000';%block 3 % 40ms 自定义时间//25Hz

    命令10 ='010B000304180220090000';%采样所有传感器请求模式。[采样数据]

    请帮帮我。

    谢谢你。

     

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

    您好、Minhyung、

    除了一个例外、我认为您的设置正常。 对块0的写操作必须是最后一次、因为它 包含启动采样过程的位。 无需写入块1。

    开始采样后、测量的数据随后存储在存储器中、起始地址0xF8B0与块编号9相关联。

    您的最后一个命令是"Read Single Block 9"、但您还必须读取后续块才能获取所有采样数据。

    当读取块0时、您将在状态寄存器位1:0中获得采样过程的当前状态。 当读取块8时、还将获得采样过程中当前存储的样本数。

    此致、

    Helfried

     

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

    尊敬的 Helfried

    谢谢你。 但我还有一个问题。  

    我修改了命令、如下所示。

    命令5 ='011300030418022102000001000000FFFF0000';%block 2 % ADCO 过采样率32

    命令6 ='011300030418022103280000000000000000000000';%block 3 % 40ms 自定义时间//25Hz

    命令7 ='011300030418022108640046020300A6A30000';%block 8.

    命令8 ='0113000304180221000410640100000000';%block 0 %通过率100

    命令9 ='010B000304180220090000';%采样所有传感器请求模式。[采样数据]块9

    命令10 ='010B0003041802200A0000';%采样所有传感器请求模式。[采样数据]块10

    命令的响应如下所示。  

    Block 9: [00FF3F00210021]

    块10:[000021002100210021002100210021]

    发送采样命令时、可能我可以获得4个采样数据。 但是、我认为保持一对一发送命令以获得100个数据效率很低。 是否有方法一次读取100个采样数据?

    很抱歉打扰你。 请帮帮我。

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

    您好、Minhyung、

    通过射频接口访问采样数据的唯一方法是通过"读取单个块"和"读取多个块"命令。 这将为"读取单个块"提供8个字节的数据、为"读取多个块"命令提供多达24个字节的数据。

    要读取所有采样数据、您必须发出多条命令。   没有实现一次性返回所有数据的命令。

    "读取多个块"命令的示例:

    010C00030418022309020000

    01
    0C -命令长度
    000304
    18 -发送 ISO 数据
    02 -标志
    23 -读取多个块
    09 -启动块
    02 -块数量(0 - 2)
    0000

    此致、

    Helfried