<?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のトピックMM9Z1_638 SCI Half-Duplex mode, RDRF not set</title>
    <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/MM9Z1-638-SCI-Half-Duplex-mode-RDRF-not-set/m-p/473758#M11916</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The MM9Z1_638 has an S12Z processor and S08SCIV4 SCI module.&amp;nbsp; I want to use the SCI in one-wire, half duplex mode.&amp;nbsp; The physical pin I am using is the LIN pin.&amp;nbsp; So, I have set both LIN_TX.FROMSCI and LIN_RX.TOSCI.&amp;nbsp; I have a terminal application running on my PC and a USB-LIN adapter connected (19,200 baud, N, 8, 1).&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I can send data from the processor to the terminal with no problems.&amp;nbsp; But, I cannot receive any data.&amp;nbsp; RDRF is never set.&amp;nbsp; I do see RXEDGIF set when I send a character.&amp;nbsp; This implies the signal is making it to the SCI module.&amp;nbsp; I have checked the baud rate settings and confirmed that a sent character (e.g. 'U') has exactly the same scope waveform on the LIN pin as a received character.&amp;nbsp; So I think the baud rate setting is OK.&amp;nbsp; I did find a bug in the MM9Z1_638 example code in this area, but fixed it (baud rate was off by 2.5%).&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;All SCI interrupts are disabled.&amp;nbsp; I want it to work via polling first, then I will implement the interrupts.&amp;nbsp; I believe I should be able to send a character from the terminal to the LIN pin and see RDRF set.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I think I need to have LOOPS=1 and RSRC=1 for one-wire mode.&amp;nbsp; In the process of debugging, I cleared RSRC=0 to see what would happen.&amp;nbsp; It turns out that in this mode (internal loopback) when I send a character by writing to SCID, the receiver sets RDRF.&amp;nbsp; Great!&amp;nbsp; But as soon as I set RSRC=1, RDRF never sets.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here is the SCI initialization code:&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;&lt;STRONG&gt;void&lt;/STRONG&gt;&lt;SPAN class="s1"&gt; &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;&lt;STRONG&gt;SCIInit&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;(&lt;/SPAN&gt;&lt;STRONG&gt;void&lt;/STRONG&gt;&lt;SPAN class="s3"&gt;)&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="s3"&gt;{&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B_SCIBD &lt;SPAN class="s4"&gt;=&lt;/SPAN&gt; &lt;SPAN class="s3"&gt;(&lt;/SPAN&gt;&lt;SPAN class="s5"&gt;u16&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;)(&lt;/SPAN&gt;&lt;SPAN class="s6"&gt;25&lt;/SPAN&gt;ul&lt;SPAN class="s4"&gt;*&lt;/SPAN&gt;&lt;SPAN class="s6"&gt;1000000&lt;/SPAN&gt;ul&lt;SPAN class="s4"&gt;&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;/&lt;/SPAN&gt;SCI_BAUD&lt;SPAN class="s4"&gt;/&lt;/SPAN&gt;&lt;SPAN class="s6"&gt;16&lt;/SPAN&gt;ul&lt;SPAN class="s3"&gt;)&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;&lt;SPAN class="s4"&gt;&lt;/SPAN&gt;&lt;SPAN style="line-height: 1.5;"&gt;&lt;SPAN class="s1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B_SCIC1 &lt;/SPAN&gt;&lt;SPAN class="s4"&gt;=&lt;/SPAN&gt;&lt;SPAN class="s1"&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="line-height: 1.5;"&gt;B_SCIC1_DPD1_MASK &lt;/SPAN&gt;&lt;SPAN class="s1" style="line-height: 1.5;"&gt;| &lt;/SPAN&gt;&lt;SPAN style="line-height: 1.5;"&gt;B_SCIC1_DPD0_MASK &lt;/SPAN&gt;&lt;SPAN class="s1" style="line-height: 1.5;"&gt;| &lt;/SPAN&gt;&lt;SPAN style="line-height: 1.5;"&gt;B_SCIC1_LOOPS_MASK &lt;/SPAN&gt;&lt;SPAN class="s1" style="line-height: 1.5;"&gt;| &lt;/SPAN&gt;&lt;SPAN style="line-height: 1.5;"&gt;B_SCIC1_RSRC_MASK&lt;/SPAN&gt;&lt;SPAN style="line-height: 1.5;"&gt;&lt;SPAN class="s4"&gt;;&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;&lt;SPAN style="line-height: 1.5;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B_SCIC2 &lt;/SPAN&gt;&lt;SPAN class="s4" style="line-height: 1.5;"&gt;=&lt;/SPAN&gt;&lt;SPAN style="line-height: 1.5;"&gt; B_SCIC2_TE_MASK&lt;/SPAN&gt;&lt;SPAN class="s4" style="line-height: 1.5;"&gt;|&lt;/SPAN&gt;&lt;SPAN style="line-height: 1.5;"&gt;B_SCIC2_RE_MASK&lt;/SPAN&gt;&lt;SPAN class="s4" style="line-height: 1.5;"&gt;;&lt;/SPAN&gt;&lt;SPAN style="line-height: 1.5;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="s7" style="line-height: 1.5;"&gt;// enable &lt;/SPAN&gt;&lt;SPAN class="s8" style="line-height: 1.5;"&gt;rx&lt;/SPAN&gt;&lt;SPAN class="s7" style="line-height: 1.5;"&gt; and &lt;/SPAN&gt;&lt;SPAN class="s8" style="line-height: 1.5;"&gt;tx&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;&lt;SPAN class="s8"&gt;&lt;/SPAN&gt;&lt;SPAN style="line-height: 1.5;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B_SCIC3 &lt;/SPAN&gt;&lt;SPAN class="s4" style="line-height: 1.5;"&gt;=&lt;/SPAN&gt;&lt;SPAN style="line-height: 1.5;"&gt; 0x00&lt;/SPAN&gt;&lt;SPAN class="s4" style="line-height: 1.5;"&gt;;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p5"&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p5" style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="p5"&gt;&lt;SPAN style="font-family: arial, helvetica, sans-serif;"&gt;And here is the receive function I call repeatedly from the main loop:&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p5" style="min-height: 8pt; padding: 0px;"&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt; &lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;&lt;STRONG&gt;char&lt;/STRONG&gt;&lt;SPAN class="s1"&gt; &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;&lt;STRONG&gt;SCIRec&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;(&lt;/SPAN&gt;&lt;STRONG&gt;void&lt;/STRONG&gt;&lt;SPAN class="s3"&gt;)&lt;/SPAN&gt;&lt;SPAN class="s1"&gt; &lt;/SPAN&gt;&lt;SPAN class="s3"&gt;{&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;&lt;SPAN class="s4" style="font-family: 'andale mono', times; line-height: 1.5;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="font-family: 'andale mono', times; line-height: 1.5;"&gt; &lt;/SPAN&gt;&lt;SPAN class="s3" style="font-family: 'andale mono', times; line-height: 1.5;"&gt;(&lt;/SPAN&gt;&lt;SPAN style="font-family: 'andale mono', times; line-height: 1.5;"&gt;B_SCIS1_RDRF&lt;/SPAN&gt;&lt;SPAN class="s3" style="font-family: 'andale mono', times; line-height: 1.5;"&gt;)&lt;/SPAN&gt;&lt;SPAN style="font-family: 'andale mono', times; line-height: 1.5;"&gt; &lt;/SPAN&gt;&lt;SPAN class="s3" style="font-family: 'andale mono', times; line-height: 1.5;"&gt;{&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;&lt;SPAN class="s1" style="font-family: 'andale mono', times; line-height: 1.5;"&gt;&lt;/SPAN&gt;&lt;SPAN style="font-family: 'andale mono', times; line-height: 1.5;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return B_SCID;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;&lt;SPAN class="s3"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p3"&gt;&lt;STRONG style="font-family: 'andale mono', times; line-height: 1.5;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;/STRONG&gt;&lt;SPAN class="s1" style="font-family: 'andale mono', times; line-height: 1.5;"&gt; &lt;/SPAN&gt;&lt;SPAN class="s3" style="font-family: 'andale mono', times; line-height: 1.5;"&gt;{&lt;/SPAN&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;&lt;SPAN class="s1"&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;&lt;SPAN class="s1"&gt;&lt;/SPAN&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return&lt;/STRONG&gt;&lt;SPAN class="s1"&gt; &lt;/SPAN&gt;&lt;SPAN class="s6"&gt;0x00&lt;/SPAN&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s3"&gt;}&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p4" style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN style="font-family: arial, helvetica, sans-serif;"&gt;I send characters from the terminal to the LIN pin and the debugger will never break on "return B_SCID;", but if I halt execution I can see RXEDGIF has been set.&amp;nbsp; If I modify the above code to clear RSRC (internal loopback mode) and send a character by writing to SCID, then the debugger will break on the "return B_SCID;" line.&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p4" style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN style="font-family: arial, helvetica, sans-serif;"&gt;Thank you for your help!&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 07 Jan 2016 08:39:41 GMT</pubDate>
    <dc:creator>joek</dc:creator>
    <dc:date>2016-01-07T08:39:41Z</dc:date>
    <item>
      <title>MM9Z1_638 SCI Half-Duplex mode, RDRF not set</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/MM9Z1-638-SCI-Half-Duplex-mode-RDRF-not-set/m-p/473758#M11916</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The MM9Z1_638 has an S12Z processor and S08SCIV4 SCI module.&amp;nbsp; I want to use the SCI in one-wire, half duplex mode.&amp;nbsp; The physical pin I am using is the LIN pin.&amp;nbsp; So, I have set both LIN_TX.FROMSCI and LIN_RX.TOSCI.&amp;nbsp; I have a terminal application running on my PC and a USB-LIN adapter connected (19,200 baud, N, 8, 1).&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I can send data from the processor to the terminal with no problems.&amp;nbsp; But, I cannot receive any data.&amp;nbsp; RDRF is never set.&amp;nbsp; I do see RXEDGIF set when I send a character.&amp;nbsp; This implies the signal is making it to the SCI module.&amp;nbsp; I have checked the baud rate settings and confirmed that a sent character (e.g. 'U') has exactly the same scope waveform on the LIN pin as a received character.&amp;nbsp; So I think the baud rate setting is OK.&amp;nbsp; I did find a bug in the MM9Z1_638 example code in this area, but fixed it (baud rate was off by 2.5%).&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;All SCI interrupts are disabled.&amp;nbsp; I want it to work via polling first, then I will implement the interrupts.&amp;nbsp; I believe I should be able to send a character from the terminal to the LIN pin and see RDRF set.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I think I need to have LOOPS=1 and RSRC=1 for one-wire mode.&amp;nbsp; In the process of debugging, I cleared RSRC=0 to see what would happen.&amp;nbsp; It turns out that in this mode (internal loopback) when I send a character by writing to SCID, the receiver sets RDRF.&amp;nbsp; Great!&amp;nbsp; But as soon as I set RSRC=1, RDRF never sets.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here is the SCI initialization code:&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;&lt;STRONG&gt;void&lt;/STRONG&gt;&lt;SPAN class="s1"&gt; &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;&lt;STRONG&gt;SCIInit&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;(&lt;/SPAN&gt;&lt;STRONG&gt;void&lt;/STRONG&gt;&lt;SPAN class="s3"&gt;)&lt;/SPAN&gt;&lt;SPAN class="s1"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="s3"&gt;{&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B_SCIBD &lt;SPAN class="s4"&gt;=&lt;/SPAN&gt; &lt;SPAN class="s3"&gt;(&lt;/SPAN&gt;&lt;SPAN class="s5"&gt;u16&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;)(&lt;/SPAN&gt;&lt;SPAN class="s6"&gt;25&lt;/SPAN&gt;ul&lt;SPAN class="s4"&gt;*&lt;/SPAN&gt;&lt;SPAN class="s6"&gt;1000000&lt;/SPAN&gt;ul&lt;SPAN class="s4"&gt;&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;/&lt;/SPAN&gt;SCI_BAUD&lt;SPAN class="s4"&gt;/&lt;/SPAN&gt;&lt;SPAN class="s6"&gt;16&lt;/SPAN&gt;ul&lt;SPAN class="s3"&gt;)&lt;/SPAN&gt;&lt;SPAN class="s4"&gt;;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;&lt;SPAN class="s4"&gt;&lt;/SPAN&gt;&lt;SPAN style="line-height: 1.5;"&gt;&lt;SPAN class="s1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B_SCIC1 &lt;/SPAN&gt;&lt;SPAN class="s4"&gt;=&lt;/SPAN&gt;&lt;SPAN class="s1"&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="line-height: 1.5;"&gt;B_SCIC1_DPD1_MASK &lt;/SPAN&gt;&lt;SPAN class="s1" style="line-height: 1.5;"&gt;| &lt;/SPAN&gt;&lt;SPAN style="line-height: 1.5;"&gt;B_SCIC1_DPD0_MASK &lt;/SPAN&gt;&lt;SPAN class="s1" style="line-height: 1.5;"&gt;| &lt;/SPAN&gt;&lt;SPAN style="line-height: 1.5;"&gt;B_SCIC1_LOOPS_MASK &lt;/SPAN&gt;&lt;SPAN class="s1" style="line-height: 1.5;"&gt;| &lt;/SPAN&gt;&lt;SPAN style="line-height: 1.5;"&gt;B_SCIC1_RSRC_MASK&lt;/SPAN&gt;&lt;SPAN style="line-height: 1.5;"&gt;&lt;SPAN class="s4"&gt;;&lt;/SPAN&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;&lt;SPAN style="line-height: 1.5;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B_SCIC2 &lt;/SPAN&gt;&lt;SPAN class="s4" style="line-height: 1.5;"&gt;=&lt;/SPAN&gt;&lt;SPAN style="line-height: 1.5;"&gt; B_SCIC2_TE_MASK&lt;/SPAN&gt;&lt;SPAN class="s4" style="line-height: 1.5;"&gt;|&lt;/SPAN&gt;&lt;SPAN style="line-height: 1.5;"&gt;B_SCIC2_RE_MASK&lt;/SPAN&gt;&lt;SPAN class="s4" style="line-height: 1.5;"&gt;;&lt;/SPAN&gt;&lt;SPAN style="line-height: 1.5;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN class="s7" style="line-height: 1.5;"&gt;// enable &lt;/SPAN&gt;&lt;SPAN class="s8" style="line-height: 1.5;"&gt;rx&lt;/SPAN&gt;&lt;SPAN class="s7" style="line-height: 1.5;"&gt; and &lt;/SPAN&gt;&lt;SPAN class="s8" style="line-height: 1.5;"&gt;tx&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;&lt;SPAN class="s8"&gt;&lt;/SPAN&gt;&lt;SPAN style="line-height: 1.5;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B_SCIC3 &lt;/SPAN&gt;&lt;SPAN class="s4" style="line-height: 1.5;"&gt;=&lt;/SPAN&gt;&lt;SPAN style="line-height: 1.5;"&gt; 0x00&lt;/SPAN&gt;&lt;SPAN class="s4" style="line-height: 1.5;"&gt;;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p5"&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p5" style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="p5"&gt;&lt;SPAN style="font-family: arial, helvetica, sans-serif;"&gt;And here is the receive function I call repeatedly from the main loop:&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p5" style="min-height: 8pt; padding: 0px;"&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt; &lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;&lt;STRONG&gt;char&lt;/STRONG&gt;&lt;SPAN class="s1"&gt; &lt;/SPAN&gt;&lt;SPAN class="s2"&gt;&lt;STRONG&gt;SCIRec&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN class="s3"&gt;(&lt;/SPAN&gt;&lt;STRONG&gt;void&lt;/STRONG&gt;&lt;SPAN class="s3"&gt;)&lt;/SPAN&gt;&lt;SPAN class="s1"&gt; &lt;/SPAN&gt;&lt;SPAN class="s3"&gt;{&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;&lt;SPAN class="s4" style="font-family: 'andale mono', times; line-height: 1.5;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="font-family: 'andale mono', times; line-height: 1.5;"&gt; &lt;/SPAN&gt;&lt;SPAN class="s3" style="font-family: 'andale mono', times; line-height: 1.5;"&gt;(&lt;/SPAN&gt;&lt;SPAN style="font-family: 'andale mono', times; line-height: 1.5;"&gt;B_SCIS1_RDRF&lt;/SPAN&gt;&lt;SPAN class="s3" style="font-family: 'andale mono', times; line-height: 1.5;"&gt;)&lt;/SPAN&gt;&lt;SPAN style="font-family: 'andale mono', times; line-height: 1.5;"&gt; &lt;/SPAN&gt;&lt;SPAN class="s3" style="font-family: 'andale mono', times; line-height: 1.5;"&gt;{&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;&lt;SPAN class="s1" style="font-family: 'andale mono', times; line-height: 1.5;"&gt;&lt;/SPAN&gt;&lt;SPAN style="font-family: 'andale mono', times; line-height: 1.5;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return B_SCID;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;&lt;SPAN class="s3"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p3"&gt;&lt;STRONG style="font-family: 'andale mono', times; line-height: 1.5;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;/STRONG&gt;&lt;SPAN class="s1" style="font-family: 'andale mono', times; line-height: 1.5;"&gt; &lt;/SPAN&gt;&lt;SPAN class="s3" style="font-family: 'andale mono', times; line-height: 1.5;"&gt;{&lt;/SPAN&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;&lt;SPAN class="s1"&gt; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p1"&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;&lt;SPAN class="s1"&gt;&lt;/SPAN&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return&lt;/STRONG&gt;&lt;SPAN class="s1"&gt; &lt;/SPAN&gt;&lt;SPAN class="s6"&gt;0x00&lt;/SPAN&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p2"&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN class="s3"&gt;}&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN style="font-family: 'andale mono', times;"&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p4" style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN style="font-family: arial, helvetica, sans-serif;"&gt;I send characters from the terminal to the LIN pin and the debugger will never break on "return B_SCID;", but if I halt execution I can see RXEDGIF has been set.&amp;nbsp; If I modify the above code to clear RSRC (internal loopback mode) and send a character by writing to SCID, then the debugger will break on the "return B_SCID;" line.&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="p4" style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P class="p4"&gt;&lt;SPAN style="font-family: arial, helvetica, sans-serif;"&gt;Thank you for your help!&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 07 Jan 2016 08:39:41 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/MM9Z1-638-SCI-Half-Duplex-mode-RDRF-not-set/m-p/473758#M11916</guid>
      <dc:creator>joek</dc:creator>
      <dc:date>2016-01-07T08:39:41Z</dc:date>
    </item>
    <item>
      <title>Re: MM9Z1_638 SCI Half-Duplex mode, RDRF not set</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/MM9Z1-638-SCI-Half-Duplex-mode-RDRF-not-set/m-p/473759#M11917</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The problem has been resolved.&amp;nbsp; I was mistaken to set LOOPS=1 and RSRC=1.&amp;nbsp; This should only be done when using SCI one-wire mode on a GPIO pin.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The LIN PHY connects tx and rx internally, so LOOPS and RSRC should both be 0.&amp;nbsp; If the receiver is enabled it will see every byte transmitted.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 07 Jan 2016 21:57:46 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/MM9Z1-638-SCI-Half-Duplex-mode-RDRF-not-set/m-p/473759#M11917</guid>
      <dc:creator>joek</dc:creator>
      <dc:date>2016-01-07T21:57:46Z</dc:date>
    </item>
  </channel>
</rss>

