Link error L1119

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Link error L1119

Jump to solution
2,197 Views
roberthiebert
Senior Contributor I

CW 5.9.0, MC9S12C64FAE. Coding in absolute assembler. When I try to make my code I get the link error L119: "Vector located at absolute address 0xFFFE overlaps with sections placed in segment .abs Seg4."

Here are the locations for my ISRs:

;*****************************************************************************************
; INTERRUPT VECTORS (address $FF00 to $FFFF)
;*****************************************************************************************

ORG $FFD6

DC.W Vsci ; SCI0 ISR Vector 20

ORG $FFE0

DC.W Vtimch7 ; TIM ch7 ISR Vector 15
DC.W Vtimch6 ; TIM ch6 ISR Vector 14
DC.W Vtimch5 ; TIM ch5 ISR Vector 13
DC.W Vtimch4 ; TIM ch4 ISR Vector 12
DC.W Vtimch3 ; TIM ch3 ISR Vector 11
DC.W Vtimch2 ; TIM ch2 ISR Vector 10
DC.W Vtimch1 ; TIM ch1 ISR Vector 09
DC.W Vtimch0 ; TIM ch0 ISR Vector 08
DC.W Vrti ; RTI ISR Vector 07

ORG $FFFA

DC.W Entry ; COP ISR Vector 02
DC.W Entry ; Clock Monitor ISR Vector 01
DC.W Entry ; External Reset ISR Vector 00

Where do I find this " .abs Seg4.", and how do I correct the error?

Regards,

Robert 

0 Kudos
Reply
1 Solution
2,108 Views
roberthiebert
Senior Contributor I

Hi Jenny,

I swear I'm getting dumber as I get older. I found my issue with the illegal break point. I was writing the code is small chunks to test it. The first part I wanted to test was the RTI interrupt routine. But, I didn't include a main loop.  I assume that when the program went through the ISR, instead of being able to just buzz around in a main loop waiting for another interrupt, it just stalled and displayed the illegal break point. Thanks for your help, I'm sure there will be more questions before I finish this program.

Regards,

Robert 

View solution in original post

0 Kudos
Reply
5 Replies
2,177 Views
ZhangJennie
NXP TechSupport
NXP TechSupport

Hi roberthiebert 

Please send us the demo project which can reproduce the issue. I will check it directly on my side.

Thanks,

Jun Zhang

0 Kudos
Reply
2,171 Views
roberthiebert
Senior Contributor I

Hi Jun Jennie,

Thanks for your reply. I made some modifications to my program and the error went away. I have no idea why. However, when I load the program into the controller and try to run it I get an illegal breakpoint error. I am not familiar with how the debugger works but perhaps you could tell me why I am getting this error.

Regards,

Robert

0 Kudos
Reply
2,151 Views
ZhangJennie
NXP TechSupport
NXP TechSupport

Hi roberthiebert,

There can be many reasons for “ILLEGAL_BP” error message. I didn't see your demo project so I can only provide you some general solutions. Please check them with your project.

  1.     unmapped interrupt vectors or non-serviced irq is enabled or incorrect ISR vector number is used. The illegal breakpoint error often happens when the MCU is getting lost and executes dummy code. If this happens whenever you enable your interrupt, check that the interrupt vector has been correctly initialized with the address of the interrupt service routine. If the interrupt vector is left blank (0xFFFF)  this could be the cause of the problem.
  2.     watchdogs: this might be a COP reset, check that  the watchog, if enabled, is being fed correctly. Also please check that the stack is not overflowing.
  3.     bad SW approach to RAM, e.g. some buffer overflows, STACK overflow…
  4.     code optimization by CW may cause the JMP to non-defined program memory address and PC lost way.

 

Hope this helps,

Jun Zhang

0 Kudos
Reply
2,140 Views
roberthiebert
Senior Contributor I

Hi Jenny,

I'm sorry, I thought I sent you a zip file of my project, so I'll try again.

When I run the program on te4h debugger I get an illegal break point message, but I don't know what's triggering it. If I step through teh program I don't get very far. When I get to line 62678it won't step any further. Does that give you a clue?

Regards,

Robert

0 Kudos
Reply
2,109 Views
roberthiebert
Senior Contributor I

Hi Jenny,

I swear I'm getting dumber as I get older. I found my issue with the illegal break point. I was writing the code is small chunks to test it. The first part I wanted to test was the RTI interrupt routine. But, I didn't include a main loop.  I assume that when the program went through the ISR, instead of being able to just buzz around in a main loop waiting for another interrupt, it just stalled and displayed the illegal break point. Thanks for your help, I'm sure there will be more questions before I finish this program.

Regards,

Robert 

0 Kudos
Reply