由于28035的CLA使用过程中RAM不够用了(L3),但是L1,L2使用不到一半,请问可以把L1与L2挪在0.5K,L3挪成5K吗。内存映射图中L2下面写的一行“CLA Data RAM 1”是不是说L2不能做“CLA Prog RAM”呢,非常感谢!!
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.
由于28035的CLA使用过程中RAM不够用了(L3),但是L1,L2使用不到一半,请问可以把L1与L2挪在0.5K,L3挪成5K吗。内存映射图中L2下面写的一行“CLA Data RAM 1”是不是说L2不能做“CLA Prog RAM”呢,非常感谢!!
用于做代码空间的内存只有4k,用于做数据的空间只有2k,您说的5k,没有可能。
在不移动代码的情况下,我自己总结的缩小代码空间的办法是:
1、开优化,一级一级开,找到占用内存最小的那一级。
2、在CLA中,尽量不要用long,除了有必要做移位运算的数据外,都用float,占用空间明显小一点
3、少用if逻辑,一些数学问题可以用函数解决,比如,可能您还不知道 __mminf32 这样的函数(反正我是很久以后才知道的),这是取最小值的函数,用这个函数绝对比用if比较节省很多空间,效率也高些。
欢迎大家继续补充