Please note: We are aware of an issue affecting replies on the Arm Community forums, which may not be loading as expected.

We apologize for any inconvenience and appreciate your patience while we investigate and work to resolve the issue.

Thank you for your understanding.


This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

improper fixup error

hi i got the following error while trying to link
there is no compilation error
the source code is


void timer0(void) interrupt 1
{
          TR0=0;//stop timer
          if(loadstatus==1 && onehour==0)
             //if motor is running and one hour has not gone increment the timer
          {
                  if(count<20)         //
                  count++;
                  else
                  {
                                count=0;
                                if(sec<59)
                                        sec+=1;
                                else
                                {
                                        sec=0;
                                        if(min<59)
                                                min+=1;
                                        else
                                                min=0;
                                }
                        }
                }
                else
                {
                        if(counterstate==1)
                        {
                                if(count>0)
                                        count--;
                                else
                                {
                                        count=19;
                                        if(sec>0)
                                                sec--;
                                        else
                                        {
                                                sec=59;
                                                if(min>0)
                                                min--;
                                        }
                                }
                        }

                }
        TH0=0x4B;//value loaded to timer is for 1/20 sec delay
        TL0=0xFD;
        TR0=1;//start timer
}

the error generated is


*** ERROR L121: IMPROPER FIXUP
    MODULE:  charge.obj (CHARGE)
    SEGMENT: ABSOLUTE
    OFFSET:  000BH

plz help me and give me solution soon

Parents
  • the file name of the code is charge.c and the keil project name is also charge.
    
    the code i have posted is related to the error. i saw
     the list file created after compilation of the source code.
    
    no, i have used two interrupts, interrupt 1 and
    interrupt 3, both defined in the similar way, interrupt
     1 named timer0 and interrupt 3 named timer1. do the
     use of two interrupts make differences in the
     compilation?
    
    there are two linking errors one for each interrupt
     subroutine. i have posted the error and the source
    code for only one error. i thought fixing the one will
     give me the way to fix the other
    

Reply
  • the file name of the code is charge.c and the keil project name is also charge.
    
    the code i have posted is related to the error. i saw
     the list file created after compilation of the source code.
    
    no, i have used two interrupts, interrupt 1 and
    interrupt 3, both defined in the similar way, interrupt
     1 named timer0 and interrupt 3 named timer1. do the
     use of two interrupts make differences in the
     compilation?
    
    there are two linking errors one for each interrupt
     subroutine. i have posted the error and the source
    code for only one error. i thought fixing the one will
     give me the way to fix the other
    

Children