微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > 协议栈中INT_HEAP_LEN应如何设置?

协议栈中INT_HEAP_LEN应如何设置?

时间:10-02 整理:3721RD 点击:

现在在zstack home 1.2.2a中默认的INT_HEAP_LEN设置在路由器和协调器中都是3072,占用了很多ram,我们现在需要1K左右的ram空间作为缓存,想改动一下INT_HEAP_LEN的大小,请问INT_HEAP_LEN有什么设置的规则吗?谢谢!

// Internal (MCU) heap size

#if !defined( INT_HEAP_LEN )

#if defined( ZDO_COORDINATOR )

#define INT_HEAP_LEN 4096

#elif defined( RTR_NWK )

#define INT_HEAP_LEN 3072

#else

#define INT_HEAP_LEN 1664

#endif

#endif

// Memory Allocation Heap

#define MAXMEMHEAP INT_HEAP_LEN // Typically, 0.70-1.50K

Viki Shi :

我看到zstack home 1.2.2a中默认定义如下

/* The following Heap sizes are setup for typical TI sample applications,  * and should be adjusted to your systems requirements.  */

#if !defined INT_HEAP_LEN

#if defined RTR_NWK  

#define INT_HEAP_LEN  3072

#else 

 #define INT_HEAP_LEN  2048

#endif 

 #endif

用这个默认的定义,路由器和协调器中的Ram都会被被占用3072字节,如果按照您设置的,协调器占用4096,路由器占用3072字节,我使用的是CC2530,协调器剩余的Ram空间更少了,这样就没法设计自己的应用了,即使网络再稳定也没有意义了,希望能给提供一个好的解决方法,谢谢!

INT_HEAP_LEN可以改小的,前提是你得知道哪些功能不用,这部分不用功能的占用空间可以划出去

考虑一下使用CC2538做协调器。

前提是你得知道哪些功能不用  ?

我应用程序上的基本都去除了,但是还是不够!

如果我将INT_HEAP_LEN 改小,那么对于 实际的router 性能上是那部分降低了呢?

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top