<?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 [KEAZN64] Watchdog ISR is not working in Kinetis Microcontrollers</title>
    <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/KEAZN64-Watchdog-ISR-is-not-working/m-p/706341#M43343</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I am working on controller KEAZN64 (Cortex M0).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am trying to implement a staff inside the ISR of the watchdog interrupt before reset.&lt;/P&gt;&lt;P&gt;However, when i write this sample of code;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;_INTERRUPT void WDG_IRQHandler (void)&lt;BR /&gt;{&lt;BR /&gt; PORTA_SET_PIN(_BIT1);&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and do a breakpoint at line including "PORTA" or wait for PORTA to detect the edge '1'.&lt;/P&gt;&lt;P&gt;Both ways show that ISR is not called after watchdog overflows.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Could someone help me to implement the ISR in a good manner please ?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 18 Sep 2017 13:21:51 GMT</pubDate>
    <dc:creator>mohammedaboelna</dc:creator>
    <dc:date>2017-09-18T13:21:51Z</dc:date>
    <item>
      <title>[KEAZN64] Watchdog ISR is not working</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/KEAZN64-Watchdog-ISR-is-not-working/m-p/706341#M43343</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I am working on controller KEAZN64 (Cortex M0).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am trying to implement a staff inside the ISR of the watchdog interrupt before reset.&lt;/P&gt;&lt;P&gt;However, when i write this sample of code;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;_INTERRUPT void WDG_IRQHandler (void)&lt;BR /&gt;{&lt;BR /&gt; PORTA_SET_PIN(_BIT1);&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and do a breakpoint at line including "PORTA" or wait for PORTA to detect the edge '1'.&lt;/P&gt;&lt;P&gt;Both ways show that ISR is not called after watchdog overflows.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Could someone help me to implement the ISR in a good manner please ?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 18 Sep 2017 13:21:51 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/KEAZN64-Watchdog-ISR-is-not-working/m-p/706341#M43343</guid>
      <dc:creator>mohammedaboelna</dc:creator>
      <dc:date>2017-09-18T13:21:51Z</dc:date>
    </item>
    <item>
      <title>Re: [KEAZN64] Watchdog ISR is not working</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/KEAZN64-Watchdog-ISR-is-not-working/m-p/706342#M43344</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Mohammed,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please download the '&lt;A data-dtmassettype="Download" data-dtmname="SDK Software Drivers for KEAZ128_KEAZ64 using S32DS" href="https://www.nxp.com/downloads/en/device-drivers/SDK-DRIVER-FRDM-KEA-S32DS.zip" target="_blank"&gt;SDK Software Drivers for KEAZ128_KEAZ64 using S32DS&lt;/A&gt;' and refer the FRDM_KEA64_WDOG example. You can open this example by using &lt;A href="https://www.nxp.com/products/microcontrollers-and-processors/power-architecture-processors/mpc5xxx-55xx-32-bit-mcus/ultra-reliable-mpc57xx-32-bit-automotive-industrial-microcontrollers-mcus/s32-design-studio-ide:S32DS"&gt;S32DS: S32 Design Studio IDE&lt;/A&gt;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/31332iF62F14A1333865D4/image-size/large?v=v2&amp;amp;px=999" title="FRDM_KEA64_WDOG S32DS.png" alt="FRDM_KEA64_WDOG S32DS.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/31109iAB61884C342D4A59/image-size/large?v=v2&amp;amp;px=999" title="FRDM_KEA64_WDOG.png" alt="FRDM_KEA64_WDOG.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Best Regards,&lt;/P&gt;&lt;P&gt;Robin&lt;/P&gt;&lt;P style="min- padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;-----------------------------------------------------------------------------------------------------------------------&lt;BR /&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 20 Sep 2017 09:04:22 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/KEAZN64-Watchdog-ISR-is-not-working/m-p/706342#M43344</guid>
      <dc:creator>Robin_Shen</dc:creator>
      <dc:date>2017-09-20T09:04:22Z</dc:date>
    </item>
    <item>
      <title>Re: [KEAZN64] Watchdog ISR is not working</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/KEAZN64-Watchdog-ISR-is-not-working/m-p/706343#M43345</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Mohammed&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I use this code:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 13px;"&gt;// Watchdog initialisation&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 13px;"&gt;UNLOCK_WDOG();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 13px;"&gt;WDOG_CS2 = (WDOG_CS2_CLK_1kHz | WDOG_CS2_FLG);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 13px;"&gt;WDOG_TOVAL = BIG_SHORT_WORD(2000);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 13px;"&gt;WDOG_WIN = 0;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 13px;"&gt;WDOG_CS1 = (WDOG_CS1_INT | WDOG_CS1_EN); // enable watchdog with 2s timeout (no update capability and interrupt 128 bus clocks before the HW reset takes place)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 13px;"&gt;//Enter watchdog handler and enable source in NVIC&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 13px;"&gt;fnEnterInterrupt(irq_WDOG_ID, 0, wdog_irq);&amp;nbsp; // test WDOG interrupt (highest priority)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 13px;"&gt;// Watchdog handler&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 13px;"&gt;static void wdog_irq(void)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 13px;"&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 13px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; WDOG_CS2 |= WDOG_CS2_FLG;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // clear interrupt flag&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 13px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *BOOT_MAIL_BOX = 0x9876;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // set a pattern to the boot mailbox to show that the watchdog interrupt took place&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new,courier,monospace; font-size: 13px;"&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Note that it is usually not possible to use a debugger to detect the ISR firing since the HW reset takes place unconditionally 128 bus cycles later, which causes the debugger to immediately move to the reset vector instead.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Mark&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="jive-link-external-small" href="https://community.nxp.com/external-link.jspa?url=http%3A%2F%2Fwww.utasker.com%2Fkinetis%2FFRDM-KEAZ64Q64.html" rel="nofollow" target="_blank"&gt;http://www.utasker.com/kinetis/FRDM-KEAZ64Q64.html&lt;/A&gt;&lt;BR /&gt;&lt;A class="jive-link-external-small" href="https://community.nxp.com/external-link.jspa?url=http%3A%2F%2Fwww.utasker.com%2Fkinetis%2FTRK-KEA64.html" rel="nofollow" target="_blank"&gt;http://www.utasker.com/kinetis/TRK-KEA64.html&lt;/A&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 20 Sep 2017 10:58:12 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/KEAZN64-Watchdog-ISR-is-not-working/m-p/706343#M43345</guid>
      <dc:creator>mjbcswitzerland</dc:creator>
      <dc:date>2017-09-20T10:58:12Z</dc:date>
    </item>
  </channel>
</rss>

