EmbeddedRelated.com
Forums

Error[e16]:

Started by wevosie May 20, 2006
I took a simple assembler code from TI home page and got the following 
message (LED flashing with ez430). 
The C-version of this LED flasher works correctly. 
Does anybody know about this?

Thanks

Error[e16]: Segment RESET (size: 0x2 align: 0x1) is too long for 
segment definition. At least 0x2 more bytes needed. The problem 
occurred while  processing the segment placement command "-Z(CONST)
RESETFE-FFFF", where at the moment of placement the available memory 
ranges were  "-none-"   

Reserved ranges relevant to this placement:   
fffe-ffff            Absolute code from msp430x2xx_fet_1









Beginning Microcontrollers with the MSP430

wevosie wrote:
> Reserved ranges relevant to this placement:   
> fffe-ffff            Absolute code from msp430x2xx_fet_1

I believe this means that you have the reset vector
defined twice.

--- In msp430@msp4..., Clifford Heath <cjh@...> wrote:
>
> wevosie wrote:
> > Reserved ranges relevant to this placement:   
> > fffe-ffff            Absolute code from msp430x2xx_fet_1
> 
> I believe this means that you have the reset vector
> defined twice.
>
Thanks a lot. 
i see only only definition. May it be inside an include file? See 
code below. 

#include "msp430x20x1.h"
;---------------------------------
----------
            ORG     0FC00h                  ; Progam Start (1K Flash 
device)
;---------------------------------
----------
RESET       mov.w   #0280h,SP               ; Set stackpointer (128B 
RAM device)
StopWDT     mov.w   #WDTPW+WDTHOLD,&WDTCTL  ; Stop watchdog timer
SetupP1     bis.b   #001h,&P1DIR            ; Set P1.0 to output 
direction
                                            ;
Mainloop    xor.b   #001h,&P1OUT            ; Toggle P1.0
Wait        mov.w   #050000,R15             ; Delay to R15
L1          dec.w   R15                     ; Decrement R15
            jnz     L1                      ; Delay over?
            jmp     Mainloop                ; Again
                                            ;
;---------------------------------
----------
;           Interrupt Vectors
;---------------------------------
----------
            ORG     0FFFEh                  ; MSP430 RESET Vector
            DW      RESET                   ;
            END





Hi!

> i see only only definition. May it be inside an
include file? See 
> code below. 

>             ORG     0FFFEh                  ;
MSP430 RESET Vector
>             DW      RESET                   ;
>             END

The other definition is part of the C startup code. If you don't want it 
then you have to specicy this in Options->Linker->Config->Override 
Program entry. Note that if you do this you are responsible for 
initializing normal things lika global C variables, the stack pointer etc.

     -- Anders Lindgren, IAR Systems
-- 
Disclaimer: Opinions expressed in this posting are strictly my own and
not necessarily those of my employer.