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.

[参考译文] CC115L:驱动程序代码大小

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

https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/849206/cc115l-driver-code-size

器件型号:CC115L
主题中讨论的其他器件: MSP430FR2000

尊敬的所有人:

我们正在对 CC113、CC115、MSP430FR2000进行评估、现在我们发现 CC115L 的驱动程序代码大小太大、仅涉及 void cc115LRunTX (void)将占用0.8KB FRAM、我们是否可以将代码优化为0.5KB 并放入 MSP430FR2000中?

非常感谢。

 

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

    就我所看到的、您没有编写您想要运行的代码应该执行的操作。 需要什么功能?  

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

    该函数非常简单、仅 在 CC115L 达到订单时发送1字节数据、我们使用的代码如下:

    空 cc115LRunTX (空)

     //初始化大小为 PKTLEN + 1的数据包缓冲区

     uint8 txBuffer[PKTLEN+1]={0};

     

     //写入无线电寄存器

     registerConfig();

     

     //使用 PKTLEN + 2字节数据包计数器+ n x 随机字节创建随机数据包

     createPacket (txBuffer);

     

     //将数据包写入 TX FIFO

     cc11xLSpiWriteTxFifo (txBuffer、sizeof (txBuffer));

     

     //选通 TX 发送数据包

     TrxSpiCmdStrobe (CC115L_STX);

        }

    对此有任何建议吗?

    谢谢。

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

    我可能需要找一些 MSP430专家来回答这个问题、但我不确定是否可以在不进行需要大量机会的优化工作的情况下回答这个问题。

    但是、您是否检查过您在上面发布的函数有多少可用的代码空间? 我假设您必须运行一些 MCU 设置、包括在调用此函数之前设置 SPI。  

    一些问题/意见:

    -您似乎希望发送随机数据包。 我假设您可以在发送固定数据包时节省代码空间、因为这样您就可以保存函数调用(以及函数的空间)

    -我假设您必须重新编写函数。 示例代码中的 SPI 函数的编写重点是可读性、而不是大小。 总成的问题。  

    -您必须向 CC115L 写入多少个寄存器? 最少的可能寄存器将节省空间、如果您可以使用突发模式来实现、我相信您可以更紧凑。