<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>UART Interrupt fault</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/59857/uart-interrupt-fault</link><description>Hi 
 nRF52833, SDK16 
 When using a UARTE interrupt I get a fault which I cannot locate, I have the following code: 
 
 
 When my 4 bytes are recieved, i get a fault and the debugger stops on this line: (no hardfault routine to start but does end up in</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 06 Apr 2020 11:49:40 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/59857/uart-interrupt-fault" /><item><title>RE: UART Interrupt fault</title><link>https://devzone.nordicsemi.com/thread/243620?ContentTypeID=1</link><pubDate>Mon, 06 Apr 2020 11:49:40 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:aed8d8e9-b8d2-4c8f-9548-785e3cbc882d</guid><dc:creator>billywalton</dc:creator><description>&lt;p&gt;Yep, that was it, perfect, thanks for that&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: UART Interrupt fault</title><link>https://devzone.nordicsemi.com/thread/243614?ContentTypeID=1</link><pubDate>Mon, 06 Apr 2020 11:26:04 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b7850964-4427-414f-b221-2eed79b054a6</guid><dc:creator>J&amp;#248;rgen Holmefjord</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;It seems that you have forgotten to replace the startup and system files from nRF52832 to nRF52833.&lt;/p&gt;
&lt;p&gt;Under &amp;#39;None&amp;#39; directory in the project browser, replace ses_startup_nrf52.s with ses_startup_nrf52833.s, and system_nrf52.c with system_nrf52833.c.&lt;/p&gt;
&lt;p&gt;I verified that the interrupt handler is called after doing these changes in your project.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;br /&gt;Jørgen&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: UART Interrupt fault</title><link>https://devzone.nordicsemi.com/thread/243612?ContentTypeID=1</link><pubDate>Mon, 06 Apr 2020 11:07:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:048b087a-9964-4c55-946f-aea1e73f1ad2</guid><dc:creator>billywalton</dc:creator><description>&lt;p&gt;In addition, the call stack shows nothing, no optimisations are enabled&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/pastedimage1586171192757v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&amp;lt;info&amp;gt; app: Callpoint Startup..&lt;br /&gt;&amp;lt;warning&amp;gt; UARTE: Function: nrfx_uarte_init, error code: NRF_SUCCESS.&lt;br /&gt;&amp;lt;info&amp;gt; UARTE: Transfer rx_len: 4.&lt;br /&gt;&amp;lt;info&amp;gt; UARTE: Function: nrfx_uarte_rx, error code: NRF_SUCCESS.&lt;br /&gt;&amp;lt;error&amp;gt; hardfault: HARD FAULT at 0x00000000&lt;br /&gt;&amp;lt;error&amp;gt; hardfault:&amp;nbsp;&amp;nbsp; R0:&amp;nbsp; 0x000000E0&amp;nbsp; R1:&amp;nbsp; 0x00000000&amp;nbsp; R2:&amp;nbsp; 0x0EB6072E&amp;nbsp; R3:&amp;nbsp; 0xCAFEBABE&lt;br /&gt;&amp;lt;error&amp;gt; hardfault:&amp;nbsp;&amp;nbsp; R12: 0x20004AFA&amp;nbsp; LR:&amp;nbsp; 0xFFFFFFF9&amp;nbsp; PSR: 0x00000038&lt;br /&gt;&amp;lt;error&amp;gt; hardfault: Cause: The processor has attempted to execute an instruction that makes illegal use of the EPSR.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: UART Interrupt fault</title><link>https://devzone.nordicsemi.com/thread/243600?ContentTypeID=1</link><pubDate>Mon, 06 Apr 2020 10:17:59 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a8c78dbc-0deb-4906-b3e4-8dc8142e2de3</guid><dc:creator>billywalton</dc:creator><description>&lt;p&gt;Thanks,&lt;/p&gt;
&lt;p&gt;After including the hard fault handler I get&lt;/p&gt;
&lt;p&gt;&amp;lt;error&amp;gt; hardfault: HARD FAULT at 0x00000000&lt;br /&gt;&amp;lt;error&amp;gt; hardfault:&amp;nbsp;&amp;nbsp; R0:&amp;nbsp; 0x000000E0&amp;nbsp; R1:&amp;nbsp; 0x00000000&amp;nbsp; R2:&amp;nbsp; 0x0EB6072E&amp;nbsp; R3:&amp;nbsp; 0xCAFEBABE&lt;br /&gt;&amp;lt;error&amp;gt; hardfault:&amp;nbsp;&amp;nbsp; R12: 0x20004AFA&amp;nbsp; LR:&amp;nbsp; 0xFFFFFFF9&amp;nbsp; PSR: 0x00000038&lt;br /&gt;&amp;lt;error&amp;gt; hardfault: Cause: The processor has attempted to execute an instruction that makes illegal use of the EPSR.&lt;/p&gt;
&lt;p&gt;Is this something I have done wrong?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: UART Interrupt fault</title><link>https://devzone.nordicsemi.com/thread/243589?ContentTypeID=1</link><pubDate>Mon, 06 Apr 2020 09:43:12 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c4b47dc2-4630-41d5-8580-a1cc6588a615</guid><dc:creator>Dmitry</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I don&amp;#39;t see any problems in your code. You can look at call stack window to see where hard fault is coming from (make sure to compile project with disabled optimization). Even better way is to include SDK hardfault handling library (components\libraries\hardfault) into your project.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: UART Interrupt fault</title><link>https://devzone.nordicsemi.com/thread/243476?ContentTypeID=1</link><pubDate>Sat, 04 Apr 2020 09:51:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9cac3f28-45f4-4123-a88e-19ccb9d8b70b</guid><dc:creator>billywalton</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;I am still very stuck with this problem, I have removed everything from my project and reduced it to the absolute minimum and still get the same problem - as soon as a single byte is received, I get a hardfault when the interrupt should be generated.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I have attached the project in the hope someone could point out what is not correct.&lt;/p&gt;
&lt;p&gt;The pare is a nrf52833, so the pca directory name is not correct, but everything has been changed from a configuration point of view and the firmware is running on a 52833DK.&lt;/p&gt;
&lt;p&gt;It looks to be an interrupt vector issue but I can&amp;#39;t see where I can change it&lt;/p&gt;
&lt;p&gt;Thanks for any help&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/CP900.zip"&gt;devzone.nordicsemi.com/.../CP900.zip&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>