<?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>S12 / MagniV MicrocontrollersのトピックRe: Vector relocating problem with S12XDT256</title>
    <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Vector-relocating-problem-with-S12XDT256/m-p/182552#M6721</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks &lt;IMG alt=":smileyhappy:" class="emoticon emoticon-smileyhappy" id="smileyhappy" src="http://freescale.i.lithium.com/i/smilies/16x16_smiley-happy.gif" title="Smiley Happy" /&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 10 Feb 2011 22:41:07 GMT</pubDate>
    <dc:creator>mummel</dc:creator>
    <dc:date>2011-02-10T22:41:07Z</dc:date>
    <item>
      <title>Vector relocating problem with S12XDT256</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Vector-relocating-problem-with-S12XDT256/m-p/182550#M6719</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have a problem with the relocation of &amp;nbsp;vector table with s12xdt. I have introduced a bootloader to a existing code and then I wanted to relocate my innterrupt vectors to be able to change these with the bootloader.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This is what I have done:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;IVBR = 0xEE &amp;nbsp; =&amp;gt; Vectors is starting at 0xFFAE00'L&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;#pragma CONST_SEG __NEAR_SEG ISR_VECTORS&lt;/DIV&gt;&lt;DIV&gt;/* function pointers to interrupt service routines */&lt;/DIV&gt;&lt;DIV&gt;const _PFunc isrVector[] =&lt;/DIV&gt;&lt;DIV&gt;{&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;unusedIsr, &amp;nbsp; /*119 Vsi &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; */&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;unusedIsr, &amp;nbsp; /*118 Reserved119 &amp;nbsp; &amp;nbsp; &amp;nbsp; */&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;unusedIsr, &amp;nbsp; /*117 Reserved118 &amp;nbsp; &amp;nbsp; &amp;nbsp; */&lt;/SPAN&gt;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;......&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="line-height: 15px;"&gt;&amp;nbsp;&amp;nbsp;timer0Isr, &amp;nbsp; /*8 &amp;nbsp; Vtimch0 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="line-height: 15px;"&gt;&amp;nbsp;&amp;nbsp;unusedIsr, &amp;nbsp; /*7 &amp;nbsp; Vrti &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;*/&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="line-height: 15px;"&gt;&amp;nbsp;&amp;nbsp;isrIrq, &amp;nbsp; &amp;nbsp; &amp;nbsp;/*6 &amp;nbsp; Virq &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;*/&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="line-height: 15px;"&gt;&amp;nbsp;&amp;nbsp;isrXIrq, &amp;nbsp; &amp;nbsp; /*5 &amp;nbsp; Vxirq &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="line-height: 15px;"&gt;&amp;nbsp;&amp;nbsp;unusedIsr, &amp;nbsp; /*4 &amp;nbsp; Vswi &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;*/&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="line-height: 15px;"&gt;&amp;nbsp;&amp;nbsp;unusedIsr, &amp;nbsp; /*3 &amp;nbsp; Vtrap &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="line-height: 15px;"&gt;&amp;nbsp;&amp;nbsp;unusedIsr, &amp;nbsp; /*2 &amp;nbsp; Vcop &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;*/&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="line-height: 15px;"&gt;&amp;nbsp;&amp;nbsp;unusedIsr &amp;nbsp; &amp;nbsp;/*1 &amp;nbsp; Vclkmon &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;};&lt;/P&gt;&lt;DIV&gt;in prm. file following is added:&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt;VECTORS &amp;nbsp; &amp;nbsp; &amp;nbsp; = READ_ONLY &amp;nbsp; &amp;nbsp; 0xEE00 TO &amp;nbsp; 0xEFFF; // see Vectors.c&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;ISR_VECTORS INTO VECTORS;&lt;/DIV&gt;&lt;DIV&gt;ENTRIES&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="white-space: pre;"&gt;&amp;nbsp;&lt;/SPAN&gt;isrVector;&lt;/DIV&gt;&lt;DIV&gt;END&lt;/DIV&gt;&lt;DIV&gt;This code generates following s19:&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt;S224FFAE004838004838004838004838004838004838004838004838004838004838004838AE&lt;/DIV&gt;&lt;DIV&gt;S224FFAE200048380048380048380048380048380048380048380048380048380048380048C6&lt;/DIV&gt;&lt;DIV&gt;S224FFAE403800483800483800483800483800483800483800483800483800483800483800B6&lt;/DIV&gt;&lt;DIV&gt;S224FFAE6048380048380048380048380048380048380048380048380048380048380048384E&lt;/DIV&gt;&lt;DIV&gt;S224FFAE80004838004838004838004838004838004838004838004838004838004838004866&lt;/DIV&gt;&lt;DIV&gt;S224FFAEA0380048380048380048380048380048380048380048380048380048380048380056&lt;/DIV&gt;&lt;DIV&gt;S224FFAEC04838004838004838004838004838004838004838004838004838004838004838EE&lt;/DIV&gt;&lt;DIV&gt;S224FFAEE000483800483800483800483800483800474B00477C0047970047980048380048F4&lt;/DIV&gt;&lt;DIV&gt;S224FFAF003800483800483800483800483800483800483800483800483800483800483800F5&lt;/DIV&gt;&lt;DIV&gt;S224FFAF20483800483800483800483800483800483800483800483800483000482700480AD4&lt;/DIV&gt;&lt;DIV&gt;S224FFAF400047F00047D40047C00047A40047990048380048470048480048380048380048E2&lt;/DIV&gt;&lt;DIV&gt;S209FFAF60380048380030&lt;/DIV&gt;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;For some reason the compiler adds 0x00 between the addresses? but not on the first one?&lt;/P&gt;&lt;P&gt;Were are they coming from? I have checked the addresses that are written and they are ok, but when executing the code as soon as Enable Interrupts is set mcu escapes to 0x3800...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Have someone solved this problem or been in contact with this??? Am I doing something wrong???&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Best regards&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Micke&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 10 Feb 2011 22:06:19 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Vector-relocating-problem-with-S12XDT256/m-p/182550#M6719</guid>
      <dc:creator>mummel</dc:creator>
      <dc:date>2011-02-10T22:06:19Z</dc:date>
    </item>
    <item>
      <title>Re: Vector relocating problem with S12XDT256</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Vector-relocating-problem-with-S12XDT256/m-p/182551#M6720</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;All interrupt function are supposed to be allocated in NON_BANKED memory.&amp;nbsp;&lt;/P&gt;&lt;P&gt;So you need to define your vector table as an array of near function pointers.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;typedef void (*near _PFunc)(void);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;CrasyCat&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 10 Feb 2011 22:36:33 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Vector-relocating-problem-with-S12XDT256/m-p/182551#M6720</guid>
      <dc:creator>CrasyCat</dc:creator>
      <dc:date>2011-02-10T22:36:33Z</dc:date>
    </item>
    <item>
      <title>Re: Vector relocating problem with S12XDT256</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Vector-relocating-problem-with-S12XDT256/m-p/182552#M6721</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks &lt;IMG alt=":smileyhappy:" class="emoticon emoticon-smileyhappy" id="smileyhappy" src="http://freescale.i.lithium.com/i/smilies/16x16_smiley-happy.gif" title="Smiley Happy" /&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 10 Feb 2011 22:41:07 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Vector-relocating-problem-with-S12XDT256/m-p/182552#M6721</guid>
      <dc:creator>mummel</dc:creator>
      <dc:date>2011-02-10T22:41:07Z</dc:date>
    </item>
  </channel>
</rss>

