<?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>Kinetis Microcontrollers中的主题 volatile/auto variable access for Kinetis MPU (K8x)</title>
    <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/volatile-auto-variable-access-for-Kinetis-MPU-K8x/m-p/598754#M35115</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello, &lt;/P&gt;&lt;P&gt;Interestingly, volatile and auto variables show different behaviours with Kinetis Custom MPU HW module.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BUS fault is rised only with volatile variable access. Please see following combinations.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;#define RESTRICTED_ADDRESS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x2001000&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #339966;"&gt;/* OK! Rises BUS Fault */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;volatile&lt;/SPAN&gt; &lt;SPAN style="color: #0000ff;"&gt;uint32_t&lt;/SPAN&gt; val = *(&lt;SPAN style="color: #0000ff;"&gt;volatile uint32_t&lt;/SPAN&gt;*)RESTRICTED_ADDRESS;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #339966;"&gt;/* OK! Rises BUS Fault */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;volatile uint32_t&lt;/SPAN&gt; val = *(&lt;SPAN style="color: #0000ff;"&gt;uint32_t&lt;/SPAN&gt;*)RESTRICTED_ADDRESS;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #339966;"&gt;/* OK! Rises BUS Fault */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;uint32_t&lt;/SPAN&gt; val = *(&lt;SPAN style="color: #0000ff;"&gt;volatile uint32_t&lt;/SPAN&gt;*)RESTRICTED_ADDRESS;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;/* UPS!!!!!!!!!!!!!!! No BUS Fault Exception, continues to execution */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;uint32_t&lt;/SPAN&gt; val = *(&lt;SPAN style="color: #0000ff;"&gt;uint32_t&lt;/SPAN&gt;*)RESTRICTED_ADDRESS;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any idea? Any limitation on Kinetis Custom MPU?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sun, 08 Jan 2017 13:16:49 GMT</pubDate>
    <dc:creator>muratcakmak</dc:creator>
    <dc:date>2017-01-08T13:16:49Z</dc:date>
    <item>
      <title>volatile/auto variable access for Kinetis MPU (K8x)</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/volatile-auto-variable-access-for-Kinetis-MPU-K8x/m-p/598754#M35115</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello, &lt;/P&gt;&lt;P&gt;Interestingly, volatile and auto variables show different behaviours with Kinetis Custom MPU HW module.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BUS fault is rised only with volatile variable access. Please see following combinations.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;#define RESTRICTED_ADDRESS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x2001000&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #339966;"&gt;/* OK! Rises BUS Fault */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;volatile&lt;/SPAN&gt; &lt;SPAN style="color: #0000ff;"&gt;uint32_t&lt;/SPAN&gt; val = *(&lt;SPAN style="color: #0000ff;"&gt;volatile uint32_t&lt;/SPAN&gt;*)RESTRICTED_ADDRESS;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #339966;"&gt;/* OK! Rises BUS Fault */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;volatile uint32_t&lt;/SPAN&gt; val = *(&lt;SPAN style="color: #0000ff;"&gt;uint32_t&lt;/SPAN&gt;*)RESTRICTED_ADDRESS;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #339966;"&gt;/* OK! Rises BUS Fault */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;uint32_t&lt;/SPAN&gt; val = *(&lt;SPAN style="color: #0000ff;"&gt;volatile uint32_t&lt;/SPAN&gt;*)RESTRICTED_ADDRESS;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #ff0000;"&gt;/* UPS!!!!!!!!!!!!!!! No BUS Fault Exception, continues to execution */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;uint32_t&lt;/SPAN&gt; val = *(&lt;SPAN style="color: #0000ff;"&gt;uint32_t&lt;/SPAN&gt;*)RESTRICTED_ADDRESS;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any idea? Any limitation on Kinetis Custom MPU?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 08 Jan 2017 13:16:49 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/volatile-auto-variable-access-for-Kinetis-MPU-K8x/m-p/598754#M35115</guid>
      <dc:creator>muratcakmak</dc:creator>
      <dc:date>2017-01-08T13:16:49Z</dc:date>
    </item>
    <item>
      <title>Re: volatile/auto variable access for Kinetis MPU (K8x)</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/volatile-auto-variable-access-for-Kinetis-MPU-K8x/m-p/598755#M35116</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The other interesting thing is when build project with ARMCC, it works as expected. &lt;/P&gt;&lt;P&gt;Problem is about GCC compiler.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 08 Jan 2017 14:11:36 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/volatile-auto-variable-access-for-Kinetis-MPU-K8x/m-p/598755#M35116</guid>
      <dc:creator>muratcakmak</dc:creator>
      <dc:date>2017-01-08T14:11:36Z</dc:date>
    </item>
    <item>
      <title>Re: volatile/auto variable access for Kinetis MPU (K8x)</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/volatile-auto-variable-access-for-Kinetis-MPU-K8x/m-p/598756#M35117</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Murat Cakmak&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Could you tell us what IDE and MCU are you using? I have tried to replicate what you mention but in my case it rises BUS Fault as expected.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Jorge Alcala&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 13 Jan 2017 22:15:51 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/volatile-auto-variable-access-for-Kinetis-MPU-K8x/m-p/598756#M35117</guid>
      <dc:creator>jorge_a_vazquez</dc:creator>
      <dc:date>2017-01-13T22:15:51Z</dc:date>
    </item>
  </channel>
</rss>

