<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Adding Interrupt Vector problem. in S12 / MagniV Microcontrollers</title>
    <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Adding-Interrupt-Vector-problem/m-p/200684#M8105</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;Interrupt vector functions must be allocated non banked, say in the 16 bit addressable area.&lt;BR /&gt;Error message basically means that the linker would have to cut a 24 bit interrupt function handler address&lt;BR /&gt;into a 16 bit vector entry.&lt;BR /&gt;&lt;BR /&gt;So in order to allocate the handler non banked, add a&lt;BR /&gt;&lt;BR /&gt;#pragma push&lt;BR /&gt;#pragma CODE_SEG __NEAR_SEG NON_BANKED&lt;BR /&gt;&lt;BR /&gt;before the interrupt handler and a&lt;BR /&gt;&lt;BR /&gt;#pragma pop&lt;BR /&gt;&lt;BR /&gt;afterwards.&lt;BR /&gt;&lt;BR /&gt;Daniel&lt;BR /&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 10 Nov 2008 23:05:09 GMT</pubDate>
    <dc:creator>CompilerGuru</dc:creator>
    <dc:date>2008-11-10T23:05:09Z</dc:date>
    <item>
      <title>Adding Interrupt Vector problem.</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Adding-Interrupt-Vector-problem/m-p/200683#M8104</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hey guys,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I'm using 9S12X and I am trying to use the SPI interrupt at address 0xFFD8, I've tried using the instruction:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;VECTOR ADDRESS 0xFFD8 eeSPI_ISR&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;or&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;VECTOR 19 eeSPI_ISR&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;in the .PRM file but keep getting the error: "Initialization of Vector eeSPI_ISR failed because of over- underflow of vector value.". I'm not sure how to remedy this situation, any help would be appreciated, thanks.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;DIV&gt; &lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 10 Nov 2008 21:30:42 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Adding-Interrupt-Vector-problem/m-p/200683#M8104</guid>
      <dc:creator>Heppell</dc:creator>
      <dc:date>2008-11-10T21:30:42Z</dc:date>
    </item>
    <item>
      <title>Re: Adding Interrupt Vector problem.</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Adding-Interrupt-Vector-problem/m-p/200684#M8105</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;Interrupt vector functions must be allocated non banked, say in the 16 bit addressable area.&lt;BR /&gt;Error message basically means that the linker would have to cut a 24 bit interrupt function handler address&lt;BR /&gt;into a 16 bit vector entry.&lt;BR /&gt;&lt;BR /&gt;So in order to allocate the handler non banked, add a&lt;BR /&gt;&lt;BR /&gt;#pragma push&lt;BR /&gt;#pragma CODE_SEG __NEAR_SEG NON_BANKED&lt;BR /&gt;&lt;BR /&gt;before the interrupt handler and a&lt;BR /&gt;&lt;BR /&gt;#pragma pop&lt;BR /&gt;&lt;BR /&gt;afterwards.&lt;BR /&gt;&lt;BR /&gt;Daniel&lt;BR /&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 10 Nov 2008 23:05:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Adding-Interrupt-Vector-problem/m-p/200684#M8105</guid>
      <dc:creator>CompilerGuru</dc:creator>
      <dc:date>2008-11-10T23:05:09Z</dc:date>
    </item>
    <item>
      <title>Re: Adding Interrupt Vector problem.</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Adding-Interrupt-Vector-problem/m-p/200685#M8106</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;Hey Daniel,&lt;BR /&gt;Thanks for replying, taking your advice, generates the same error code:&lt;BR /&gt;&lt;BR /&gt;void interrupt eeSPI_ISR(void)&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp; #pragma push&lt;BR /&gt;&amp;nbsp;&amp;nbsp; #pragma CODE_SEG__NEAR_SEG NON_BANKED&lt;BR /&gt;&amp;nbsp;&amp;nbsp; eeStateMachine ();&lt;BR /&gt;&amp;nbsp;&amp;nbsp; #pragma pop&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;Link Error&amp;nbsp;&amp;nbsp; : L1108: Initializing of Vector eeSPI_ISR failed because of over- or underflow of vector value&lt;BR /&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 10 Nov 2008 23:51:34 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Adding-Interrupt-Vector-problem/m-p/200685#M8106</guid>
      <dc:creator>Heppell</dc:creator>
      <dc:date>2008-11-10T23:51:34Z</dc:date>
    </item>
    <item>
      <title>Re: Adding Interrupt Vector problem.</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Adding-Interrupt-Vector-problem/m-p/200686#M8107</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;I misunderstood your solution, I also have been trying to build a vector table instead of this shorter solution. Anyway, I did have some sizing issues which rung a bell, now implementing this code the size issue goes away. I will test this after lunch, hopefully it works out, Thanks &lt;IMG alt=":smileytongue:" class="emoticon emoticon-smileytongue" id="smileytongue" src="http://freescale.i.lithium.com/i/smilies/16x16_smiley-tongue.gif" title="Smiley Tongue" /&gt;&lt;BR /&gt;&lt;BR /&gt;#pragma CODE_SEG __NEAR_SEG NON_BANKED&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; /* these functions have to be allocated in the non banked area */&lt;BR /&gt;extern void _Startup();&lt;BR /&gt;extern void eeSPI_ISR();&lt;BR /&gt;static interrupt void dummit(void) {}&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;#pragma CODE_SEG DEFAULT&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 11 Nov 2008 00:17:20 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Adding-Interrupt-Vector-problem/m-p/200686#M8107</guid>
      <dc:creator>Heppell</dc:creator>
      <dc:date>2008-11-11T00:17:20Z</dc:date>
    </item>
  </channel>
</rss>

