工具与软件:
您好!
我正在使用 MSP430FR2433、
我的应用程序大小较小、但 Code Composer Studio 生成的 bin 文件大小始终都是15KB 的大容量。
如何生成实际的 bin 文件或减小 bin 文件的大小?
谢谢、此致、
Sumit Chaulya。
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.
工具与软件:
您好!
我正在使用 MSP430FR2433、
我的应用程序大小较小、但 Code Composer Studio 生成的 bin 文件大小始终都是15KB 的大容量。
如何生成实际的 bin 文件或减小 bin 文件的大小?
谢谢、此致、
Sumit Chaulya。
尊敬的 David:
我试过试过、但二进制文件大小仍然是15KB。
它生成了整个15KB 的 bin 文件。
MSP430FR2433 MCU 具有15KB 的程序存储器。
请向我建议我应在何处更改或更新。
程序存储器之外的 ISR 地址和复位矢量、如数据表和链接器文件所示。
我将使用此命令生成二进制文件。
"${CCE_INSTALL_ROOT}/utils/tiobj2bin/tiobj2bin "${BuildArtifactFileName}""${BuildArtifactFileBaseName}.bin""${CG_TOOL_ROOT}/bin/ofd430 "${CG_TOOL_ROOT}/bin/hex430 "${CCE_INSTALL_ROOT}/utils/tiobj2bin/mkhex4bin
我收费的 FRAM 长度也是5KB。
//***** CMD 文件
小程序
{
sfr:origin = 0x0000、length = 0x0010
peripherals_8bit:origin = 0x0010、length = 0x00F0
peripherals_16BIT:origin = 0x0100、length = 0x0100
RAM:origin = 0x2000、length = 0x1000
INFOA:origin = 0x1800、length = 0x0200
FRAM:origin = 0xC400、length = 0x1400
JTAGSIGNATURE:origin = 0xFF80、length = 0x0004、fill = 0xFFFF
BSLSIGNATURE:origin = 0xFF84、length = 0x0004、fill = 0xFFFF
int00:origin = 0xFF88、length = 0x0002
int01:origin = 0xFF8A、length = 0x0002
INT02:origin = 0xFF8C、length = 0x0002
INT03:origin = 0xFF8E、length = 0x0002
int04:origin = 0xFF90、length = 0x0002
INT05:origin = 0xFF92、length = 0x0002
INT06:origin = 0xFF94、length = 0x0002
INT07:origin = 0xFF96、length = 0x0002
int08:origin = 0xFF98、length = 0x0002
INT09:origin = 0xFF9A、length = 0x0002
int10:origin = 0xFF9C、length = 0x0002
int11:origin = 0xFF9E、length = 0x0002
int12:origin = 0xFFA0、length = 0x0002
int13:origin = 0xFFA2、length = 0x0002
int14:origin = 0xFFA4、length = 0x0002
INT15:origin = 0xFFA6、length = 0x0002
int16:origin = 0xFFA8、length = 0x0002
INT17:origin = 0xFAA、length = 0x0002
int18:origin = 0xFFAC、length = 0x0002
INT19:origin = 0xFFAE、length = 0x0002
int20:origin = 0xFFB0、length = 0x0002
int21:origin = 0xFFB2、length = 0x0002
int22:origin = 0xFFB4、length = 0x0002
int23:origin = 0xFFB6、length = 0x0002
int24:origin = 0xFFB8、length = 0x0002
int25:origin = 0xFFBA、length = 0x0002
int26:origin = 0xFFBC、length = 0x0002
int27:origin = 0xFFBE、length = 0x0002
int28:origin = 0xFFC0、length = 0x0002
int29:origin = 0xFFC2、length = 0x0002
int30:origin = 0xFFC4、length = 0x0002
INT31:origin = 0xFFC6、length = 0x0002
int32:origin = 0xFFC8、length = 0x0002
int33:origin = 0xFFCA、length = 0x0002
INT34:origin = 0xFFCC、length = 0x0002
int35:origin = 0xFFCE、length = 0x0002
int36:origin = 0xFFD0、length = 0x0002
int37:origin = 0xFFD2、length = 0x0002
INT38:origin = 0xFFD4、length = 0x0002
INT39:origin = 0xFFD6、length = 0x0002
INT40:origin = 0xFFD8、length = 0x0002
INT41:origin = 0xFFDA、length = 0x0002
int42:origin = 0xFFDC、length = 0x0002
INT43:origin = 0xFFDE、length = 0x0002
INT44:origin = 0xFFE0、length = 0x0002
int45:origin = 0xFFE2、length = 0x0002
int46:origin = 0xFFE4、length = 0x0002
int47:origin = 0xFFE6、length = 0x0002
int48:origin = 0xFFE8、length = 0x0002
int49:origin = 0xFFEA、length = 0x0002
int50:origin = 0xFFEC、length = 0x0002
int51:origin = 0xFFEE、length = 0x0002
INT52:origin = 0xFFF0、length = 0x0002
INT53:origin = 0xFFF2、length = 0x0002
int54:origin = 0xFFF4、length = 0x0002
int55:origin = 0xFFF6、length = 0x0002
int56:origin = 0xFFF8、length = 0x0002
int57:origin = 0xFFFA、length = 0x0002
INT58:origin = 0xFFFC、length = 0x0002
复位:origin = 0xFFFE、length = 0x0002
}
*/./............. /
/*指定段分配到内存中*/
*/./............. /
部分中)
{
组(ALL_FRAM)
{
组(READ_WRITE_MEMORY)
{
.TI.persistent:{}/*对于#pragma persistent *
}
组(只读_存储器)
{
.cinit :{}/*初始化表*/
.pinit :{}/* C++构造函数表*/
.binit :{}/*启动时初始化表*/
init_array :{}/* C++构造函数表*/
.mspabi.exidx :{}/* C++构造函数表*/
.mspabi.extab :{}/* C++构造函数表*/
.const :{}/*常量数据*/
}
组(可执行内存)
{
.text :{}/*代码*/
}
}> FRAM
#ifdef __TI_Compiler_version__
#if __TI_Compiler_version__>= 15009000
#ifndef __large_code_model__
.TI.ramfunc:{}load=FRAM、run=RAM、table (BINIT)
#else
.TI.ramfunc:{}load=FRAM | FRAM2、run=RAM、table (BINIT)
#endif
#endif
#endif
.jtagsignature :{}> JTAGSIGNATURE /* JTAG 签名*/
bslsignature :{}> BSLSIGNATURE /* BSL Signature */
.bss :{}> RAM /*全局和静态变量*/
.data :{}> RAM /*全局和静态变量*/
.TI.noinit :{}> RAM /*对于#pragma noinit */
.cio :{}> RAM /* C I/O buffer */
.sysmem :{}> RAM /*动态内存分配区*/
.stack:{}> RAM (HIGH)/*软件系统堆栈*/
.infoA (NOLoad):{}> INFOA /* MSP430 info FRAM Memory Segments */
/* MSP430中断矢量*/
.int00 :{}> int00
.int01:{}>int01.
.int02 :{}> int02.
.int03 :{}> int03
.int04 :{}> int04.
.int05:{}>int05.
.int06 :{}> int06.
.int07 :{}> int07.
.int08 :{}> int08
.int09:{}> INT09
.int10 :{}> int10.
.int11 :{}> int11.
.int12:{}>int12.
.int13 :{}> int13.
.int14 :{}> int14.
.int15 :{}> int15.
.int16 :{}> int16.
.int17 :{}> int17.
.int18 :{}> int18.
.int19 :{}> int19.
.int20 :{}> int20.
.int21 :{}> int21.
.int22 :{}> int22.
.int23 :{}> int23.
.int24 :{}> int24.
.int25 :{}> int25.
.int26 :{}> int26.
.int27 :{}> int27.
.int28 :{}> int28.
.int29 :{}> int29.
.int30 :{}> int30.
.int31:{}> int31.
.int32 :{}> int32.
.int33 :{}> int33.
.int34 :{}> int34.
.int35 :{}> int35.
.int36 :{}> int36.
.int37 :{}> int37.
.int38 :{}> int38.
.int39 :{}> int39
.int40 :{}> int40.
port2 :{*(.int41 )}> int41 type = VECT_INIT
Port1 :{*(.int42 )}> int42 type = VECT_INIT
ADC :{*(.int43 )}> INT43 type = VECT_INIT
USCI_B0:{*(.int44 )}> INT44 TYPE = VECT_INIT
USCI_A1:{*(.int45 )}> INT45 type = VECT_INIT
USCI_A0:{*(.int46 )}> INT46 TYPE = VECT_INIT
WDT :{*(.int47 )}> INT47 TYPE = VECT_INIT
RTC :{*(.int48 )}> INT48 type = VECT_INIT
TIMER3_A1 :{*(.int49 )}> INT49 type = VECT_INIT
TIMER3_A0 :{*(.int50 )}> int50 type = VECT_INIT
TIMER2_A1 :{*(.int51 )}> INT51 type = VECT_INIT
TIMER2_A0:{*(.int52 )}> int52 type = VECT_INIT
Timer1_A1:{*(.int53 )}> INT53 TYPE = VECT_INIT
Timer1_A0:{*(.int54 )}> int54 type = VECT_init
TIMER0_A1:{*(.int55 )}> int55 type = VECT_INIT
TIMER0_A0:{*(.int56 )}> int56 type = VECT_INIT
UNMI :{*(.int57 )}> INT57 TYPE = VECT_INIT
SYSNMI :{*(.int58 )}> INT58 TYPE = VECT_INIT
.reset:{}> RESET /* MSP430复位向量*/
}
*/./............. /
/*包含外设内存映射*/
*/./............. /
-l msp430fr2433.cmd
我不想更改起始地址。 那么如何减小纸槽尺寸?[/QUOT]您不能使用.bin 等平面文件格式
尊敬的 David:
我将使用此命令来生成.out 文件到 bin 文件。
"${CCE_INSTALL_ROOT}/utils/tiobj2bin/tiobj2bin "${BuildArtifactFileName}" "${BuildArtifactFileBaseName}.bin""${CG_TOOL_ROOT }/bin/ofd430 "${CG_TOOL_ROOT}/bin/hex430 "${CCE_INSTALL_ROOT}/utils/tiobj2bin/mkhex4bin
实际代码大小为674字节。
我们使用此 cmd 来检查文件大小。
/opt/ti/ccs1250/ccs/tools/compiler/ti-cgt-armllvm_3.2.0.LTS/bin/tiarmobjcopy -O 二进制-仅-段.text writeFlash_2.out writeFlash_2.bin
它提供604字节的.text 文件。
如何从.out 文件生成.bin 文件?
是否有任何进程可用于将.out 文件生成到.bin 文件、包括.text、.bss 和.data 段?