<?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>S12 / MagniV MicrocontrollersのトピックRe: My code will crash in normal mode.But ok under SS mode.</title>
    <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/My-code-will-crash-in-normal-mode-But-ok-under-SS-mode/m-p/194868#M7708</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;THANKS.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sun, 25 Apr 2010 15:22:47 GMT</pubDate>
    <dc:creator>100asong</dc:creator>
    <dc:date>2010-04-25T15:22:47Z</dc:date>
    <item>
      <title>My code will crash in normal mode.But ok under SS mode.</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/My-code-will-crash-in-normal-mode-But-ok-under-SS-mode/m-p/194866#M7706</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The code is here:&lt;/P&gt;&lt;P&gt;;Here parameters:&lt;BR /&gt;;1,params(byte); 2, ccob0high(byte); 3 ccob0low(byte);4 ccob1(word);5 ccob2(word);6 ccob3(word);7 ccob4(word);&lt;BR /&gt;;8 ccob5(word);9&amp;nbsp; ccob6(word);10 ccob7(word);&lt;BR /&gt;;LaunchComBuff: fixed memory to Program flash,the above parameter store in it.&lt;BR /&gt;LaunchFlashCommand:&lt;BR /&gt;&amp;nbsp; ;pshd&lt;BR /&gt;&amp;nbsp; ;pshx&lt;BR /&gt;&amp;nbsp; ;pshy&lt;BR /&gt;&amp;nbsp; leax LaunchComBuff,pcr&lt;BR /&gt;&amp;nbsp; ;jsr Delay32nop,pcr&lt;BR /&gt;&amp;nbsp; ;check FCLKDIV&amp;amp;0x80&lt;BR /&gt;&amp;nbsp; ldaa FCLKDIV&lt;BR /&gt;&amp;nbsp; brset FCLKDIV,#mFCLKDIV_FDIVLD,Wait_CCIF0 ;if set,jump&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;else,run here&lt;BR /&gt;&amp;nbsp; ldaa #FCLK_DIV_4M&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; staa FCLKDIV&lt;BR /&gt;&amp;nbsp; ;if(FCLKDIV != (FCLK_DIV | 0x80))//Check to make sure value is written.&lt;BR /&gt;&amp;nbsp; ;ReportError(0);&lt;BR /&gt;&amp;nbsp; oraa&amp;nbsp; #$80&lt;BR /&gt;&amp;nbsp; cmpa FCLKDIV;check FCLKDIV is FCLK_DIV | 0x80&lt;BR /&gt;&amp;nbsp; bne ret_Launch;if not equ,return&lt;BR /&gt;&amp;nbsp;; jsr Delay32nop,pcr&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;Wait_CCIF0:&lt;BR /&gt;&amp;nbsp; brclr FSTAT,#mFSTAT_CCIF,Wait_CCIF0;if this bit is 0x0,wait here. Wait a while for CCIF to be set&lt;/P&gt;&lt;P&gt;&amp;nbsp; brclr FSTAT,#mFSTAT_CCIF,ret_Launch;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; ldaa #$030&lt;BR /&gt;&amp;nbsp; staa FSTAT;Use store instruction to clear ACCERR, FPVIOL.&lt;BR /&gt;&amp;nbsp;; jsr Delay32nop,pcr&lt;BR /&gt;&amp;nbsp; ;**********SET UP THE FTM COMMAND AND PARAMETERS***********&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; clr FCCOBIX&lt;BR /&gt;&amp;nbsp; ;clra&lt;BR /&gt;&amp;nbsp; ldab 1,x&lt;BR /&gt;&amp;nbsp; stab FCCOBHI&lt;BR /&gt;&amp;nbsp; ;inca&lt;BR /&gt;&amp;nbsp; ldab 2,x&lt;BR /&gt;&amp;nbsp; stab FCCOBLO&lt;BR /&gt;&amp;nbsp; ldab 0,x&lt;BR /&gt;&amp;nbsp; beq Con_Oper;if param == 0，return&lt;/P&gt;&lt;P&gt;&amp;nbsp; ldaa #$03&amp;nbsp;&lt;BR /&gt;&amp;nbsp; ;jsr Delay32nop,pcr&lt;BR /&gt;Write_CCOB:&lt;BR /&gt;&amp;nbsp; nop&lt;BR /&gt;&amp;nbsp; nop&lt;BR /&gt;&amp;nbsp; inc FCCOBIX&lt;BR /&gt;&amp;nbsp; ldy a,x&lt;BR /&gt;&amp;nbsp; sty FCCOB;Write next word parameter to CCOB1 buffer.&lt;BR /&gt;&amp;nbsp; inca&lt;BR /&gt;&amp;nbsp; inca&amp;nbsp;&lt;BR /&gt;&amp;nbsp; decb&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;because register store param number&lt;BR /&gt;&amp;nbsp; beq Con_Oper;if b is 0,return&amp;nbsp;&lt;BR /&gt;&amp;nbsp; bra Write_CCOB&lt;/P&gt;&lt;P&gt;;The code in flash&amp;nbsp;&lt;BR /&gt;;Con_Oper:&amp;nbsp;&amp;nbsp;&lt;BR /&gt;;&amp;nbsp; ldaa #$80&lt;BR /&gt;;&amp;nbsp; staa FSTAT&lt;BR /&gt;;Wait_CCIF:&lt;BR /&gt;;&amp;nbsp; brclr FSTAT,#mFSTAT_CCIF,Wait_CCIF&amp;nbsp;&amp;nbsp;&amp;nbsp; ;while (!FSTAT_CCIF);&lt;BR /&gt;Con_Oper:&lt;BR /&gt;&amp;nbsp; jsr PrgOfRam,pcr&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;wait_Here:&lt;BR /&gt;&amp;nbsp; brset FSTAT,#mFSTAT_ACCERR,wait_Here&lt;BR /&gt;&amp;nbsp; brset FSTAT,#mFSTAT_FPVIOL,wait_Here&lt;BR /&gt;&amp;nbsp; brset FSTAT,#mFSTAT_MGSTAT1,wait_Here&lt;BR /&gt;&amp;nbsp; brset FERSTAT,#mFERSTAT_ERSERIF,wait_Here&lt;BR /&gt;&amp;nbsp; brset FERSTAT,#mFERSTAT_PGMERIF,wait_Here&lt;BR /&gt;&amp;nbsp; brset FERSTAT,#mFERSTAT_EPVIOLIF,wait_Here&lt;BR /&gt;&amp;nbsp; brset FERSTAT,#mFERSTAT_ERSVIF1,wait_Here&lt;BR /&gt;&amp;nbsp; brset FERSTAT,#mFERSTAT_DFDIF,wait_Here&lt;BR /&gt;&amp;nbsp; brset FERSTAT,#mFERSTAT_SFDIF,wait_Here&lt;BR /&gt;&amp;nbsp; ;jsr Delay32nop,pcr&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;ret_Launch:&lt;BR /&gt;&amp;nbsp; ;puly&lt;BR /&gt;&amp;nbsp; ;pulx&lt;BR /&gt;&amp;nbsp; ;puld&lt;BR /&gt;&amp;nbsp; rts&lt;BR /&gt;;LaunchFlashCommand&lt;BR /&gt;;*************************************************************************************************************&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It can run normally under BDM mode,but it will crash when we run it in normal mode.&lt;/P&gt;&lt;P&gt;Please help me.Thanks.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 23 Apr 2010 08:35:46 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/My-code-will-crash-in-normal-mode-But-ok-under-SS-mode/m-p/194866#M7706</guid>
      <dc:creator>100asong</dc:creator>
      <dc:date>2010-04-23T08:35:46Z</dc:date>
    </item>
    <item>
      <title>Re: My code will crash in normal mode.But ok under SS mode.</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/My-code-will-crash-in-normal-mode-But-ok-under-SS-mode/m-p/194867#M7707</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;The problem is that FCLKDIV is a "write-once" register, meaning you are only allowed to write to it once during program execution, after that it turns read-only. Solve this by doing all calculations in a temporary variable, which you write down to FCLKDIV when everything is ok. Special single chip mode overrides "write-once" behavior, so that's why it works in that mode.&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 23 Apr 2010 18:32:42 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/My-code-will-crash-in-normal-mode-But-ok-under-SS-mode/m-p/194867#M7707</guid>
      <dc:creator>Lundin</dc:creator>
      <dc:date>2010-04-23T18:32:42Z</dc:date>
    </item>
    <item>
      <title>Re: My code will crash in normal mode.But ok under SS mode.</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/My-code-will-crash-in-normal-mode-But-ok-under-SS-mode/m-p/194868#M7708</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;THANKS.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 25 Apr 2010 15:22:47 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/My-code-will-crash-in-normal-mode-But-ok-under-SS-mode/m-p/194868#M7708</guid>
      <dc:creator>100asong</dc:creator>
      <dc:date>2010-04-25T15:22:47Z</dc:date>
    </item>
    <item>
      <title>Re: My code will crash in normal mode.But ok under SS mode.</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/My-code-will-crash-in-normal-mode-But-ok-under-SS-mode/m-p/194869#M7709</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,Sir&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Thanks for your help.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I have 2 question:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;1.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I modified the code as followed.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Just like code:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;IN BDM nmode,must use these 2 lines.&amp;nbsp;It will write the flash sucessfully(I can find the data in debug momory window)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ldab #48&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;stab FSTAT;Use store instruction to clear ACCERR, FPVIOL.&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if I use&amp;nbsp;&amp;nbsp; the following code:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bset FSTAT,#mFSTAT_ACCERR&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;bset FSTAT,#mFSTAT_FPVIOL&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Data can not been writen into flash.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; But in NS mode,I must use these 2 lines,or crash.&lt;BR /&gt;&amp;nbsp; bset FSTAT,#mFSTAT_ACCERR&lt;BR /&gt;&amp;nbsp; bset FSTAT,#mFSTAT_FPVIOL&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;2.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; IN BDM,I muse use memory data &lt;IMG alt=":smileytongue:" class="emoticon emoticon-smileytongue" id="smileytongue" src="http://freescale.i.lithium.com/i/smilies/16x16_smiley-tongue.gif" title="Smiley Tongue" /&gt;rgOfRam:dc.b $1C,$01,$06,$80,$1F,$01,$06,$80,$FB,$3D, to replace the following code:&lt;/P&gt;&lt;P&gt;bset FSTAT,#mFSTAT_CCIF&lt;BR /&gt;Wait_CCIF:&lt;BR /&gt;brclr FSTAT,#mFSTAT_CCIF,Wait_CCIF;if this bit is 0x0,wait here. Wait a while for CCIF to be set&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;But in NS,if i use PrgOfRam,the code will crash.&lt;/P&gt;&lt;P&gt;&amp;nbsp;I must use these 3 lines in NS.&lt;/P&gt;&lt;P&gt;bset FSTAT,#mFSTAT_CCIF&lt;BR /&gt;Wait_CCIF:&lt;BR /&gt;brclr FSTAT,#mFSTAT_CCIF,Wait_CCIF;if this bit is 0x0,wait here. Wait a while for CCIF to be set&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;But this way,NS can not write the data into flash successfully.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Please check the following code.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks for your help.&lt;/P&gt;&lt;P&gt;Please give me support when you are free. I am urgent about it.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;;*************************************************************************************************************&lt;BR /&gt;;stack to store parameter.&lt;BR /&gt;;Here parameters:&lt;BR /&gt;;1,params(byte); 2, ccob0high(byte); 3 ccob0low(byte);4 ccob1(word);5 ccob2(word);6 ccob3(word);7 ccob4(word);&lt;BR /&gt;;8 ccob5(word);9&amp;nbsp; ccob6(word);10 ccob7(word);&lt;BR /&gt;;LaunchComBuff: fixed memory to Program flash,the above parameter store in it.&lt;BR /&gt;LaunchFlashCommand: equ *&lt;BR /&gt;&amp;nbsp; ;pshd&lt;BR /&gt;&amp;nbsp; ;pshx&lt;BR /&gt;&amp;nbsp; ;pshy&lt;BR /&gt;&amp;nbsp; leax LaunchComBuff,pcr&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;BR /&gt;Wait_CCIF0:&lt;BR /&gt;&amp;nbsp; brclr FSTAT,#mFSTAT_CCIF,Wait_CCIF0;if this bit is 0x0,wait here. Wait a while for CCIF to be set&lt;/P&gt;&lt;P&gt;&amp;nbsp; ;brclr FSTAT,#mFSTAT_CCIF,ret_Launch;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; ;BDM,must use these 2 lines. or CAN not write into flash.&lt;BR /&gt;&amp;nbsp; ;ldab #48&lt;BR /&gt;&amp;nbsp; ;stab FSTAT;Use store instruction to clear ACCERR, FPVIOL.&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; ;NS,must use these 2 lines.or crash.&lt;BR /&gt;&amp;nbsp; bset FSTAT,#mFSTAT_ACCERR&lt;BR /&gt;&amp;nbsp; bset FSTAT,#mFSTAT_FPVIOL&lt;/P&gt;&lt;P&gt;&amp;nbsp; ;**********SET UP THE FTM COMMAND AND PARAMETERS***********&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; bclr FCCOBIX,#mFCCOBIX_CCOBIX0&lt;BR /&gt;&amp;nbsp; bclr FCCOBIX,#mFCCOBIX_CCOBIX1&lt;BR /&gt;&amp;nbsp; bclr FCCOBIX,#mFCCOBIX_CCOBIX2&lt;BR /&gt;&amp;nbsp; ;clra&lt;BR /&gt;&amp;nbsp; ldab 1,x&lt;BR /&gt;&amp;nbsp; stab FCCOBHI&lt;BR /&gt;&amp;nbsp; ;inca&lt;BR /&gt;&amp;nbsp; ldab 2,x&lt;BR /&gt;&amp;nbsp; stab FCCOBLO&lt;BR /&gt;&amp;nbsp; ldab 0,x&lt;BR /&gt;&amp;nbsp; beq Con_Oper;if param == 0，return&lt;/P&gt;&lt;P&gt;&amp;nbsp; ldaa #$03&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;Write_CCOB:&lt;BR /&gt;&amp;nbsp; nop&lt;BR /&gt;&amp;nbsp; nop&lt;BR /&gt;&amp;nbsp; inc FCCOBIX&lt;BR /&gt;&amp;nbsp; ldy a,x&lt;BR /&gt;&amp;nbsp; sty FCCOB;Write next word parameter to CCOB1 buffer.&lt;BR /&gt;&amp;nbsp; inca&lt;BR /&gt;&amp;nbsp; inca&amp;nbsp;&lt;BR /&gt;&amp;nbsp; decb&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;because register store param number&lt;BR /&gt;&amp;nbsp; beq Con_Oper;if b is 0,return&amp;nbsp;&lt;BR /&gt;&amp;nbsp; bra Write_CCOB&lt;/P&gt;&lt;P&gt;Con_Oper:&lt;BR /&gt;&amp;nbsp; ;BMD,use the following code,write ok.&lt;BR /&gt;&amp;nbsp; jmp PrgOfRam,pcr&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; ;NS,use the following code,CAN communication is okay,but not write ok.&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; ;bset FSTAT,#mFSTAT_CCIF&lt;BR /&gt;;Wait_CCIF:&lt;BR /&gt;&amp;nbsp;; brclr FSTAT,#mFSTAT_CCIF,Wait_CCIF;if this bit is 0x0,wait here. Wait a while for CCIF to be set&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;ret_Launch:&lt;BR /&gt;&amp;nbsp; ;puly&lt;BR /&gt;&amp;nbsp; ;pulx&lt;BR /&gt;&amp;nbsp; ;puld&lt;BR /&gt;&amp;nbsp; rts&lt;BR /&gt;;LaunchFlashCommand&lt;BR /&gt;;*************************************************************************************************************&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 25 Apr 2010 17:24:28 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/My-code-will-crash-in-normal-mode-But-ok-under-SS-mode/m-p/194869#M7709</guid>
      <dc:creator>100asong</dc:creator>
      <dc:date>2010-04-25T17:24:28Z</dc:date>
    </item>
    <item>
      <title>Re: My code will crash in normal mode.But ok under SS mode.</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/My-code-will-crash-in-normal-mode-But-ok-under-SS-mode/m-p/194870#M7710</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;1) It is not clear what does "crash" mean. Does MCU reset?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It is OK to clear error flags like this&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; LDAB&amp;nbsp; #mFSTAT_ACCERR&amp;nbsp;| mFSTAT_PVIOL&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;STAB&amp;nbsp; FSTAT&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Or like this&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; MOVB&amp;nbsp;&amp;nbsp; #mFSTAT_ACCERR&amp;nbsp;| mFSTAT_PVIOL, FSTAT&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;But it is NOT OK to clear ACCERR this way&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; BSET&amp;nbsp; FSTAT, #mFSTAT_ACCERR&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;In case CCIF flag is set, BSET will write "1" not only to ACCERR, but also to CCIF! You want to clear ACCERR, but code will write "1" also to CCIF, trying to launch flash command.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This code will clear only ACCERR&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; BCLR&amp;nbsp;&amp;nbsp; FSTAT, #~mFSTAT_ACCERR&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;2) Do you initialize bytes in RAM at PrgOfRam? dc.b directive is good to put some bytes to flash. But dc.b doesn't initialize RAM after&amp;nbsp;power is applied to MCU. Debugger may load RAM once, but after power is removed PrgOfRam will be destroyed. You have to initialize it after MCU resets.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 26 Apr 2010 00:18:31 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/My-code-will-crash-in-normal-mode-But-ok-under-SS-mode/m-p/194870#M7710</guid>
      <dc:creator>kef</dc:creator>
      <dc:date>2010-04-26T00:18:31Z</dc:date>
    </item>
    <item>
      <title>Re: My code will crash in normal mode.But ok under SS mode.</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/My-code-will-crash-in-normal-mode-But-ok-under-SS-mode/m-p/194871#M7711</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks for your help.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Crash means program run into accidental address,program breakdown.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;My MCU is mc9s12xep100.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I define&amp;nbsp;it like here:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;org&amp;nbsp;$2100&lt;/P&gt;&lt;P&gt;PrgOfRam:dc.b $1C,$01,$06,$80,$1F,$01,$06,$80,$FB,$3D.&lt;/P&gt;&lt;P&gt;I thinks it&amp;nbsp;is stored in&amp;nbsp;&amp;nbsp;&amp;nbsp;address from 0x2100.&lt;/P&gt;&lt;P&gt;You mean debug will load it once and then BDM is okay,but NS can not&amp;nbsp;init it? The data will be destroyed in NS.&lt;/P&gt;&lt;P&gt;How to init it after reset in NS mode.How to replace of dc.b to define some constant in memory?&lt;/P&gt;&lt;P&gt;Please give me way,thanks.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 26 Apr 2010 08:41:55 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/My-code-will-crash-in-normal-mode-But-ok-under-SS-mode/m-p/194871#M7711</guid>
      <dc:creator>100asong</dc:creator>
      <dc:date>2010-04-26T08:41:55Z</dc:date>
    </item>
    <item>
      <title>Re: My code will crash in normal mode.But ok under SS mode.</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/My-code-will-crash-in-normal-mode-But-ok-under-SS-mode/m-p/194872#M7712</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;org&amp;nbsp;$2100&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PrgOfRam:dc.b $1C,$01,$06,$80,$1F,$01,$06,$80,$FB,$3D.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I thinks it&amp;nbsp;is stored in&amp;nbsp;&amp;nbsp;&amp;nbsp;address from 0x2100.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Yes, PrgOfRam is allocated at 0x2100. But ProgOfRam is allocated in RAM and thus you should initialize contents of PrgOfRam routine each time CPU resets. Allocate the copy&amp;nbsp;of PrgOfRam in flash and copy it to PrgOfRam on reset.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 26 Apr 2010 10:49:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/My-code-will-crash-in-normal-mode-But-ok-under-SS-mode/m-p/194872#M7712</guid>
      <dc:creator>kef</dc:creator>
      <dc:date>2010-04-26T10:49:15Z</dc:date>
    </item>
    <item>
      <title>Re: My code will crash in normal mode.But ok under SS mode.</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/My-code-will-crash-in-normal-mode-But-ok-under-SS-mode/m-p/194873#M7713</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;ok.I get to know.Thanks for your help&lt;IMG alt=":smileyindifferent:" class="emoticon emoticon-smileyindifferent" id="smileyindifferent" src="http://freescale.i.lithium.com/i/smilies/16x16_smiley-indifferent.gif" title="Smiley Indifferent" /&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 26 Apr 2010 17:56:20 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/My-code-will-crash-in-normal-mode-But-ok-under-SS-mode/m-p/194873#M7713</guid>
      <dc:creator>100asong</dc:creator>
      <dc:date>2010-04-26T17:56:20Z</dc:date>
    </item>
    <item>
      <title>another question:I want to set the data 0xCF,0xFF,0xFF,0xFE to address 0xFF0C--0xFF0F.</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/My-code-will-crash-in-normal-mode-But-ok-under-SS-mode/m-p/194874#M7714</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;In asm,can I finish it by the following code:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; org $FF0C&lt;/P&gt;&lt;P&gt;ProtectFlash: dc.b $CF,$FF,$FF,$FE.&lt;/P&gt;&lt;P&gt;I try it.But I found 0x00 at address 0xFF00-0xffff.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;How can i do for this aim in asm.&lt;/P&gt;&lt;P&gt;Please help me.Thanks a lot.&lt;IMG alt=":smileyhappy:" class="emoticon emoticon-smileyhappy" id="smileyhappy" src="http://freescale.i.lithium.com/i/smilies/16x16_smiley-happy.gif" title="Smiley Happy" /&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;AsongLi.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 26 Apr 2010 18:24:47 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/My-code-will-crash-in-normal-mode-But-ok-under-SS-mode/m-p/194874#M7714</guid>
      <dc:creator>100asong</dc:creator>
      <dc:date>2010-04-26T18:24:47Z</dc:date>
    </item>
  </channel>
</rss>

