zstack 3.0 ROM/RAM 裁剪
zstack3.0的协议栈编译出来很大,路由的基本上230多k,
RAM也用的很多,基本上没有给自主开发应用留多少可用空间,
2530片上资源本来就紧张,裁剪应该是可行的,有裁剪相关说明吗?去掉部分code,调整系统堆栈大小等的说明文档,这些乱动怕完成系统潜在风险。
另外2538芯片上资源应该多出不少 ,但是ram也被用的差不多了,32k的ram为何我编译时候不能超过16k呢?另外16k是如何用的?有没有相关说明
再次感谢
关键要看你做什么产品,如果你要做一个标准的ZigBee 3.0产品,那其实需要你们自己添加的东西不多了,我们提供已经是一个比较完整的产品例程了,比方说Sensor,Doorlock之类的。
如果你们的产品不需要符合3.0的标准的,那么我还是建议你们用Z-Stack Home 1.2.2a
是想符合3.0,但是也想加一些私有的业务,不跑在zcl上的,需要一些空间,所以想从系统中得到一些ram
2538的32k RAM,分两个16k,但是编译时候ram使用超过16k会连接失败,那另外16kram的使用是在哪儿有说明吗?谢谢。
谢谢VV
协议栈默认CC2538的例程使用的是16K RAM。如果需要使用32K RAM的话,需要改下链接文件。
在CC2538.icf文件
//
// Define a region for the on-chip SRAM.
//
define region SRAM = mem:[from 0x20000000 to 0x20007FFF];
谢谢VV.
请问另外16k的ram目前是用来做什么了 ?还是就闲置在那里?
例程么有用另外的16k ram是否是对另外的16K RAM有规划,我这样改了连接文件去用,对其他东西是否会有影响。
zstack3.0 在cc2530上运行显得更是资源紧缺,连flash都占到了两百多K(协调器和路由), 对这些代码的裁剪可否在哪儿能找到说明?
谢谢。
另外16KB在CC2538进入休眠时会掉电,所有程序默认屏蔽掉
非常感谢你的热心答疑。 若不使能休眠另外16K和正常RAM同样对的哈?另外,如果使用且使能了休眠,我如何确定休眠后哪些数据是丢了?这个有哪儿介绍不?
请问VV,z-stack3.0能裁剪吗?IAR编译器如果None不优化代码的话根本编译不通过。我想裁剪掉一些不用的代码。
分析一下Zmain过程,把没有使用的部分都#if 0注释掉,协议栈给的实例代码塞了一堆用不着的东西,耦合性超强