使用GCC将闪存位置设置为MSP430上的特定值

时间:2016-09-02 11:45:16

标签: gcc msp430 mspgcc

在使用msp GCC工具链将mcu编程为某个值时,如何设置闪存编程器编程的 flash 的几个字节?例如,TI C / C ++编译器工具链,包括汇编程序,以下以下的汇编行将内存位置设置为所需的值:

;----------------------------------------------------------------------
 .sect ".BSLSIG"
 .retain
;----------------------------------------------------------------------
                 .word       0xFFFF         ; 0x17F0
BslProtectVecLoc .word       BSL_Protect    ; 0x17F2 adress of function
PBSLSigLoc       .word       03CA5h         ; 0x17F4 1st BSL signature
SBSLSigLoc       .word       0C35Ah         ; 0x17F6 2nd BSL signature
                 .word       0xFFFF         ; 0x17F8
BslEntryLoc      .word       BSL_Entry_JMP  ; 0x17FA BSL_Entry_JMP

有没有办法使用msp GCC工具链做类似的事情?

1 个答案:

答案 0 :(得分:1)

GNU汇编程序具有相同的机制。 例如,以下是MSP430 startup code如何将启动代码的地址放入重置向量:

        .section ".resetvec", "a"
__msp430_resetvec_hook:
        .word   __crt0_start

与TI编译器一样,这需要在linker script中定义部分(此处:.resetvec)。