<?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: USB Hard Fault during ISR if task is not running in LPC Microcontrollers</title>
    <link>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Hard-Fault-during-ISR-if-task-is-not-running/m-p/523248#M5884</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by ldchub on Wed Dec 09 03:35:28 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi vtw, &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The point is that the PC points to value 0xD25A, and, as explained before, it is part of the USBD rom library. This can be clearly seen from the .map file:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt; .text.hwUSB_WriteEP&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&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; 0x0000d208&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x44 ..\lpc_chip_175x_6x\libs\libusbd_175x_6x_lib.a(hw_usbd_ip3503.o)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&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; 0x0000d208&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; hwUSB_WriteEP&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; .text.hwUSB_ISR&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&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; 0x0000d24c&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x1a0 ..\lpc_chip_175x_6x\libs\libusbd_175x_6x_lib.a(hw_usbd_ip3503.o)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&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; 0x0000d24c&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; hwUSB_ISR&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Being in a pre-compiled library, I do not have the possibility to understand what's wrong in hwUSB_ISR&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The following is the dissassembly for the hwUSB_ISR:&lt;/SPAN&gt;&lt;BR /&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD bgcolor="#cacaca"&gt; &lt;PRE&gt;
 hwUSB_ISR:
0000d24c:&amp;nbsp;&amp;nbsp; stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, lr}
0000d250:&amp;nbsp;&amp;nbsp; ldr.w r9, [r0, #456]&amp;nbsp;&amp;nbsp;&amp;nbsp; ; 0x1c8
0000d254:&amp;nbsp;&amp;nbsp; mov r10, r0
0000d256:&amp;nbsp;&amp;nbsp; ldr.w r2, [r9, #4]
0000d25a:&amp;nbsp;&amp;nbsp; ldr r3, [r2, #0]
&lt;/PRE&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I'm not used with assembly debugging. What should I check here?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 15 Jun 2016 16:43:48 GMT</pubDate>
    <dc:creator>lpcware</dc:creator>
    <dc:date>2016-06-15T16:43:48Z</dc:date>
    <item>
      <title>USB Hard Fault during ISR if task is not running</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Hard-Fault-during-ISR-if-task-is-not-running/m-p/523246#M5882</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by ldchub on Wed Dec 09 02:25:33 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hello everybody,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have a problem with USB on LPC1766 processor.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Setup)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Toolchain &amp;amp; Editor: LPCXpresso v7.9.2&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;uC: LPC1766&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Problem description)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I'm modified the usbd_lib_cdc example from LPCopen to integrate the USB functionality into Freertos-based application firmware. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I followed the indications from here: &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&lt;A _jive_internal="true" class="" href="https://community.nxp.com/external-link.jspa?url=http%3A%2F%2Fwww.freertos.org%2FFreeRTOS-Plus%2FBSP_Solutions%2FNXP%2Fcombining_lpcopen_example.html" rel="nofollow noopener noreferrer" target="_blank"&gt;http://www.freertos.org/FreeRTOS-Plus/BSP_Solutions/NXP/combining_lpcopen_example.html&lt;/A&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;The final result is OK with the USB task being the only task in the system (apart from the idle one).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Later on, I added tasks for my application, and now I'm getting an Hard Fault when the USB_IRQHandler() is called. This does not happens always, but only when the running task is not the USB one. Instead, the call to &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;USBD_API-&amp;gt;hw-&amp;gt;ISR(g_hUsb) &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;does not produces any error if the running task is the USB one.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;What I did)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I tried to modify the task' stack up to 1024 bytes, but the error persisted. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I also checked the priority value of USB interrupt to comply with FreeRTOS requirements (logic priority less or equal to configMAX_SYSCALL_INTERRUPT_PRIORITY. But the problem persisted. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Further, the problem arises both if I use FreeRTOS api in USB ISR (...FromISR suffix) or I don't use any synchronization at all.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Could you help me?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Some information:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;List of tasks launched, with priorities and dimensions:&lt;/SPAN&gt;&lt;BR /&gt;&lt;DIV class="j-rte-table"&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD bgcolor="#cacaca" style="border:1px solid black;background-color:#cacaca;border:1px solid black;background-color:#cacaca;border:1px solid black;background-color:#cacaca;background-color:#cacaca;border:1px solid black;background-color:#cacaca;border:1px solid black;"&gt; &lt;PRE&gt;
xTaskCreate( usb_entry_point, ( signed char * ) "USB", 1024, ( void * ) NULL, tskIDLE_PRIORITY+4, &amp;amp;xUsbTaskHandle );

&amp;nbsp;&amp;nbsp;&amp;nbsp; xTaskCreate( vuIP_Task, ( signed char * ) "uIP", mainBASIC_WEB_STACK_SIZE, ( void * ) NULL, mainUIP_TASK_PRIORITY, NULL );
&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; xQueue_myQueue = xQueueCreate( 4, ( unsigned portBASE_TYPE ) 40 );
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; xTaskCreate( vSIM_Task, ( signed char * ) "SIM", configMINIMAL_STACK_SIZE, ( void * ) NULL, tskIDLE_PRIORITY + 1, ( xTaskHandle * ) NULL );

&lt;/PRE&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Register dump during Hard Fault: &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;r0volatile uint32_t0x2007c010 (Hex)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;r1volatile uint32_t0x1000025c (Hex)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;r2volatile uint32_t0x800005ff (Hex)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;r3volatile uint32_t0xd24d (Hex)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;r12volatile uint32_t0xa5a5a5a5 (Hex)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;lrvolatile uint32_t0xc189 (Hex)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;pcvolatile uint32_t0xd25a (Hex)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;psrvolatile uint32_t0x1000028 (Hex)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The program counter points to the flash sector, indeed I'm using usbd ROM stack. So I think NXP should take the floor here.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;In attachment you can find the linker file and the file containing the USB ISR and task.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks for your support&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;BR /&gt;&lt;P&gt;&lt;STRONG&gt;Original Attachment has been moved to: &lt;A _jive_internal="true" href="https://community.nxp.com/docs/DOC-338114" rel="nofollow noopener noreferrer" target="_blank"&gt;cdc_if.c.zip&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Original Attachment has been moved to: &lt;A _jive_internal="true" href="https://community.nxp.com/docs/DOC-338114" rel="nofollow noopener noreferrer" target="_blank"&gt;linker_file.zip&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 16:43:47 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Hard-Fault-during-ISR-if-task-is-not-running/m-p/523246#M5882</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T16:43:47Z</dc:date>
    </item>
    <item>
      <title>Re: USB Hard Fault during ISR if task is not running</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Hard-Fault-during-ISR-if-task-is-not-running/m-p/523247#M5883</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by vtw.433e on Wed Dec 09 02:47:58 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Why don't you start by tracing the cause of the hard fault?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&lt;A class="jive-link-external-small" href="https://community.nxp.com/external-link.jspa?url=https%3A%2F%2Fwww.lpcware.com%2Fcontent%2Ffaq%2Flpcxpresso%2Fdebugging-hard-fault" rel="nofollow" target="_blank"&gt;https://www.lpcware.com/content/faq/lpcxpresso/debugging-hard-fault&lt;/A&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;This will tell you the address that has cause the fault, which should give you a clue.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;It is impossible for anybody to debug your code for you.&lt;/SPAN&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 16:43:48 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Hard-Fault-during-ISR-if-task-is-not-running/m-p/523247#M5883</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T16:43:48Z</dc:date>
    </item>
    <item>
      <title>Re: USB Hard Fault during ISR if task is not running</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Hard-Fault-during-ISR-if-task-is-not-running/m-p/523248#M5884</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by ldchub on Wed Dec 09 03:35:28 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi vtw, &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The point is that the PC points to value 0xD25A, and, as explained before, it is part of the USBD rom library. This can be clearly seen from the .map file:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt; .text.hwUSB_WriteEP&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&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; 0x0000d208&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x44 ..\lpc_chip_175x_6x\libs\libusbd_175x_6x_lib.a(hw_usbd_ip3503.o)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&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; 0x0000d208&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; hwUSB_WriteEP&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; .text.hwUSB_ISR&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&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; 0x0000d24c&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x1a0 ..\lpc_chip_175x_6x\libs\libusbd_175x_6x_lib.a(hw_usbd_ip3503.o)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&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; 0x0000d24c&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; hwUSB_ISR&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Being in a pre-compiled library, I do not have the possibility to understand what's wrong in hwUSB_ISR&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The following is the dissassembly for the hwUSB_ISR:&lt;/SPAN&gt;&lt;BR /&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD bgcolor="#cacaca"&gt; &lt;PRE&gt;
 hwUSB_ISR:
0000d24c:&amp;nbsp;&amp;nbsp; stmdb sp!, {r4, r5, r6, r7, r8, r9, r10, lr}
0000d250:&amp;nbsp;&amp;nbsp; ldr.w r9, [r0, #456]&amp;nbsp;&amp;nbsp;&amp;nbsp; ; 0x1c8
0000d254:&amp;nbsp;&amp;nbsp; mov r10, r0
0000d256:&amp;nbsp;&amp;nbsp; ldr.w r2, [r9, #4]
0000d25a:&amp;nbsp;&amp;nbsp; ldr r3, [r2, #0]
&lt;/PRE&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I'm not used with assembly debugging. What should I check here?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 16:43:48 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Hard-Fault-during-ISR-if-task-is-not-running/m-p/523248#M5884</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T16:43:48Z</dc:date>
    </item>
    <item>
      <title>Re: USB Hard Fault during ISR if task is not running</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Hard-Fault-during-ISR-if-task-is-not-running/m-p/523249#M5885</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by vtw.433e on Wed Dec 09 05:02:11 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Sorry, but you are missing the point here.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The PC may be in the ROM, but it is not that which is causing the fault. The fault will be caused by an instruction at that address accessing a memory location that causes the fault - most likely an address that you have passed to the ROM routine. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;So, as I said, find the address that caused the fault - this is NOT the PC. You can find this by reading the FAQ that I pointed you at.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 16:43:49 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Hard-Fault-during-ISR-if-task-is-not-running/m-p/523249#M5885</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T16:43:49Z</dc:date>
    </item>
    <item>
      <title>Re: USB Hard Fault during ISR if task is not running</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Hard-Fault-during-ISR-if-task-is-not-running/m-p/523250#M5886</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by ldchub on Thu Dec 10 15:20:19 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;At the end I found the problem: the r2 register was loaded with a value coming from a memory region that was overwritten by the ethernet packet buffers. The address was totally outside any mapped region of memory. Eventually loading a register from this unmapped address caused a bus fault further escalated into a hard fault. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks to vtw for the suggestions.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best Regards&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;ldchub&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 16:43:50 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/USB-Hard-Fault-during-ISR-if-task-is-not-running/m-p/523250#M5886</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T16:43:50Z</dc:date>
    </item>
  </channel>
</rss>

