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.

[参考译文] CC1101:代码中的 CC1101数据包长度迭代

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

https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/943711/cc1101-cc1101-packet-length-iterations-in-the-code

器件型号:CC1101

你(们)好

我只是想通过源代码直观地显示 TX/RX 数据包的过程、我已经检查了许多可用代码、并且有一些东西

我很难理解、在 TX 和 RX 的某些阶段、用于环路迭代的用途是什么、如下例所示;

for (uint8_t i = 0;i < pktlen + 1;i++)
UART_puthex_BYTE (rxbuffer[i]);
serial.print ("|");
uart_puthex_Byte (rxbuffer[pktlen+1]);

uart_puthex_Byte (rxbuffer[pktlen+2]);

serial.print (F ("RX_FIFO:"));

并且、

writeSPI (0xFF);//猝发读取地址


MOSIOUT &=~MOSI;  


for (i=1;i<(len+1);i++)

data[i]= readSPI ();



此致

穆斯塔法

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

    你好,Mustafa

    如果不知道您所引用的代码、就无法回答您的问题。 如果您对 TI 为 CC1101器件提供的任何示例代码有疑问、请告诉我您所引用的代码示例(以及哪些文件和函数)、我将解释代码的作用。

    如果我想、您会看到使用标准数据包格式和 CC1101建议设置的示例。

    当您在 RX FIFO 中接收到数据包时、FIFO 中的第一个字节将是长度字节(在您显示的代码中称为 pktlen 或 len)。 此长度字节后跟 len 或 pktlen 有效负载字节、之后将有2个状态字节:

    例如:

    pktlen = 5

    有效载荷= AA、BB、CC、DD、EE

    状态字节:0xxx、0xxx

    在 FIFO 中、您将具有:0x05、0xAA、0xBB;0xCC、0xDD、 0xEE、0xxx、0xxx

    长度字节位于 rxbuffer[0]中、有效载荷位于 rxbuffer[1]- rxbuffer[pktlen]中、而状态字节位于 rxbuffer[pktlen + 1]和 rxbuffer[pktlen + 2]中

    Siri

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

    你(们)好、Siri

    我的问题不是关于特定代码、而是关于为什么数据包长度应该在 任何代码中以一定数量的时间递增+1。

    此致

    穆斯塔法

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

    在您所引用的任何代码示例中、数据包长度不会递增。 变量"i"是递增的值(i++)

    在这两种情况下、数据包长度用于确定数据包存储在缓冲区中的哪个索引:

    示例1:rxbuffer []={5、10、20、30、40、 50、status1、staus0}

    长度在索引0处为5 (pktlen = 5)

    然后、您知道数据包中的最后一个字节将位于 rxbuffer[5]中、而状态字节将位于 rxbuffer[6]和 rxbuffer[7]。

    只有长度字节= 5时才会出现此情况,但始终为真的是数据包的最后一个字节位于 rxbuffer[pktlen],而状态字节将位于 rxbuffer[pktlen+1]和 rxbuffer[pktlen+2]。

    Siri

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

    你(们)好、Siri

    也许我的问题对你来说不够清楚、但你猜到了、你的回答中包含了我之前得到的准确的完整答案、非常感谢。

    此致

    穆斯塔法