Changing The Target Chip

The cross compiler can be configured to suit different MSP430 models for Flash and Ram.

Some Chip Types

Note

Default configuration is for MSP430F2011 / MSP430F2012 / MSP430F2013

\ ----------------------------------------------------------------------------------------
\   Memory map of MSP430F2011 / MSP430F2012 / MSP430F2013
\ ----------------------------------------------------------------------------------------
\ $0000 - $000F  Special function registers, mostly for peripheral interrupt configuration
\ $0010 - $00FF  Byte peripheral registers
\ $0100 - $01FF  Word peripheral registers
\ $0200 - $027F  RAM, 128 Bytes
\ $1000 - $10FF  Info Flash, 256 Bytes, contains factory calibration values. Better do not touch.
\ $F800 - $FFFF  Flash, 2048 Bytes

\ ----------------------------------------------------------------------------------------
\   Memory map of MSP430G2513 / MSP430G2553
\ ----------------------------------------------------------------------------------------
\ $0000 - $000F  Special function registers, mostly for peripheral interrupt configuration
\ $0010 - $00FF  Byte peripheral registers
\ $0100 - $01FF  Word peripheral registers
\ $03FF - $027F  RAM, 512 Bytes
\ $1000 - $10FF  Info Flash, 256 Bytes, contains factory calibration values. Better do not touch.
\ $F800 - $FFFF  Flash, 2048 Bytes

\ ----------------------------------------------------------------------------------------
\   Memory map of MSP430G2412 / MSP430G2452 (the MSP-EXP430G2 Board comes with one)
\ ----------------------------------------------------------------------------------------
\ $0000 - $000F  Special function registers, mostly for peripheral interrupt configuration
\ $0010 - $00FF  Byte peripheral registers
\ $0100 - $01FF  Word peripheral registers
\ $0200 - $02FF  RAM, 256 Bytes
\ $1000 - $10FF  Info Flash, 256 Bytes, contains factory calibration values. Better do not touch.
\ $E000 - $FFFF  Flash, 8 KBytes

The memory map of the target chip is defined here

mecrisp-across-0.6-experimental/mecrisp-across-source/04a1 Target-Speicherkarte.txt

Definition Area

$0200 constant ramstart

   \ Space for Variables and Buffers

   $0240 constant stackarea
   $0260 constant initialdatastack
   $0280 constant initialreturnstack
$0280 constant ramend

$F800 constant flashstart

   \ Space for Forth Dictionary

   $FFE0 constant vectortable
$10000 constant flashend

Note

Both ramend and flashend memory size need to be specified as chip memory + 1

i.e. if your available chip Ram is 128 Bytes then ramend must be $0280

release

Target Configuration Example

For a MSP430G2452:

\ Vector table, 16 entries, at the end of flash from $FFE0 to $FFFF.
\ $FFFE contains the Reset vector.

$0200 constant ramstart

   \ Space for Variables and Buffers

   $0240 constant stackarea
   $0260 constant initialdatastack
   $0280 constant initialreturnstack

  \ MSP430G2452
 $0300 constant ramend

$E000 constant flashstart

   \ Space for Forth Dictionary

   $FFE0 constant vectortable
$10000 constant flashend


Recompiling Is Required After Changes

Warning

Recompiling Is Required After Changes

Previous topic

Compiler Magic: What Happens To Your Source Code ?

Next topic

Dictionary