<?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>CodeWarrior for MCUのトピックRe: S08DZ60 MSCAN initialization</title>
    <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140444#M2467</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;Hello,&lt;BR /&gt;&lt;BR /&gt;Small question :&lt;BR /&gt;Why did you enable LISTEN mode first, then disable it?&lt;BR /&gt;&lt;BR /&gt;I did that (it's asm but easy to understand) and it works.&lt;BR /&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;DIV class="msg_source_code"&gt;&lt;DIV class="text_smallest"&gt;Code:&lt;/DIV&gt;&lt;PRE&gt;;*********************************************************************;*************************** Config CAN bus **************************;*********************************************************************;*********************************************************************;*    SYNC=1   *    PROPSEG = 2    *    PSEG1 = 6   *    PSEG 2 = 7  *;*********************************************************************;              &amp;lt;------------- TSEG1 = 8 ------------&amp;gt;&amp;lt;-- TSEG2 = 7 --&amp;gt;;&amp;lt;------------------------ Bit Time = 16 x S ------------------------&amp;gt;;*********************************************************************        LDA   #mCANCTL0_INITRQ        STA   CANCTL0                   ; Mode Init rqstWaitInitMode:        LDA   CANCTL1                   ; Wait for init acknowledge        AND   #mCANCTL1_INITAK        BEQ   WaitInitMode        LDA   #$80                      ;        STA   CANCTL1                   ; Enable CAN in normal mode        LDA   #$67        STA   CANBTR1                   ; Set sampling point &amp;amp; TSEG fields        LDA   #$03        STA   CANBTR0                   ; Set Sync field &amp;amp; Baud rate        LDA   #$10        STA   CANIDAC                   ; Four 16bits acceptance filter        LDA   #$FE                      ;------------------        STA   CANIDAR0                  ;        STA   CANIDAR2                  ;        STA   CANIDAR4                  ;        STA   CANIDAR6                  ;Set Identifier        LDA   #$00                      ;acceptance register        STA   CANIDAR1                  ;        STA   CANIDAR3                  ;        STA   CANIDAR5                  ;        STA   CANIDAR7                  ;------------------        LDA   #$01                      ;        STA   CANIDMR0                  ;        STA   CANIDMR2                  ;        STA   CANIDMR4                  ;        STA   CANIDMR6                  ;Set acceptance mask register        LDA   #$FF                      ;            STA   CANIDMR1                  ;        STA   CANIDMR3                  ;        STA   CANIDMR5                  ;        STA   CANIDMR7                  ;------------------        CLRA        STA   CANCTL0                   ; enter run modeWaitInitAck:        LDA   CANCTL1                   ; Wait for init acknowledge cleared        AND   #mCANCTL1_INITAK        BNE   WaitInitAckWaitSyncCAN:        LDA   CANCTL0                   ; Wait for Synchro CAN         AND   #mCANCTL0_SYNCH        BEQ   WaitSyncCAN        BRA   BCKGND&lt;/PRE&gt;&lt;/DIV&gt;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;Emmanuel&lt;BR /&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 29 Oct 2020 08:40:43 GMT</pubDate>
    <dc:creator>Nouchi</dc:creator>
    <dc:date>2020-10-29T08:40:43Z</dc:date>
    <item>
      <title>S08DZ60 MSCAN initialization</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140439#M2462</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt; &lt;/DIV&gt;&lt;DIV&gt;Hello S08-prgrammers!&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;using the code generated by the device-initialization&amp;nbsp;is not bad at all.&lt;/DIV&gt;&lt;DIV&gt;But I still have a problem with the MSCAN-initialization.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;The generated code ist the following:&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV class="msg_source_code"&gt;&lt;DIV class="text_smallest"&gt;Code:&lt;/DIV&gt;&lt;PRE&gt; /* ### Init_MSCAN init code */&amp;nbsp; /* CANCTL0: INITRQ=1 */&amp;nbsp; CANCTL0 |= (unsigned char)0x01;&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; while(!CANCTL1_INITAK) {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Wait for init acknowledge */&amp;nbsp; }&amp;nbsp; /* CANCTL1: CANE=1,CLKsrc=0,LOOPB=0,LISTEN=0,BORM=0,WUPM=0,SLPAK=0,INITAK=1 */&amp;nbsp; CANCTL1 = 0x91;&amp;nbsp;&amp;nbsp; CANCTL1_LISTEN = 0;&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;&amp;nbsp; /* CANBTR1: SAMP=0,TSEG22=0,TSEG21=0,TSEG20=0,TSEG13=0,TSEG12=0,TSEG11=0,TSEG10=1 */&amp;nbsp; CANBTR1 = 0x01;&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;&amp;nbsp;&amp;nbsp; /* CANBTR0: SJW1=0,SJW0=0,BRP5=0,BRP4=0,BRP3=0,BRP2=0,BRP1=0,BRP0=1 */&amp;nbsp; CANBTR0 = 0x01;&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;&amp;nbsp;&amp;nbsp; /* CANIDAC: IDAM1=0,IDAM0=1,IDHIT2=0,IDHIT1=0,IDHIT0=0 */&amp;nbsp; CANIDAC = 0x10;&amp;nbsp;&amp;nbsp;&amp;nbsp; CANIDAC_IDAM0=1;&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; /* CANIDAR0: AC7=0,AC6=0,AC5=0,AC4=0,AC3=0,AC2=0,AC1=0,AC0=0 */&amp;nbsp; CANIDAR0 = 0x00;&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;&amp;nbsp;&amp;nbsp; /* CANIDAR1: AC7=0,AC6=0,AC5=0,AC4=0,AC3=0,AC2=0,AC1=0,AC0=0 */&amp;nbsp; CANIDAR1 = 0x00;&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;&amp;nbsp;&amp;nbsp; /* CANIDAR2: AC7=0,AC6=0,AC5=0,AC4=0,AC3=0,AC2=0,AC1=0,AC0=0 */&amp;nbsp; CANIDAR2 = 0x00;&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;&amp;nbsp;&amp;nbsp; /* CANIDAR3: AC7=0,AC6=0,AC5=0,AC4=0,AC3=0,AC2=0,AC1=0,AC0=0 */&amp;nbsp; CANIDAR3 = 0x00;&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;&amp;nbsp;&amp;nbsp; /* CANIDAR4: AC7=0,AC6=0,AC5=0,AC4=0,AC3=0,AC2=0,AC1=0,AC0=0 */&amp;nbsp; CANIDAR4 = 0x00;&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;&amp;nbsp;&amp;nbsp; /* CANIDAR5: AC7=0,AC6=0,AC5=0,AC4=0,AC3=0,AC2=0,AC1=0,AC0=0 */&amp;nbsp; CANIDAR5 = 0x00;&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;&amp;nbsp;&amp;nbsp; /* CANIDAR6: AC7=0,AC6=0,AC5=0,AC4=0,AC3=0,AC2=0,AC1=0,AC0=0 */&amp;nbsp; CANIDAR6 = 0x00;&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;&amp;nbsp;&amp;nbsp; /* CANIDAR7: AC7=0,AC6=0,AC5=0,AC4=0,AC3=0,AC2=0,AC1=0,AC0=0 */&amp;nbsp; CANIDAR7 = 0x00;&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;&amp;nbsp;&amp;nbsp; /* CANIDMR0: AM7=0,AM6=0,AM5=0,AM4=0,AM3=0,AM2=0,AM1=0,AM0=0 */&amp;nbsp; CANIDMR0 = 0x00;&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;&amp;nbsp;&amp;nbsp; /* CANIDMR1: AM7=0,AM6=0,AM5=0,AM4=0,AM3=0,AM2=0,AM1=0,AM0=0 */&amp;nbsp; CANIDMR1 = 0x00;&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;&amp;nbsp;&amp;nbsp; /* CANIDMR2: AM7=0,AM6=0,AM5=0,AM4=0,AM3=0,AM2=0,AM1=0,AM0=0 */&amp;nbsp; CANIDMR2 = 0x00;&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;&amp;nbsp;&amp;nbsp; /* CANIDMR3: AM7=0,AM6=0,AM5=0,AM4=0,AM3=0,AM2=0,AM1=0,AM0=0 */&amp;nbsp; CANIDMR3 = 0x00;&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;&amp;nbsp;&amp;nbsp; /* CANIDMR4: AM7=0,AM6=0,AM5=0,AM4=0,AM3=0,AM2=0,AM1=0,AM0=0 */&amp;nbsp; CANIDMR4 = 0x00;&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;&amp;nbsp;&amp;nbsp; /* CANIDMR5: AM7=0,AM6=0,AM5=0,AM4=0,AM3=0,AM2=0,AM1=0,AM0=0 */&amp;nbsp; CANIDMR5 = 0x00;&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;&amp;nbsp;&amp;nbsp; /* CANIDMR6: AM7=0,AM6=0,AM5=0,AM4=0,AM3=0,AM2=0,AM1=0,AM0=0 */&amp;nbsp; CANIDMR6 = 0x00;&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;&amp;nbsp;&amp;nbsp; /* CANIDMR7: AM7=0,AM6=0,AM5=0,AM4=0,AM3=0,AM2=0,AM1=0,AM0=0 */&amp;nbsp; CANIDMR7 = 0x00;&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;&amp;nbsp;&amp;nbsp; /* CANCTL0: INITRQ=0 */&amp;nbsp; CANCTL0 &amp;amp;= (unsigned char)~0x01;&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; // here's the PROBLEM PROBLEM PROBLEM LINE
 while(CANCTL1_INITAK) {&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; /* Wait for init exit */&amp;nbsp; }&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* CANCTL0: RXFRM=0,RXACT=0,CSWAI=0,SYNCH=0,TIME=0,WUPE=0,SLPRQ=0,INITRQ=0 */&amp;nbsp; CANCTL0 = 0x00;&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;&amp;nbsp;&amp;nbsp; /* CANRIER: WUPIE=0,CSCIE=0,RSTATE1=0,RSTATE0=0,TSTATE1=0,TSTATE0=0,OVRIE=0,RXFIE=0 */&amp;nbsp; CANRIER = 0x00;&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;&amp;nbsp;&amp;nbsp; /* CANTIER: TXEIE2=0,TXEIE1=0,TXEIE0=1 */&amp;nbsp; CANTIER = 0x01;&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;&amp;nbsp;&amp;nbsp; /* ### */&lt;/PRE&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt;Everything seems to be okay, but when the&amp;nbsp; code reaches the problem-line&lt;/DIV&gt;&lt;DIV&gt;while(CANCTL1_INITAK) { }&lt;/DIV&gt;&lt;DIV&gt;the program is hanging up,&amp;nbsp;the INITAK-bit is never cleared (neither in background debug mode&amp;nbsp;nor in&amp;nbsp;normal run mode)...&amp;nbsp;As this is a read-only bit it's a bit&amp;nbsp;difficult to change it by hand &lt;A href="http://freescale.i.lithium.com/i/smilies/16x16_smiley-happy.gif" rel="nofollow noopener noreferrer noopener noreferrer" target="_blank"&gt;&lt;IMG alt=":smileyhappy:" class="emoticon emoticon-smileyhappy" src="http://freescale.i.lithium.com/i/smilies/16x16_smiley-happy.gif" title="Smiley Happy" /&gt;&lt;/A&gt; ...&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;What is the reason for this bit to stay set forever? It's a standard MSCAN initialization code from the device-initialization tool however.&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;need some help!&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Thanks,&lt;/DIV&gt;&lt;DIV&gt;Johannes&amp;nbsp;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 Oct 2020 08:40:42 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140439#M2462</guid>
      <dc:creator>ohanica</dc:creator>
      <dc:date>2020-10-29T08:40:42Z</dc:date>
    </item>
    <item>
      <title>Re: S08DZ60 MSCAN initialization</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140440#M2463</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;anybody any suggestions?&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;thanks,&lt;/DIV&gt;&lt;DIV&gt;Johannes&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Jul 2007 13:35:31 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140440#M2463</guid>
      <dc:creator>ohanica</dc:creator>
      <dc:date>2007-07-19T13:35:31Z</dc:date>
    </item>
    <item>
      <title>Re: S08DZ60 MSCAN initialization</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140441#M2464</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;Hello,&lt;BR /&gt;&lt;BR /&gt;Yes, the suggestion is to look at what the bit means !&lt;BR /&gt;&lt;BR /&gt;If you don't have a bus on which to synchronize, it won't work.&lt;BR /&gt;Otherwise it's almost in an instant.&lt;BR /&gt;&lt;BR /&gt;Alban.&lt;BR /&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Jul 2007 15:09:53 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140441#M2464</guid>
      <dc:creator>Alban</dc:creator>
      <dc:date>2007-07-19T15:09:53Z</dc:date>
    </item>
    <item>
      <title>Re: S08DZ60 MSCAN initialization</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140442#M2465</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;Hello Alban,&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;thanks for the reply!&lt;/DIV&gt;&lt;DIV&gt;I tried to run the program with the CANalyzer connected to the CAN-Port and which was turned on, so the bus is active. It did not work.&lt;/DIV&gt;&lt;DIV&gt;I guess it is that typical&amp;nbsp;kind of problems where you don't think of the reason....&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;mg,&lt;/DIV&gt;&lt;DIV&gt;Johannes&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Jul 2007 15:15:30 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140442#M2465</guid>
      <dc:creator>ohanica</dc:creator>
      <dc:date>2007-07-19T15:15:30Z</dc:date>
    </item>
    <item>
      <title>Re: S08DZ60 MSCAN initialization</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140443#M2466</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;Hello again!&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;I tried (nearly) everything. Running the program in debug-mode, normal run-mode, with and without connected bus, but it is not working. The only thing I didn't try is the way it works &lt;IMG alt=":smileysad:" class="emoticon emoticon-smileysad" id="smileysad" src="http://freescale.i.lithium.com/i/smilies/16x16_smiley-sad.gif" title="Smiley Sad" /&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;The INITRQ and INITAK bits are set right from the beginning of the program. Before I enter the first line these two bits are already set. I can clear and set the INITRQ, but I cannot set the system such that it makes the INITAK=0. Which means the uC cannot synchronize/connect to the bus... The CANalyzer is on, and connected.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;I've got not many ideas what to do now...&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;best,&lt;/DIV&gt;&lt;DIV&gt;Johannes&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Jul 2007 16:29:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140443#M2466</guid>
      <dc:creator>ohanica</dc:creator>
      <dc:date>2007-07-19T16:29:09Z</dc:date>
    </item>
    <item>
      <title>Re: S08DZ60 MSCAN initialization</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140444#M2467</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;Hello,&lt;BR /&gt;&lt;BR /&gt;Small question :&lt;BR /&gt;Why did you enable LISTEN mode first, then disable it?&lt;BR /&gt;&lt;BR /&gt;I did that (it's asm but easy to understand) and it works.&lt;BR /&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;DIV class="msg_source_code"&gt;&lt;DIV class="text_smallest"&gt;Code:&lt;/DIV&gt;&lt;PRE&gt;;*********************************************************************;*************************** Config CAN bus **************************;*********************************************************************;*********************************************************************;*    SYNC=1   *    PROPSEG = 2    *    PSEG1 = 6   *    PSEG 2 = 7  *;*********************************************************************;              &amp;lt;------------- TSEG1 = 8 ------------&amp;gt;&amp;lt;-- TSEG2 = 7 --&amp;gt;;&amp;lt;------------------------ Bit Time = 16 x S ------------------------&amp;gt;;*********************************************************************        LDA   #mCANCTL0_INITRQ        STA   CANCTL0                   ; Mode Init rqstWaitInitMode:        LDA   CANCTL1                   ; Wait for init acknowledge        AND   #mCANCTL1_INITAK        BEQ   WaitInitMode        LDA   #$80                      ;        STA   CANCTL1                   ; Enable CAN in normal mode        LDA   #$67        STA   CANBTR1                   ; Set sampling point &amp;amp; TSEG fields        LDA   #$03        STA   CANBTR0                   ; Set Sync field &amp;amp; Baud rate        LDA   #$10        STA   CANIDAC                   ; Four 16bits acceptance filter        LDA   #$FE                      ;------------------        STA   CANIDAR0                  ;        STA   CANIDAR2                  ;        STA   CANIDAR4                  ;        STA   CANIDAR6                  ;Set Identifier        LDA   #$00                      ;acceptance register        STA   CANIDAR1                  ;        STA   CANIDAR3                  ;        STA   CANIDAR5                  ;        STA   CANIDAR7                  ;------------------        LDA   #$01                      ;        STA   CANIDMR0                  ;        STA   CANIDMR2                  ;        STA   CANIDMR4                  ;        STA   CANIDMR6                  ;Set acceptance mask register        LDA   #$FF                      ;            STA   CANIDMR1                  ;        STA   CANIDMR3                  ;        STA   CANIDMR5                  ;        STA   CANIDMR7                  ;------------------        CLRA        STA   CANCTL0                   ; enter run modeWaitInitAck:        LDA   CANCTL1                   ; Wait for init acknowledge cleared        AND   #mCANCTL1_INITAK        BNE   WaitInitAckWaitSyncCAN:        LDA   CANCTL0                   ; Wait for Synchro CAN         AND   #mCANCTL0_SYNCH        BEQ   WaitSyncCAN        BRA   BCKGND&lt;/PRE&gt;&lt;/DIV&gt;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;Emmanuel&lt;BR /&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 Oct 2020 08:40:43 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140444#M2467</guid>
      <dc:creator>Nouchi</dc:creator>
      <dc:date>2020-10-29T08:40:43Z</dc:date>
    </item>
    <item>
      <title>Re: S08DZ60 MSCAN initialization</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140445#M2468</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;Hello &lt;B&gt;Manu&lt;/B&gt; (if I may)&lt;BR /&gt;&lt;BR /&gt;I don't understand why you do that with the LISTEN mode.&lt;BR /&gt;&lt;BR /&gt;&lt;B&gt;Johannes,&lt;BR /&gt;&lt;/B&gt;Can you please tell me what the CANanalyzer reports ?&lt;BR /&gt;I'm thinking about frame errors or things like this.&lt;BR /&gt;Have you put 120Ohm resistors on your CAN bus ?&lt;BR /&gt;That would explain why the bus is not ready.&lt;BR /&gt;&lt;BR /&gt;Have you checked your PHYsical interface cabling against an existing EVB ?&lt;BR /&gt;&lt;BR /&gt;Indeed, that must be a simple hidden thing &lt;SPAN&gt;&lt;IMG alt=":smileymad:" class="emoticon emoticon-smileymad" id="smileymad" src="http://freescale.i.lithium.com/i/smilies/16x16_smiley-mad.gif" title="Smiley Mad" /&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;Cheers,&lt;BR /&gt;Alban.&lt;BR /&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Jul 2007 17:21:23 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140445#M2468</guid>
      <dc:creator>Alban</dc:creator>
      <dc:date>2007-07-19T17:21:23Z</dc:date>
    </item>
    <item>
      <title>Re: S08DZ60 MSCAN initialization</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140446#M2469</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;Hi Alban,&lt;BR /&gt;&lt;BR /&gt;Johannes wrote:&lt;BR /&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;DIV class="msg_source_code"&gt;&lt;DIV class="text_smallest"&gt;Code:&lt;/DIV&gt;&lt;PRE&gt;  CANCTL1 = 0x91;   CANCTL1_LISTEN = 0;                                    &lt;/PRE&gt;&lt;/DIV&gt;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&lt;/DIV&gt;That's Enable CAN and Listen mode then disable listen mode, I just was asking why did he do that, he could write CANCTL1 = 0x80&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Emmanuel&lt;BR /&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 Oct 2020 08:40:46 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140446#M2469</guid>
      <dc:creator>Nouchi</dc:creator>
      <dc:date>2020-10-29T08:40:46Z</dc:date>
    </item>
    <item>
      <title>Re: S08DZ60 MSCAN initialization</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140447#M2470</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Hi,&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;thanks guys fo taking time to answer!&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Indeed, the line with the LISTEN-mode is hand-written by me. I forgot to set the MSCAN to normal mode in the Device-Initialization and did it by hand afterwards. So the line&lt;/DIV&gt;&lt;DIV&gt;CANCTL1_LISTEN = 0;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;is written by me.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;I will have a look to the asm right now, I'm not so good in asm, but I think I'll understand that example.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;What is really bothering me, is that the bit INITAK and INITRQ are set right after the uC-reset. that shouldn't be the case normally. I can write the INITRQ-bit to 0 or 1, but the INITAK is allways 1 and I cannot imagine why? Maybe something with my clock (MCG settings) is not ok?&lt;/DIV&gt;&lt;DIV&gt;heres the code (using external 4MHz oscillator), its from the Device Initialization tool as well:&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV class="msg_source_code"&gt;&lt;DIV class="text_smallest"&gt;Code:&lt;/DIV&gt;&lt;PRE&gt; // ---------------- MCU init -------------------------------------------  /* ### MC9S08DZ60_64 "Cpu" init code ... */  /*  PE initialization code after reset */  /* Common initialization of the write once registers */  /* SOPT1: COPT=0,STOPE=0,SCI2PS=0,IICPS=0 */  SOPT1 = 0x00;                                        /* SOPT2: COPCLKS=0,COPW=0,ADHTS=0,MCSEL=0 */  SOPT2 = 0x00;                                        /* SPMSC1: LVWF=0,LVWACK=0,LVWIE=0,LVDRE=1,LVDSE=1,LVDE=1,BGBE=0 */  SPMSC1 = 0x1C;                                        /* SPMSC2: LVDV=0,LVWV=0,PPDF=0,PPDACK=0,PPDC=0 */  SPMSC2 = 0x00;                                        /*  System clock initialization */  MCGTRM = *(unsigned char*far)0xFFAF; /* Initialize MCGTRM register from a non volatile memory */  MCGSC = *(unsigned char*far)0xFFAE;  /* Initialize MCGSC register from a non volatile memory */  /* MCGC2: BDIV=1,RANGE=1,HGO=0,LP=0,EREFS=0,ERCLKEN=1,EREFSTEN=0 */  MCGC2 = 0x62;                        /* Set MCGC2 register */  /* MCGC1: CLKS=0,RDIV=0,IREFS=1,IRCLKEN=0,IREFSTEN=0 */  MCGC1 = 0x04;                        /* Set MCGC1 register */  /* MCGC3: LOLIE=0,PLLS=0,CME=0,VDIV=1 */  MCGC3 = 0x01;                        /* Set MCGC3 register */  while(!MCGSC_LOCK) {                 /* Wait until FLL is locked */  }    /* Common initialization of the CPU registers */  /* PTASE: PTASE7=1,PTASE6=1,PTASE5=1,PTASE4=1,PTASE3=1,PTASE2=1,PTASE1=1,PTASE0=1 */  PTASE = 0xFF;                                        /* PTBSE: PTBSE7=1,PTBSE6=1,PTBSE5=1,PTBSE4=1,PTBSE3=1,PTBSE2=1,PTBSE1=1,PTBSE0=1 */  PTBSE = 0xFF;                                        /* PTCSE: PTCSE7=1,PTCSE6=1,PTCSE5=1,PTCSE4=1,PTCSE3=1,PTCSE2=1,PTCSE1=1,PTCSE0=1 */  PTCSE = 0xFF;                                        /* PTDSE: PTDSE7=1,PTDSE6=1,PTDSE5=1,PTDSE4=1,PTDSE3=1,PTDSE2=1,PTDSE1=1,PTDSE0=1 */  PTDSE = 0xFF;                                        /* PTESE: PTESE7=1,PTESE6=1,PTESE5=1,PTESE4=1,PTESE3=1,PTESE2=1,PTESE0=1 */  //PTESE |= (unsigned char)0xFD;                                 /* PTFSE: PTFSE7=1,PTFSE6=1,PTFSE5=1,PTFSE4=1,PTFSE3=1,PTFSE2=1,PTFSE1=1,PTFSE0=1 */  PTFSE = 0xFF;                                        /* PTGSE: PTGSE5=1,PTGSE4=1,PTGSE3=1,PTGSE2=1,PTGSE1=1,PTGSE0=1 */  PTGSE |= (unsigned char)0x3F;                                 /* PTADS: PTADS7=0,PTADS6=0,PTADS5=0,PTADS4=0,PTADS3=0,PTADS2=0,PTADS1=0,PTADS0=0 */  PTADS = 0x00;                                        /* PTBDS: PTBDS7=0,PTBDS6=0,PTBDS5=0,PTBDS4=0,PTBDS3=0,PTBDS2=0,PTBDS1=0,PTBDS0=0 */  PTBDS = 0x00;                                        /* PTCDS: PTCDS7=0,PTCDS6=0,PTCDS5=0,PTCDS4=0,PTCDS3=0,PTCDS2=0,PTCDS1=0,PTCDS0=0 */  PTCDS = 0x00;                                        /* PTDDS: PTDDS7=0,PTDDS6=0,PTDDS5=0,PTDDS4=0,PTDDS3=0,PTDDS2=0,PTDDS1=0,PTDDS0=0 */  PTDDS = 0x00;                                        /* PTEDS: PTEDS7=0,PTEDS6=0,PTEDS5=0,PTEDS4=0,PTEDS3=0,PTEDS2=0,PTEDS1=0,PTEDS0=0 */  //PTEDS = 0x00;                                        /* PTFDS: PTFDS7=0,PTFDS6=0,PTFDS5=0,PTFDS4=0,PTFDS3=0,PTFDS2=0,PTFDS1=0,PTFDS0=0 */  PTFDS = 0x00;                                        /* PTGDS: PTGDS5=0,PTGDS4=0,PTGDS3=0,PTGDS2=0,PTGDS1=0,PTGDS0=0 */  PTGDS = 0x00;  // ---------------- MCU init -------------------------------------------&lt;/PRE&gt;&lt;/DIV&gt;&lt;P&gt;Maybe because of some clock setting, the MSCAN clock cannot synchronize with the bus clock?&lt;/P&gt;&lt;P&gt;thanks,&lt;BR /&gt;Johannes&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 Oct 2020 08:40:47 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140447#M2470</guid>
      <dc:creator>ohanica</dc:creator>
      <dc:date>2020-10-29T08:40:47Z</dc:date>
    </item>
    <item>
      <title>Re: S08DZ60 MSCAN initialization</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140448#M2471</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;Hello,&lt;BR /&gt;&lt;BR /&gt;The Bus synchro is not with the CPU Bus, but with the msCAN bus. This is not taking ages.&lt;BR /&gt;Can you look and confirm that your CAN bus is idle ? (=check that CANH and CANL are both high and that CANTX and CANRX are also HIGH).&lt;BR /&gt;&lt;BR /&gt;Indeed, if you are in LISTEN mode, you won't transmit...&lt;BR /&gt;&lt;BR /&gt;Cheers,&lt;BR /&gt;Alban.&lt;BR /&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Jul 2007 18:13:04 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140448#M2471</guid>
      <dc:creator>Alban</dc:creator>
      <dc:date>2007-07-19T18:13:04Z</dc:date>
    </item>
    <item>
      <title>Re: S08DZ60 MSCAN initialization</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140449#M2472</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Hello!&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;its been the clock setting for the uC. Now I'm using the initialization code below and things work. And MSCAN is working not bad at all &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;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV class="msg_source_code"&gt;&lt;DIV class="text_smallest"&gt;Code:&lt;/DIV&gt;&lt;PRE&gt;    // MCU/Board Specific configuration     SOPT1 = 0;                                                   //Multi-purpose Clock Generator config register2    //set HGO (high gain operation),EREFS (oscillator),ERCLKEN (ext clk reference enable)            MCGC2 |= 0x26;          //wait for oscillator to initialize    while(!MCGSC_OSCINIT);        //Multi-purpose Clock Generator config register1    MCGC1 = 0x00;        //wait until output of PLL is selected as clock mode    if(MCGSC &amp;amp; 0x0C)    {        for(;;)            ;                // Empty Body */    }&lt;/PRE&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt;&amp;nbsp;Thanks to the freescale support center for helping in this issue!&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;mg,&lt;/DIV&gt;&lt;DIV&gt;Johannes&lt;BR /&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;BR /&gt;Message Edited by ohanica on &lt;SPAN class="date_text"&gt;2007-07-24&lt;/SPAN&gt; &lt;SPAN class="time_text"&gt;12:51 PM&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 Oct 2020 08:40:49 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140449#M2472</guid>
      <dc:creator>ohanica</dc:creator>
      <dc:date>2020-10-29T08:40:49Z</dc:date>
    </item>
    <item>
      <title>Re: S08DZ60 MSCAN initialization</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140450#M2473</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;Hello&lt;BR /&gt;Just a question. Do you use a crystal or external clock source? Did you set the correct option for the external clock source in the Device Initialization? From the code you sent previously I suspect that you did set the "External oscillator" option, not the probably correct "External crystal" option.&lt;BR /&gt;Regards&lt;BR /&gt;Petr&lt;BR /&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 25 Jul 2007 14:07:08 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140450#M2473</guid>
      <dc:creator>petr</dc:creator>
      <dc:date>2007-07-25T14:07:08Z</dc:date>
    </item>
    <item>
      <title>Re: S08DZ60 MSCAN initialization</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140451#M2474</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;Hi Petr,&lt;BR /&gt;&lt;BR /&gt;His code posted is now working.&lt;BR /&gt;&lt;BR /&gt;Cheers,&lt;BR /&gt;Alban.&lt;BR /&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 25 Jul 2007 19:24:38 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140451#M2474</guid>
      <dc:creator>Alban</dc:creator>
      <dc:date>2007-07-25T19:24:38Z</dc:date>
    </item>
    <item>
      <title>Re: S08DZ60 MSCAN initialization</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140452#M2475</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The solution is, for s08 CAN module to initialise, the MCGERCLK bit in MCGC2 register should be set.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 04 Jan 2013 15:45:42 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/S08DZ60-MSCAN-initialization/m-p/140452#M2475</guid>
      <dc:creator>Pinak</dc:creator>
      <dc:date>2013-01-04T15:45:42Z</dc:date>
    </item>
  </channel>
</rss>

