CC2538 z-stack编译优化问题
时间:10-02
整理:3721RD
点击:
使用CC2538+smartRF06+ Z-stack3.0原始demo,发现如下问题:设置断点时,有些地方设置不了如 :
bdb_requestTCStackVersion(),没办法在这个函数内部打断点。还有很多类似的地方。
其实类似的问题,在之前的HA +2538的组合也碰到。典型的:switch(a),不管a为何值,都跑到default去了(ps:每个case都有加break的)。
后来把编译优化设置为none或low时(默认high),以上问题解决。但是代码变得很大。
我不知道SDK在TI内部测试时,是否碰到以上问题,毕竟我用的是破解版的IAR(某宝购买)。
这个问题还是需要重视的,相信绝大多数公司用的是破解版的IAR;
如果取消编译优化,存储器又非常紧张。ZB3.0对存储器要求很高,TI方案就没有优势了。
一般都直接上512KB ROM的版本,不过TI的的确存储上是会有一些问题,像ESP8266那样外部扩展SPI FLASH理论上也是可行的。
bdb的东西基本上没什么用,就组网能用到,后面基本上没用。组网参考给的demo也就搞定了。具体断点进不了,有可能是预编译条件不满足,忽略掉了,另外IAR会出奇怪的问题,很正常。