<?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: Spurious interrupts?</title>
    <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Spurious-interrupts/m-p/133207#M1841</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;P&gt;It's there to handle situations where the interrupt source is lost before the vector is handled. See page 791 in the manual for a description. (An example of how this can occur is also given in the PIT section page 697).&lt;/P&gt;&lt;P&gt;It has the highest priority and is always handled by the CPU so you must always assign a vector and interrupt service routine to it. The situation is typically very rare and how you handle it depends on how deterministic your system needs to be. If you find this interrupt occurring often then you probably have some systematic defect somewhere. If you are unable to tolerate any lost interrupts then you may need to reset. Alternatively, you may wish to keep a record of these events for diagnostic analysis.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 21 Apr 2006 15:30:26 GMT</pubDate>
    <dc:creator>Steve</dc:creator>
    <dc:date>2006-04-21T15:30:26Z</dc:date>
    <item>
      <title>Spurious interrupts?</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Spurious-interrupts/m-p/133206#M1840</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;The S12X can jump to a 'spurious' interrupt routine. What is this good for? Is this something like an exception handler when errors occur? Should I always have code for that vector e.g. to reset the system?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks in advance,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;pittbull&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 21 Apr 2006 14:48:35 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Spurious-interrupts/m-p/133206#M1840</guid>
      <dc:creator>pittbull</dc:creator>
      <dc:date>2006-04-21T14:48:35Z</dc:date>
    </item>
    <item>
      <title>Re: Spurious interrupts?</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Spurious-interrupts/m-p/133207#M1841</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;P&gt;It's there to handle situations where the interrupt source is lost before the vector is handled. See page 791 in the manual for a description. (An example of how this can occur is also given in the PIT section page 697).&lt;/P&gt;&lt;P&gt;It has the highest priority and is always handled by the CPU so you must always assign a vector and interrupt service routine to it. The situation is typically very rare and how you handle it depends on how deterministic your system needs to be. If you find this interrupt occurring often then you probably have some systematic defect somewhere. If you are unable to tolerate any lost interrupts then you may need to reset. Alternatively, you may wish to keep a record of these events for diagnostic analysis.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 21 Apr 2006 15:30:26 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Spurious-interrupts/m-p/133207#M1841</guid>
      <dc:creator>Steve</dc:creator>
      <dc:date>2006-04-21T15:30:26Z</dc:date>
    </item>
    <item>
      <title>Re: Spurious interrupts?</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Spurious-interrupts/m-p/133208#M1842</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;Hello,&lt;BR /&gt;Thanks for the advice. Now I will always assign an ISR to it...&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 21 Apr 2006 17:37:14 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Spurious-interrupts/m-p/133208#M1842</guid>
      <dc:creator>pittbull</dc:creator>
      <dc:date>2006-04-21T17:37:14Z</dc:date>
    </item>
    <item>
      <title>Re: Spurious interrupts?</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Spurious-interrupts/m-p/133209#M1843</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Unexpected interrupts are very confusing to track down.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;For development I strongly recommend that you put code that goes into an infinite loop under ALL interrupts that you don't expect.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;The reason is that erased flash for an interrupt vector loses all the information about the interrupt source.&amp;nbsp; A trivial interrupt service routine consisting of RTI has a similar problem.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Generating dummy interrupt service routines consisting of "for ( ; ; )" is a cut and paste exercise that takes less time than tracking down one unexpected interrupt bug.&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Doing it when you first start working on a particular MCU is well worth while.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;For production releases, you might want to do something a little different, but the COP watchdog will get you restarted from the infinite loop.&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 22 Apr 2006 01:54:38 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Spurious-interrupts/m-p/133209#M1843</guid>
      <dc:creator>SteveRussell</dc:creator>
      <dc:date>2006-04-22T01:54:38Z</dc:date>
    </item>
  </channel>
</rss>

