主题中讨论的其他部件:MSPMATHLIB
工具/软件:Code Composer Studio
您好,
我们有一个使用6.5 KB 的8 KB MSP430,需要从数学中添加POW过程 当我们添加它时,闪存的使用从6.5 KB 跳到10 KB =对我们的小型MSP430没有好处。 有什么建议?
真的无法理解添加单个POW请求如何添加3.5 KB ?
谢谢!
保罗
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.
工具/软件:Code Composer Studio
您好,
我们有一个使用6.5 KB 的8 KB MSP430,需要从数学中添加POW过程 当我们添加它时,闪存的使用从6.5 KB 跳到10 KB =对我们的小型MSP430没有好处。 有什么建议?
真的无法理解添加单个POW请求如何添加3.5 KB ?
谢谢!
保罗
您好,Paul:
为您提供两个建议
1.自己写pow函数(不难实现)
2.优化代码大小
对此的一些建议
用于CCS
(1)将小内存模型用于代码@数据,如下所示
(2)如有可能,不要使用全局变量。 (或者使用非常少量的全局变量,并且没有预初始化。 在main中初始化它们。
)
(3)在一个小项目中,你没有足够的变量让看门狗在main之前超时,这是一个令人关注的问题。
项目>属性> MSP430连接器>基本选项,将“电影自动初始化期间保持看门狗计时器”设置为“关闭”
(4)使用#pragma NOINIT将所有全局设置为NO-INIT,或使用CCS设置禁用零初始化(Project > Properties > MSP430 Linker > Advanced Options > Miscellaneous,将“Zero initialize ELF uninitialized sections”设置为“Off”)
适用于IAR
(1)将代码大小的优化设置为高级。 Project (项目)> Options (选项)> C/C++ Compiler (C/C++编译器)> Optimizations (优化)
(2)将代码和数据模型设置为与CCS相同的小内存模型
(3)如有可能,不要使用全局变量。 (或者使用非常少量的全局变量,并且没有预初始化。 在main中初始化它们。
)
(4)在所有全局变量前加上__NO_INIT关键字,例如__NO_INIT unsigned char RXData; 。
您好,Gary:
它适用于伽马校正程序/方法,因此我们可以使用0.5 增量,通过执行平方根使编码更简单。 本来应该更精确一些,理想的0.1 步数,但这是个突破!
设法从此处获取代码: stackoverflow.com/.../computing-fractional-exponents-in-c
并对其进行了一点攻击,以完成工作。 这次只使用了300泰铢,非常棒。
感谢你的帮助。