Установите Flash Memory Location в определенные значения на MSP430, используя GCC

Как установить несколько байт флэш-памяти для программирования флэш-программистом во время программирования mcu на определенное значение с помощью цепочки инструментов msp GCC? Например, набор инструментов компилятора 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 toolchain?

1 ответ

Ассемблер GNU имеет те же механизмы. Например, вот как код запуска MSP430 помещает адрес кода запуска в вектор сброса:

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

Как и в случае с компилятором TI, для этого требуется раздел (здесь: .resetvec), который будет определен в скрипте компоновщика.

Другие вопросы по тегам