<?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>topic Re: JM Badge board SCI setup issue in ColdFire/68K Microcontrollers and Processors</title>
    <link>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/JM-Badge-board-SCI-setup-issue/m-p/204695#M9614</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;/DIV&gt;Thanks Rich, or taking a look at my issue .&lt;BR /&gt;&lt;BR /&gt;I tried what you suggested and changed&lt;BR /&gt;"while(!SCI1S1_TDRE)" to "while(!SCI1S1_TC)"&lt;BR /&gt;&lt;BR /&gt;But the behaviour looks the same, ie the&lt;BR /&gt;SCI1S1_RDRF is not getting set and we are waiting forever&lt;BR /&gt;on it.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Any thoughts as to what else could be going wrong here.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Sachin&lt;BR /&gt;&lt;BR /&gt;NB: I presume since I am&amp;nbsp; using LOOP option, there is no need of an&lt;BR /&gt;external loopback of the Txd and Rxd.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 25 Nov 2008 21:38:31 GMT</pubDate>
    <dc:creator>sachins</dc:creator>
    <dc:date>2008-11-25T21:38:31Z</dc:date>
    <item>
      <title>JM Badge board SCI setup issue</title>
      <link>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/JM-Badge-board-SCI-setup-issue/m-p/204693#M9612</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt; &lt;/DIV&gt;&lt;SPAN&gt;I am trying to get the SCI work on the JM badge board which has a MC51JM128 processor.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Following is the code snippet:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;void Serial_port_Init()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; SCI1BDH&amp;nbsp;&amp;nbsp; = 0;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; SCI1BDL&amp;nbsp;&amp;nbsp; = 156;// Set baud rate to 4800 (SCI1BDLSTR = 12M/(4600x16)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; SCI1C1_LOOPS = 1;// Loopback TX - RX internally for testing&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; SCI1C2_TE = 1; // Transmit enable&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; SCI1C2_RE = 1; // Rx enable&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;void Serial_send_data(unsigned char data)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; unsigned char temp;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; SCI1D = data;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; /* Wait for transmission complete */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; while(!SCI1S1_TDRE)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Do nothing */&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; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; LEDScroll("Tx");&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; while(!SCI1S1_RDRF)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ; // &amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt;&amp;lt; Gets stuck here, the Rx never recieves data,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // No Framing and Noise errors observed.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; LEDScroll("RX##");&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Any inputs as to why the above code is not able to recieve the transmitted byte?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Sachin&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 24 Nov 2008 01:07:43 GMT</pubDate>
      <guid>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/JM-Badge-board-SCI-setup-issue/m-p/204693#M9612</guid>
      <dc:creator>sachins</dc:creator>
      <dc:date>2008-11-24T01:07:43Z</dc:date>
    </item>
    <item>
      <title>Re: JM Badge board SCI setup issue</title>
      <link>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/JM-Badge-board-SCI-setup-issue/m-p/204694#M9613</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;I think you want to wait for "transmission complete", rather than "transmit data register empty" -- the latter is true before the byte has fully&amp;nbsp;hit the wire, and hence before you can receive it.&amp;nbsp; In other words, change "while(!SCI1S1_TDRE)" to "while(!SCI1S1_TC)".&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Notice "&lt;FONT face="Helvetica"&gt;&lt;FONT face="Helvetica" size="2"&gt;&lt;STRONG&gt;Transmit Data Register Empty Flag. TDRE is set out of reset and &lt;EM&gt;when a transmit data value transfers from the transmit data buffer to the transmit shifter&lt;/EM&gt;, leaving room for a new character in the buffer.&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/FONT&gt;"&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Compare this with "&lt;FONT face="Helvetica"&gt;&lt;FONT face="Helvetica" size="2"&gt;&lt;STRONG&gt;Transmission Complete Flag. TC is set out of reset and when TDRE is set &lt;EM&gt;and no data, preamble, or break character is being transmitted&lt;/EM&gt;.&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/FONT&gt;"&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;-- Rich&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 25 Nov 2008 13:29:50 GMT</pubDate>
      <guid>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/JM-Badge-board-SCI-setup-issue/m-p/204694#M9613</guid>
      <dc:creator>RichTestardi</dc:creator>
      <dc:date>2008-11-25T13:29:50Z</dc:date>
    </item>
    <item>
      <title>Re: JM Badge board SCI setup issue</title>
      <link>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/JM-Badge-board-SCI-setup-issue/m-p/204695#M9614</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;/DIV&gt;Thanks Rich, or taking a look at my issue .&lt;BR /&gt;&lt;BR /&gt;I tried what you suggested and changed&lt;BR /&gt;"while(!SCI1S1_TDRE)" to "while(!SCI1S1_TC)"&lt;BR /&gt;&lt;BR /&gt;But the behaviour looks the same, ie the&lt;BR /&gt;SCI1S1_RDRF is not getting set and we are waiting forever&lt;BR /&gt;on it.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Any thoughts as to what else could be going wrong here.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Sachin&lt;BR /&gt;&lt;BR /&gt;NB: I presume since I am&amp;nbsp; using LOOP option, there is no need of an&lt;BR /&gt;external loopback of the Txd and Rxd.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 25 Nov 2008 21:38:31 GMT</pubDate>
      <guid>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/JM-Badge-board-SCI-setup-issue/m-p/204695#M9614</guid>
      <dc:creator>sachins</dc:creator>
      <dc:date>2008-11-25T21:38:31Z</dc:date>
    </item>
    <item>
      <title>Re: JM Badge board SCI setup issue</title>
      <link>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/JM-Badge-board-SCI-setup-issue/m-p/204696#M9615</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Hmmm...&amp;nbsp; Is it possible you are reading SCI1D (and the status register)&amp;nbsp;somewhere else, or that some other code is also using the uart?&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;What I'd suggest is to step thru with the debugger and see the instant SCI1S1_TC becomes true what the values of the chip registers are.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;You an do this by just using the memory window and setting its address to 0xFFFF803C *after* you see TC become true (meaning the byte has fully hit the wire).&amp;nbsp; Then, you should see a value of 0xf0.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;I use the following initialization code:&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SCI1C1 = (loopback?SCI1C1_LOOPS_MASK:0)|&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; ((data==8&amp;amp;&amp;amp;parity!=2)?SCI1C1_M_MASK:0)|&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; ((parity!=2)?SCI1C1_PE_MASK:0)|&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; (parity==1?SCI1C1_PT_MASK:0);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; divisor = fsys_frequency/baud/32;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (divisor &amp;gt;= 0x2000) {&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; divisor = 0x1fff;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SCI1BDH = (uint8)(divisor/0x100);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SCI1BDL = (uint8)(divisor%0x100);&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;I believe it is equivalent to yours.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;If I configure for loopback and then wait for a byte to transmit in the debugger, I immediately see the following values:&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; SCI1SC = 0xf0&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; SCI1D = byte I just sent&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;You'll also want to make sure you don't have an ISR sneaking in on you and reading the data -- it might be best to run your test with interrupts disabled.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;-- Rich&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt;PS I'm running on a DEMOJM board, and I hope that does not matter!&lt;/DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 26 Nov 2008 01:52:27 GMT</pubDate>
      <guid>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/JM-Badge-board-SCI-setup-issue/m-p/204696#M9615</guid>
      <dc:creator>RichTestardi</dc:creator>
      <dc:date>2008-11-26T01:52:27Z</dc:date>
    </item>
    <item>
      <title>Re: JM Badge board SCI setup issue</title>
      <link>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/JM-Badge-board-SCI-setup-issue/m-p/204697#M9616</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;BR /&gt;Hi Rich,&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; I figured out the problem,&lt;BR /&gt;In JM badge board the peripheral clocks are gated off (by default)&amp;nbsp; to save power, Since it&lt;BR /&gt;is run by a Li-ion battery.&lt;BR /&gt;&lt;BR /&gt;Once I set the register SCGC1 = 0x03 correctly.&lt;BR /&gt;The data was recieved as expected.&lt;BR /&gt;&lt;BR /&gt;Regards&lt;BR /&gt;Sachin&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Message Edited by sachins on &lt;SPAN class="date_text"&gt;2008-11-26&lt;/SPAN&gt; &lt;SPAN class="time_text"&gt;06:03 AM&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 26 Nov 2008 14:03:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/JM-Badge-board-SCI-setup-issue/m-p/204697#M9616</guid>
      <dc:creator>sachins</dc:creator>
      <dc:date>2008-11-26T14:03:09Z</dc:date>
    </item>
    <item>
      <title>Re: JM Badge board SCI setup issue</title>
      <link>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/JM-Badge-board-SCI-setup-issue/m-p/204698#M9617</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Great -- I'm glad you figured it out!&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Just curious, did SCI1S1_TC actually transition to true without a clock?&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;-- Rich&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 26 Nov 2008 23:30:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/JM-Badge-board-SCI-setup-issue/m-p/204698#M9617</guid>
      <dc:creator>RichTestardi</dc:creator>
      <dc:date>2008-11-26T23:30:09Z</dc:date>
    </item>
    <item>
      <title>Re: JM Badge board SCI setup issue</title>
      <link>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/JM-Badge-board-SCI-setup-issue/m-p/204699#M9618</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;Good quesition!&lt;BR /&gt;Yes I observed that it does turn to 1, even without clocks.&lt;BR /&gt;Thats the reason I Did not get stuck in the waiting for Tx complete loop.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Sachin&lt;BR /&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 27 Nov 2008 10:08:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/JM-Badge-board-SCI-setup-issue/m-p/204699#M9618</guid>
      <dc:creator>sachins</dc:creator>
      <dc:date>2008-11-27T10:08:15Z</dc:date>
    </item>
    <item>
      <title>Re: JM Badge board SCI setup issue</title>
      <link>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/JM-Badge-board-SCI-setup-issue/m-p/204700#M9619</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I am also facing the same problem. I am able to Transmit Data but unable to receive data. I tried setting SCGC1 = 0x03 but still it is getting stuck in the receive portion. Snippet of the code:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;SCI1BDH&amp;nbsp;&amp;nbsp; = 0;&lt;BR /&gt;&amp;nbsp; SCI1BDL&amp;nbsp;&amp;nbsp; = 156;// Set baud rate to 4800 (SCI1BDLSTR = 12M/(4600x16)&lt;BR /&gt;&amp;nbsp; SCI1C1_LOOPS = 1;// Loopback TX - RX internally for testing&lt;BR /&gt;&amp;nbsp; SCI1C2_TE = 1; // Transmit enable&lt;BR /&gt;&amp;nbsp; SCI1C2_RE = 1; // Rx enable&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;SCI1D = 'A';&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Wait for transmission complete&lt;BR /&gt;&amp;nbsp; while(!SCI1S1_TDRE)&lt;BR /&gt;&amp;nbsp; {&amp;nbsp; }&lt;BR /&gt;&amp;nbsp; LEDScroll("T");&lt;BR /&gt;&amp;nbsp; while(!SCI1S1_RDRF)&lt;BR /&gt;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;//Never comes to this portion of the code&lt;BR /&gt;&amp;nbsp; LEDScroll("R);&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 14 Sep 2010 18:26:53 GMT</pubDate>
      <guid>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/JM-Badge-board-SCI-setup-issue/m-p/204700#M9619</guid>
      <dc:creator>DeepaM</dc:creator>
      <dc:date>2010-09-14T18:26:53Z</dc:date>
    </item>
    <item>
      <title>Re: JM Badge board SCI setup issue</title>
      <link>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/JM-Badge-board-SCI-setup-issue/m-p/204701#M9620</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I'm not sure what problem is&amp;nbsp;the same, but your pseudocode is&amp;nbsp;wrong. To send data you have to read status register with TDRE bit set, and only then&amp;nbsp;write to the data register. In case last read of status register returned TDRE==0, write to data register shouldn't do anything. It should be in this order, not reversed:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; while(!SCI1S1_TDRE)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; {&amp;nbsp; }&lt;BR /&gt;&amp;nbsp; SCI1D = 'A';&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Sep 2010 00:16:17 GMT</pubDate>
      <guid>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/JM-Badge-board-SCI-setup-issue/m-p/204701#M9620</guid>
      <dc:creator>kef</dc:creator>
      <dc:date>2010-09-15T00:16:17Z</dc:date>
    </item>
  </channel>
</rss>

