<?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>MQX Software Solutions中的主题 Watchdog Interrupt</title>
    <link>https://community.nxp.com/t5/MQX-Software-Solutions/Watchdog-Interrupt/m-p/638633#M17037</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have K60 towerboard:_K60P144M150SF3RM , MQX 4.2 Code Warrior v10.6.4&lt;/P&gt;&lt;P&gt;Using PE generated Watchdog with Interrupt then Reset CPU option:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="pastedImage_1.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/5678iF10705C9245D047B/image-size/large?v=v2&amp;amp;px=999" role="button" title="pastedImage_1.png" alt="pastedImage_1.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;The interrupt is INT_Watchdog,&lt;/P&gt;&lt;P&gt;but I cannot find anything in the Init() generated code that the INT_Watchdog is associated with any ISR.&lt;/P&gt;&lt;P&gt;LDD_TDeviceData* WDog1_Init(LDD_TUserData *UserDataPtr)&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp; /* Allocate device structure */&lt;BR /&gt;&amp;nbsp; WDog1_TDeviceData *DeviceDataPrv;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; /* {MQX RTOS Adapter} Driver memory allocation: RTOS function call is defined by MQX RTOS Adapter property */&lt;BR /&gt;&amp;nbsp; DeviceDataPrv = (WDog1_TDeviceData *)_mem_alloc_system((_mem_size)sizeof(WDog1_TDeviceData));&lt;BR /&gt;&amp;nbsp; #if MQX_CHECK_MEMORY_ALLOCATION_ERRORS&lt;BR /&gt;&amp;nbsp; if (DeviceDataPrv == NULL) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return (NULL);&lt;BR /&gt;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp; #endif&lt;BR /&gt;&amp;nbsp; DeviceDataPrv-&amp;gt;UserDataPtr = UserDataPtr; /* Store the RTOS device structure */&lt;BR /&gt;&amp;nbsp; /* {MQX RTOS Adapter} Critical section begin (RTOS function call is defined by MQX RTOS Adapter property) */&lt;BR /&gt;&amp;nbsp; _int_disable();&lt;BR /&gt;&amp;nbsp; /* WDOG_UNLOCK: WDOGUNLOCK=0xC520 */&lt;BR /&gt;&amp;nbsp; WDOG_UNLOCK = WDOG_UNLOCK_WDOGUNLOCK(0xC520); /* Key 1 */&lt;BR /&gt;&amp;nbsp; /* WDOG_UNLOCK: WDOGUNLOCK=0xD928 */&lt;BR /&gt;&amp;nbsp; WDOG_UNLOCK = WDOG_UNLOCK_WDOGUNLOCK(0xD928); /* Key 2 */&lt;BR /&gt;&amp;nbsp; /* WDOG_WINH: WINHIGH=0 */&lt;BR /&gt;&amp;nbsp; WDOG_WINH = WDOG_WINH_WINHIGH(0x00); /* Setup window register high */&lt;BR /&gt;&amp;nbsp; /* WDOG_WINL: WINLOW=0 */&lt;BR /&gt;&amp;nbsp; WDOG_WINL = WDOG_WINL_WINLOW(0x00);&amp;nbsp; /* Setup window register low */&lt;BR /&gt;&amp;nbsp; /* WDOG_TOVALH: TOVALHIGH=0xE0 */&lt;BR /&gt;&amp;nbsp; WDOG_TOVALH = WDOG_TOVALH_TOVALHIGH(0xE0); /* Setup time-out value register high */&lt;BR /&gt;&amp;nbsp; /* WDOG_TOVALL: TOVALLOW=2 */&lt;BR /&gt;&amp;nbsp; WDOG_TOVALL = WDOG_TOVALL_TOVALLOW(0x02); /* Setup time-out value register low */&lt;BR /&gt;&amp;nbsp; /* WDOG_PRESC: ??=0,??=0,??=0,??=0,??=0,PRESCVAL=0,??=0,??=0,??=0,??=0,??=0,??=0,??=0,??=0 */&lt;BR /&gt;&amp;nbsp; WDOG_PRESC = WDOG_PRESC_PRESCVAL(0x00); /* Setup status register */&lt;BR /&gt;&amp;nbsp; /* WDOG_STCTRLL: INTFLG=1,??=0,??=0,??=0,??=0,??=0,??=0,??=0,??=0,??=0,??=0,??=0,??=0,??=0,??=0,??=1 */&lt;BR /&gt;&amp;nbsp; WDOG_STCTRLL = (WDOG_STCTRLL_INTFLG_MASK | 0x01U); /* Setup status register */&lt;BR /&gt;&amp;nbsp; /* WDOG_STCTRLH: ??=0,DISTESTWDOG=1,BYTESEL=0,TESTSEL=0,TESTWDOG=0,??=0,??=1,WAITEN=1,STOPEN=1,DBGEN=0,ALLOWUPDATE=0,WINEN=0,IRQRSTEN=1,CLKSRC=1,WDOGEN=1 */&lt;BR /&gt;&amp;nbsp; WDOG_STCTRLH = WDOG_STCTRLH_DISTESTWDOG_MASK |&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WDOG_STCTRLH_BYTESEL(0x00) |&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WDOG_STCTRLH_WAITEN_MASK |&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WDOG_STCTRLH_STOPEN_MASK |&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WDOG_STCTRLH_IRQRSTEN_MASK |&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WDOG_STCTRLH_CLKSRC_MASK |&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WDOG_STCTRLH_WDOGEN_MASK |&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x0100U;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Setup control register */&lt;BR /&gt;&amp;nbsp; /* {MQX RTOS Adapter} Critical section ends (RTOS function call is defined by MQX RTOS Adapter property) */&lt;BR /&gt;&amp;nbsp; _int_enable();&lt;BR /&gt;&amp;nbsp; /* Registration of the device structure */&lt;BR /&gt;&amp;nbsp; PE_LDD_RegisterDeviceStructure(PE_LDD_COMPONENT_WDog1_ID,DeviceDataPrv);&lt;BR /&gt;&amp;nbsp; return ((LDD_TDeviceData *)DeviceDataPrv); /* Return pointer to the device data structure */&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Where is the interrupt routine for INT_Watchdog? Do I have to install myself?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In the example, watchdog.c under mqx example folder, it shows a watchdog test using system timer as watchdog. It can call interrupt when specified time duration expires. It can be added with a CPU reset in the ISR(). To me, this is the same as watchdog timer defined with interrupt and then reset CPU. What are essential difference between Watchdog timer and a system timer is used as watchdog function?&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you,&lt;/P&gt;&lt;P&gt;David Zhou&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 21 Sep 2016 14:33:32 GMT</pubDate>
    <dc:creator>davidzhou</dc:creator>
    <dc:date>2016-09-21T14:33:32Z</dc:date>
    <item>
      <title>Watchdog Interrupt</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/Watchdog-Interrupt/m-p/638633#M17037</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have K60 towerboard:_K60P144M150SF3RM , MQX 4.2 Code Warrior v10.6.4&lt;/P&gt;&lt;P&gt;Using PE generated Watchdog with Interrupt then Reset CPU option:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="pastedImage_1.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/5678iF10705C9245D047B/image-size/large?v=v2&amp;amp;px=999" role="button" title="pastedImage_1.png" alt="pastedImage_1.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;The interrupt is INT_Watchdog,&lt;/P&gt;&lt;P&gt;but I cannot find anything in the Init() generated code that the INT_Watchdog is associated with any ISR.&lt;/P&gt;&lt;P&gt;LDD_TDeviceData* WDog1_Init(LDD_TUserData *UserDataPtr)&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp; /* Allocate device structure */&lt;BR /&gt;&amp;nbsp; WDog1_TDeviceData *DeviceDataPrv;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; /* {MQX RTOS Adapter} Driver memory allocation: RTOS function call is defined by MQX RTOS Adapter property */&lt;BR /&gt;&amp;nbsp; DeviceDataPrv = (WDog1_TDeviceData *)_mem_alloc_system((_mem_size)sizeof(WDog1_TDeviceData));&lt;BR /&gt;&amp;nbsp; #if MQX_CHECK_MEMORY_ALLOCATION_ERRORS&lt;BR /&gt;&amp;nbsp; if (DeviceDataPrv == NULL) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return (NULL);&lt;BR /&gt;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp; #endif&lt;BR /&gt;&amp;nbsp; DeviceDataPrv-&amp;gt;UserDataPtr = UserDataPtr; /* Store the RTOS device structure */&lt;BR /&gt;&amp;nbsp; /* {MQX RTOS Adapter} Critical section begin (RTOS function call is defined by MQX RTOS Adapter property) */&lt;BR /&gt;&amp;nbsp; _int_disable();&lt;BR /&gt;&amp;nbsp; /* WDOG_UNLOCK: WDOGUNLOCK=0xC520 */&lt;BR /&gt;&amp;nbsp; WDOG_UNLOCK = WDOG_UNLOCK_WDOGUNLOCK(0xC520); /* Key 1 */&lt;BR /&gt;&amp;nbsp; /* WDOG_UNLOCK: WDOGUNLOCK=0xD928 */&lt;BR /&gt;&amp;nbsp; WDOG_UNLOCK = WDOG_UNLOCK_WDOGUNLOCK(0xD928); /* Key 2 */&lt;BR /&gt;&amp;nbsp; /* WDOG_WINH: WINHIGH=0 */&lt;BR /&gt;&amp;nbsp; WDOG_WINH = WDOG_WINH_WINHIGH(0x00); /* Setup window register high */&lt;BR /&gt;&amp;nbsp; /* WDOG_WINL: WINLOW=0 */&lt;BR /&gt;&amp;nbsp; WDOG_WINL = WDOG_WINL_WINLOW(0x00);&amp;nbsp; /* Setup window register low */&lt;BR /&gt;&amp;nbsp; /* WDOG_TOVALH: TOVALHIGH=0xE0 */&lt;BR /&gt;&amp;nbsp; WDOG_TOVALH = WDOG_TOVALH_TOVALHIGH(0xE0); /* Setup time-out value register high */&lt;BR /&gt;&amp;nbsp; /* WDOG_TOVALL: TOVALLOW=2 */&lt;BR /&gt;&amp;nbsp; WDOG_TOVALL = WDOG_TOVALL_TOVALLOW(0x02); /* Setup time-out value register low */&lt;BR /&gt;&amp;nbsp; /* WDOG_PRESC: ??=0,??=0,??=0,??=0,??=0,PRESCVAL=0,??=0,??=0,??=0,??=0,??=0,??=0,??=0,??=0 */&lt;BR /&gt;&amp;nbsp; WDOG_PRESC = WDOG_PRESC_PRESCVAL(0x00); /* Setup status register */&lt;BR /&gt;&amp;nbsp; /* WDOG_STCTRLL: INTFLG=1,??=0,??=0,??=0,??=0,??=0,??=0,??=0,??=0,??=0,??=0,??=0,??=0,??=0,??=0,??=1 */&lt;BR /&gt;&amp;nbsp; WDOG_STCTRLL = (WDOG_STCTRLL_INTFLG_MASK | 0x01U); /* Setup status register */&lt;BR /&gt;&amp;nbsp; /* WDOG_STCTRLH: ??=0,DISTESTWDOG=1,BYTESEL=0,TESTSEL=0,TESTWDOG=0,??=0,??=1,WAITEN=1,STOPEN=1,DBGEN=0,ALLOWUPDATE=0,WINEN=0,IRQRSTEN=1,CLKSRC=1,WDOGEN=1 */&lt;BR /&gt;&amp;nbsp; WDOG_STCTRLH = WDOG_STCTRLH_DISTESTWDOG_MASK |&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WDOG_STCTRLH_BYTESEL(0x00) |&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WDOG_STCTRLH_WAITEN_MASK |&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WDOG_STCTRLH_STOPEN_MASK |&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WDOG_STCTRLH_IRQRSTEN_MASK |&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WDOG_STCTRLH_CLKSRC_MASK |&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; WDOG_STCTRLH_WDOGEN_MASK |&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x0100U;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Setup control register */&lt;BR /&gt;&amp;nbsp; /* {MQX RTOS Adapter} Critical section ends (RTOS function call is defined by MQX RTOS Adapter property) */&lt;BR /&gt;&amp;nbsp; _int_enable();&lt;BR /&gt;&amp;nbsp; /* Registration of the device structure */&lt;BR /&gt;&amp;nbsp; PE_LDD_RegisterDeviceStructure(PE_LDD_COMPONENT_WDog1_ID,DeviceDataPrv);&lt;BR /&gt;&amp;nbsp; return ((LDD_TDeviceData *)DeviceDataPrv); /* Return pointer to the device data structure */&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Where is the interrupt routine for INT_Watchdog? Do I have to install myself?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In the example, watchdog.c under mqx example folder, it shows a watchdog test using system timer as watchdog. It can call interrupt when specified time duration expires. It can be added with a CPU reset in the ISR(). To me, this is the same as watchdog timer defined with interrupt and then reset CPU. What are essential difference between Watchdog timer and a system timer is used as watchdog function?&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you,&lt;/P&gt;&lt;P&gt;David Zhou&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 21 Sep 2016 14:33:32 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/Watchdog-Interrupt/m-p/638633#M17037</guid>
      <dc:creator>davidzhou</dc:creator>
      <dc:date>2016-09-21T14:33:32Z</dc:date>
    </item>
    <item>
      <title>Re: Watchdog Interrupt</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/Watchdog-Interrupt/m-p/638634#M17038</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi David:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The difference you mentioned is just like the difference between hardware watchdog and software watchdog.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Hardware watchdog:&lt;/STRONG&gt;&amp;nbsp; If the application does not reset the timer within a certain time, the hardware generates a reset operation. As such, a hardware watchdog timer monitors the entire application on a processor, it does not monitor individual tasks.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Software watchdog:&lt;/STRONG&gt; The MQX RTOS watchdog component provides a software watchdog for each task. If a single task starves or runs beyond certain timing constraints, the watchdog provides a way to detect the problem. Initially, the task stars its watchdog with a specific time value, and if the task fails to stop or restart the watchdog before that time expires, MQX RTOS calls a processor-unique, application-supplied expiry function that can initiate error recovery.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regarding the hardware watchdog, please refer to the attached Kinetis watchdog module validation code. I did not try the watchdog PE code before.&lt;/P&gt;&lt;P&gt;Regarding the software watchdog, please refer to the watchdog demo under MQX installation folder.&lt;/P&gt;&lt;P&gt;C:\Freescale\Freescale_MQX_4_2\mqx\examples\watchdog&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Daniel&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 04 Feb 2017 15:15:01 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/Watchdog-Interrupt/m-p/638634#M17038</guid>
      <dc:creator>danielchen</dc:creator>
      <dc:date>2017-02-04T15:15:01Z</dc:date>
    </item>
    <item>
      <title>Re: Watchdog Interrupt</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/Watchdog-Interrupt/m-p/638635#M17039</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you, Daniel. &lt;/P&gt;&lt;P&gt;David Zhou&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 06 Feb 2017 19:59:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/Watchdog-Interrupt/m-p/638635#M17039</guid>
      <dc:creator>davidzhou</dc:creator>
      <dc:date>2017-02-06T19:59:09Z</dc:date>
    </item>
  </channel>
</rss>

