<?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>8-bit Microcontrollers中的主题 TIPS: Keep a variable beetween Resets</title>
    <link>https://community.nxp.com/t5/8-bit-Microcontrollers/TIPS-Keep-a-variable-beetween-Resets/m-p/124070#M152</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;SPAN style="color: #ff0000;"&gt;This message contains an entire topic ported from a separate forum. The original message and all replies are in this single message. We have seeded this new forum with selected information that we expect will be of value to you as you search for answers to your questions.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN class="postdetails"&gt;&lt;STRONG&gt;Posted: Fri Nov 18, 2005 12:05 pm&lt;SPAN class="gen"&gt;&amp;nbsp;&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN class="postdetails"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN class="postdetails"&gt;&lt;SPAN class="postbody"&gt;Yo People,&lt;BR /&gt;&lt;BR /&gt; &lt;A href="http://www.freegeeks.net/modules/Forums/images/smiles/icon_question.gif"&gt;&lt;IMG alt="Question" border="0" src="http://www.freegeeks.net/modules/Forums/images/smiles/icon_question.gif" /&gt;&lt;/A&gt; If you always wondered how you could keep something in RAM which won't always be re-initialize when you start your code...&lt;BR /&gt; Well this is an answer !&lt;BR /&gt; &lt;A href="http://www.freegeeks.net/modules/Forums/images/smiles/icon_arrow.gif"&gt;&lt;IMG alt="Arrow" border="0" src="http://www.freegeeks.net/modules/Forums/images/smiles/icon_arrow.gif" /&gt;&lt;/A&gt; You just need to declared a special area in your parameter file and the start-up softawre will not initialize this zone.&lt;BR /&gt; &lt;A href="http://www.freegeeks.net/modules/Forums/images/smiles/icon_idea.gif"&gt;&lt;IMG alt="Idea" border="0" src="http://www.freegeeks.net/modules/Forums/images/smiles/icon_idea.gif" /&gt;&lt;/A&gt; It's quite neat if you want to keep a count of the number of resets.&lt;BR /&gt;&lt;BR /&gt; &lt;A href="http://www.freegeeks.net/modules/Forums/images/smiles/icon_exclaim.gif"&gt;&lt;IMG alt="Exclamation" border="0" src="http://www.freegeeks.net/modules/Forums/images/smiles/icon_exclaim.gif" /&gt;&lt;/A&gt; &lt;A href="http://www.freegeeks.net/modules/Forums/images/smiles/icon_exclaim.gif"&gt;&lt;IMG alt="Exclamation" border="0" src="http://www.freegeeks.net/modules/Forums/images/smiles/icon_exclaim.gif" /&gt;&lt;/A&gt; But be careful as if you have a Low Voltage Reset or Power On Reset this value might be corrupted or may not be meaningful.&lt;BR /&gt;&lt;BR /&gt; In the PRM file&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class="j-rte-table"&gt;&lt;TABLE align="center" border="0" cellpadding="3" cellspacing="1" width="90%"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD style="border:0px solid black;"&gt;&lt;SPAN class="genmed"&gt;&lt;STRONG&gt;Code:&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="code" style="border:0px solid black;"&gt;SECTIONS&lt;BR /&gt;&amp;nbsp; &amp;nbsp; RESET_COUNTER = NO_INIT 0x1EFF TO 0x1EFF;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;SPAN class="postbody"&gt;&lt;/SPAN&gt;&lt;DIV&gt;&lt;BR /&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class="j-rte-table"&gt;&lt;TABLE align="center" border="0" cellpadding="3" cellspacing="1" width="90%"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD style="border:0px solid black;"&gt;&lt;SPAN class="genmed"&gt;&lt;STRONG&gt;Code:&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="code" style="border:0px solid black;"&gt;PLACEMENT&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;NON_INITIALISED&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;INTO EMC_RESET_COUNTER;&amp;nbsp; &amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;SPAN class="postbody"&gt;&lt;/SPAN&gt;&lt;DIV&gt;&lt;BR /&gt;And In the C code&lt;BR /&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class="j-rte-table"&gt;&lt;TABLE align="center" border="0" cellpadding="3" cellspacing="1" width="90%"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD style="border:0px solid black;"&gt;&lt;SPAN class="genmed"&gt;&lt;STRONG&gt;Code:&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="code" style="border:0px solid black;"&gt;/* global variables */&lt;BR /&gt;#pragma DATA_SEG NON_INITIALISED&lt;BR /&gt;unsigned char ResetCounter;&lt;BR /&gt;#pragma DATA_SEG DEFAULT&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;SPAN class="postbody"&gt;&lt;/SPAN&gt;&lt;DIV&gt;&lt;BR /&gt;&lt;BR /&gt;Enjoy,&lt;BR /&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN class="postdetails"&gt;&lt;STRONG&gt;Posted: Fri Nov 18, 2005 4:13 pm&lt;SPAN class="gen"&gt;&amp;nbsp;&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN class="postdetails"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN class="postdetails"&gt;Shouldn't the PLACEMENT be&lt;BR /&gt;&lt;BR /&gt; PLACEMENT&lt;BR /&gt; NON_INITIALISED INTO RESET_COUNTER;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt; instead of&lt;BR /&gt;&lt;BR /&gt; PLACEMENT&lt;BR /&gt; NON_INITIALISED INTO EMC_RESET_COUNTER;&lt;BR /&gt;&lt;BR /&gt; &lt;SPAN class="postdetails"&gt;&lt;STRONG&gt;Posted: Fri Nov 18, 2005 4:20 pm&lt;SPAN class="gen"&gt;&amp;nbsp;&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN class="postdetails"&gt;&lt;SPAN class="postdetails"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN class="postdetails"&gt;&lt;SPAN class="postdetails"&gt;is there an error in your PRM? I see a "EMC_RESET_COUNTER" and a "RESET_COUNTER". Are these supposed to be the same? Also, you don't have "DEFAULT" listed in your PRM, but I know what you mean.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN class="postdetails"&gt;&lt;SPAN class="postdetails"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN class="postdetails"&gt;&lt;SPAN class="postdetails"&gt;&lt;SPAN class="postdetails"&gt;&lt;STRONG&gt;Posted: Mon Nov 21, 2005 8:47 am&lt;SPAN class="gen"&gt;&amp;nbsp;&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN class="postdetails"&gt;&lt;SPAN class="postdetails"&gt;&lt;SPAN class="postdetails"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN class="postdetails"&gt;&lt;SPAN class="postdetails"&gt;&lt;SPAN class="postdetails"&gt;&lt;SPAN class="postbody"&gt;Yes it should be without the prefix EMC_ on the second time.&lt;BR /&gt; I forgot to remove it when I did my copy/paste from my source code.&lt;BR /&gt; I did not paste the rest of the prm file (default...) because the prm file is too big for me to paste it in a post.&lt;BR /&gt;&lt;BR /&gt; (bad copy/paste, bad...)&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 25 Jan 2006 04:52:12 GMT</pubDate>
    <dc:creator>RChapman</dc:creator>
    <dc:date>2006-01-25T04:52:12Z</dc:date>
    <item>
      <title>TIPS: Keep a variable beetween Resets</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/TIPS-Keep-a-variable-beetween-Resets/m-p/124070#M152</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;SPAN style="color: #ff0000;"&gt;This message contains an entire topic ported from a separate forum. The original message and all replies are in this single message. We have seeded this new forum with selected information that we expect will be of value to you as you search for answers to your questions.&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN class="postdetails"&gt;&lt;STRONG&gt;Posted: Fri Nov 18, 2005 12:05 pm&lt;SPAN class="gen"&gt;&amp;nbsp;&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN class="postdetails"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN class="postdetails"&gt;&lt;SPAN class="postbody"&gt;Yo People,&lt;BR /&gt;&lt;BR /&gt; &lt;A href="http://www.freegeeks.net/modules/Forums/images/smiles/icon_question.gif"&gt;&lt;IMG alt="Question" border="0" src="http://www.freegeeks.net/modules/Forums/images/smiles/icon_question.gif" /&gt;&lt;/A&gt; If you always wondered how you could keep something in RAM which won't always be re-initialize when you start your code...&lt;BR /&gt; Well this is an answer !&lt;BR /&gt; &lt;A href="http://www.freegeeks.net/modules/Forums/images/smiles/icon_arrow.gif"&gt;&lt;IMG alt="Arrow" border="0" src="http://www.freegeeks.net/modules/Forums/images/smiles/icon_arrow.gif" /&gt;&lt;/A&gt; You just need to declared a special area in your parameter file and the start-up softawre will not initialize this zone.&lt;BR /&gt; &lt;A href="http://www.freegeeks.net/modules/Forums/images/smiles/icon_idea.gif"&gt;&lt;IMG alt="Idea" border="0" src="http://www.freegeeks.net/modules/Forums/images/smiles/icon_idea.gif" /&gt;&lt;/A&gt; It's quite neat if you want to keep a count of the number of resets.&lt;BR /&gt;&lt;BR /&gt; &lt;A href="http://www.freegeeks.net/modules/Forums/images/smiles/icon_exclaim.gif"&gt;&lt;IMG alt="Exclamation" border="0" src="http://www.freegeeks.net/modules/Forums/images/smiles/icon_exclaim.gif" /&gt;&lt;/A&gt; &lt;A href="http://www.freegeeks.net/modules/Forums/images/smiles/icon_exclaim.gif"&gt;&lt;IMG alt="Exclamation" border="0" src="http://www.freegeeks.net/modules/Forums/images/smiles/icon_exclaim.gif" /&gt;&lt;/A&gt; But be careful as if you have a Low Voltage Reset or Power On Reset this value might be corrupted or may not be meaningful.&lt;BR /&gt;&lt;BR /&gt; In the PRM file&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class="j-rte-table"&gt;&lt;TABLE align="center" border="0" cellpadding="3" cellspacing="1" width="90%"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD style="border:0px solid black;"&gt;&lt;SPAN class="genmed"&gt;&lt;STRONG&gt;Code:&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="code" style="border:0px solid black;"&gt;SECTIONS&lt;BR /&gt;&amp;nbsp; &amp;nbsp; RESET_COUNTER = NO_INIT 0x1EFF TO 0x1EFF;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;SPAN class="postbody"&gt;&lt;/SPAN&gt;&lt;DIV&gt;&lt;BR /&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class="j-rte-table"&gt;&lt;TABLE align="center" border="0" cellpadding="3" cellspacing="1" width="90%"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD style="border:0px solid black;"&gt;&lt;SPAN class="genmed"&gt;&lt;STRONG&gt;Code:&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="code" style="border:0px solid black;"&gt;PLACEMENT&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;NON_INITIALISED&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;INTO EMC_RESET_COUNTER;&amp;nbsp; &amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;SPAN class="postbody"&gt;&lt;/SPAN&gt;&lt;DIV&gt;&lt;BR /&gt;And In the C code&lt;BR /&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV class="j-rte-table"&gt;&lt;TABLE align="center" border="0" cellpadding="3" cellspacing="1" width="90%"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD style="border:0px solid black;"&gt;&lt;SPAN class="genmed"&gt;&lt;STRONG&gt;Code:&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="code" style="border:0px solid black;"&gt;/* global variables */&lt;BR /&gt;#pragma DATA_SEG NON_INITIALISED&lt;BR /&gt;unsigned char ResetCounter;&lt;BR /&gt;#pragma DATA_SEG DEFAULT&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;SPAN class="postbody"&gt;&lt;/SPAN&gt;&lt;DIV&gt;&lt;BR /&gt;&lt;BR /&gt;Enjoy,&lt;BR /&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN class="postdetails"&gt;&lt;STRONG&gt;Posted: Fri Nov 18, 2005 4:13 pm&lt;SPAN class="gen"&gt;&amp;nbsp;&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN class="postdetails"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN class="postdetails"&gt;Shouldn't the PLACEMENT be&lt;BR /&gt;&lt;BR /&gt; PLACEMENT&lt;BR /&gt; NON_INITIALISED INTO RESET_COUNTER;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt; instead of&lt;BR /&gt;&lt;BR /&gt; PLACEMENT&lt;BR /&gt; NON_INITIALISED INTO EMC_RESET_COUNTER;&lt;BR /&gt;&lt;BR /&gt; &lt;SPAN class="postdetails"&gt;&lt;STRONG&gt;Posted: Fri Nov 18, 2005 4:20 pm&lt;SPAN class="gen"&gt;&amp;nbsp;&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN class="postdetails"&gt;&lt;SPAN class="postdetails"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN class="postdetails"&gt;&lt;SPAN class="postdetails"&gt;is there an error in your PRM? I see a "EMC_RESET_COUNTER" and a "RESET_COUNTER". Are these supposed to be the same? Also, you don't have "DEFAULT" listed in your PRM, but I know what you mean.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN class="postdetails"&gt;&lt;SPAN class="postdetails"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN class="postdetails"&gt;&lt;SPAN class="postdetails"&gt;&lt;SPAN class="postdetails"&gt;&lt;STRONG&gt;Posted: Mon Nov 21, 2005 8:47 am&lt;SPAN class="gen"&gt;&amp;nbsp;&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN class="postdetails"&gt;&lt;SPAN class="postdetails"&gt;&lt;SPAN class="postdetails"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN class="postdetails"&gt;&lt;SPAN class="postdetails"&gt;&lt;SPAN class="postdetails"&gt;&lt;SPAN class="postbody"&gt;Yes it should be without the prefix EMC_ on the second time.&lt;BR /&gt; I forgot to remove it when I did my copy/paste from my source code.&lt;BR /&gt; I did not paste the rest of the prm file (default...) because the prm file is too big for me to paste it in a post.&lt;BR /&gt;&lt;BR /&gt; (bad copy/paste, bad...)&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 25 Jan 2006 04:52:12 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/TIPS-Keep-a-variable-beetween-Resets/m-p/124070#M152</guid>
      <dc:creator>RChapman</dc:creator>
      <dc:date>2006-01-25T04:52:12Z</dc:date>
    </item>
  </channel>
</rss>

