<?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: trouble with S12XS128  SCI controller</title>
    <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/trouble-with-S12XS128-SCI-controller/m-p/170168#M5647</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ok rigth if no one is answering i'm gonna tell you that for the second point "programm fails when exiting&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;the ISR" i've disassembled the source file and i've realized that ISR dosen't end with the famous RTI&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;instruction cause i've forgot to put "__interrupt" at the begining when declaring the routine so as&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Codewarrior could recognize it as an ISR. Now the problem i'm facing is that soft is unable to&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;resetTDREflag.Once TDRE is set the ISR is turning in loop.i've really followed the steps listed in&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Datasheet which&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;are:&amp;nbsp; reading SCI Status register and then writing to SCI Data Low register so i wish that anyone&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;could tell me what to do.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 09 Apr 2009 14:52:15 GMT</pubDate>
    <dc:creator>SOS</dc:creator>
    <dc:date>2009-04-09T14:52:15Z</dc:date>
    <item>
      <title>trouble with S12XS128  SCI controller</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/trouble-with-S12XS128-SCI-controller/m-p/170167#M5646</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi everybody,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;i have a situation with &lt;SPAN style="text-decoration: underline;"&gt;DEMO9S12XSFAME SCI&lt;/SPAN&gt; interface.i'm developing an &lt;SPAN style="text-decoration: underline;"&gt;uart driver&lt;/SPAN&gt; based on interrupts.When Debuging the module i've realized that during interrupt execution&amp;nbsp; Flags ;either TDRE or RDRF are automatically reset by just getting the status register address .On the other hand when exiting the ISR the program fails and the debugger indicates &amp;nbsp; ILLEGAL BP.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;HR /&gt;&lt;HR /&gt;&lt;SPAN&gt;#if(Du16DUart_eController1Used)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;void __near vDUart_iSci1_Isr(void)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;volatile void &amp;nbsp;&amp;nbsp; &amp;nbsp;*pvReg;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;volatile void &amp;nbsp;&amp;nbsp; &amp;nbsp;*pvReg1;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;volatile void&amp;nbsp;&amp;nbsp; &amp;nbsp;*pvReg2;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;TstDUart_iScisr1RegBits &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;stTmp;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;pvReg = (void *)(Ctu16DUart_iCtlBaseAdr[Ceu16DUart_eCtl0]+ Du16DUart_iSciSr1ROffset);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Get Status register 1 address&amp;nbsp;&amp;nbsp; : &lt;/SPAN&gt;&lt;STRONG&gt;&lt;EM&gt;ALL FLAGS ARE RESET !!!!!!!!!!!!!!!&lt;/EM&gt;&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;pvReg1 = (void *)(Ctu16DUart_iCtlBaseAdr[Ceu16DUart_eCtl1]+ Du16DUart_iScidrlROffset);&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Get data low register address&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;pvReg2 = (void *)(Ctu16DUart_iCtlBaseAdr[Ceu16DUart_eCtl1]+ Du16DUart_iSciCr2ROffset);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;if ( ((*((TstDUart_iScisr1RegBits *)pvReg)).bTDRE) &amp;gt; 0 )&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;EM&gt;&lt;STRONG&gt;treating and writing to SCIDRL;&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;if(((*((TstDUart_iScisr1RegBits *)pvReg)).bRDRF) &amp;gt; 0 )&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;EM&gt;&lt;STRONG&gt;treating&amp;nbsp; and reading SCIDRL&lt;/STRONG&gt;&lt;/EM&gt;;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 07 Apr 2009 17:10:45 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/trouble-with-S12XS128-SCI-controller/m-p/170167#M5646</guid>
      <dc:creator>SOS</dc:creator>
      <dc:date>2009-04-07T17:10:45Z</dc:date>
    </item>
    <item>
      <title>Re: trouble with S12XS128  SCI controller</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/trouble-with-S12XS128-SCI-controller/m-p/170168#M5647</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ok rigth if no one is answering i'm gonna tell you that for the second point "programm fails when exiting&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;the ISR" i've disassembled the source file and i've realized that ISR dosen't end with the famous RTI&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;instruction cause i've forgot to put "__interrupt" at the begining when declaring the routine so as&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Codewarrior could recognize it as an ISR. Now the problem i'm facing is that soft is unable to&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;resetTDREflag.Once TDRE is set the ISR is turning in loop.i've really followed the steps listed in&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Datasheet which&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;are:&amp;nbsp; reading SCI Status register and then writing to SCI Data Low register so i wish that anyone&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;could tell me what to do.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 09 Apr 2009 14:52:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/trouble-with-S12XS128-SCI-controller/m-p/170168#M5647</guid>
      <dc:creator>SOS</dc:creator>
      <dc:date>2009-04-09T14:52:15Z</dc:date>
    </item>
  </channel>
</rss>

