<?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>MPC5xxxのトピックeSCI Interface in MPC5777c</title>
    <link>https://community.nxp.com/t5/MPC5xxx/eSCI-Interface-in-MPC5777c/m-p/683537#M8317</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;HI,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am using eSCi interface of MPC5777C to connect to external device.&lt;/P&gt;&lt;P&gt;I am using GPIO 103, 104 pins as TX and RX respectively.&lt;/P&gt;&lt;P&gt;I have configured GPIO[103] as GPIO and OBE and GPIO[104] as GPIO and IBE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;These are my transmit and recieve functions&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;void TransmitData(void)&lt;BR /&gt;{&lt;BR /&gt; uint8_t j;&lt;BR /&gt; for (j=0; j&amp;lt; sizeof (TransData); j++) { /* Loop for character string */&lt;BR /&gt; while (eSCI_A.IFSR1.B.TDRE == 0) {} /* Wait for transmit data reg empty = 1 */&lt;BR /&gt; eSCI_A.IFSR1.R = 0x8000; /* Clear TDRE flag */&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Here instead of writing data to data register of esci, I am writing data to SIU GPDO output register&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;//eSCI_A.SDR.B.RDTD = TransData[j] &amp;lt;&amp;lt; 24; /* Write byte*/&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;SIU_GPDO[103] =&amp;nbsp;TransData[j] &amp;lt;&amp;lt; 24; /* Write byte*/&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt; }&lt;/P&gt;&lt;P&gt;}&lt;BR /&gt;void ReceiveData(void)&lt;BR /&gt;{&lt;BR /&gt; while (eSCI_A.IFSR1.B.RDRF == 0) {} /* Wait for receive data reg full = 1 */&lt;BR /&gt; eSCI_A.IFSR1.R = 0x2000; /* Clear RDRF flag */&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff;"&gt;Same here. Instead of reading data from data register of esci, I am reading data directly from SIU GPDI input register&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG style="color: #0000ff;"&gt;//RecData = eSCI_A.SDR.B.RDTD; /* Read byte of Data*/&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff;"&gt;RecData = SIU_GPDI[104];&lt;/STRONG&gt;&lt;BR /&gt; while (eSCI_A.IFSR1.B.TDRE == 0) {} /* Wait for transmit data reg empty = 1 */&lt;BR /&gt; eSCI_A.IFSR1.R = 0x8000; /* Clear TDRE flag */&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is this the correct way to use GPIO pins for esci interface?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Vrushali&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 17 May 2017 10:27:01 GMT</pubDate>
    <dc:creator>vrushalitaklika</dc:creator>
    <dc:date>2017-05-17T10:27:01Z</dc:date>
    <item>
      <title>eSCI Interface in MPC5777c</title>
      <link>https://community.nxp.com/t5/MPC5xxx/eSCI-Interface-in-MPC5777c/m-p/683537#M8317</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;HI,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am using eSCi interface of MPC5777C to connect to external device.&lt;/P&gt;&lt;P&gt;I am using GPIO 103, 104 pins as TX and RX respectively.&lt;/P&gt;&lt;P&gt;I have configured GPIO[103] as GPIO and OBE and GPIO[104] as GPIO and IBE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;These are my transmit and recieve functions&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;void TransmitData(void)&lt;BR /&gt;{&lt;BR /&gt; uint8_t j;&lt;BR /&gt; for (j=0; j&amp;lt; sizeof (TransData); j++) { /* Loop for character string */&lt;BR /&gt; while (eSCI_A.IFSR1.B.TDRE == 0) {} /* Wait for transmit data reg empty = 1 */&lt;BR /&gt; eSCI_A.IFSR1.R = 0x8000; /* Clear TDRE flag */&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Here instead of writing data to data register of esci, I am writing data to SIU GPDO output register&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;//eSCI_A.SDR.B.RDTD = TransData[j] &amp;lt;&amp;lt; 24; /* Write byte*/&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;SIU_GPDO[103] =&amp;nbsp;TransData[j] &amp;lt;&amp;lt; 24; /* Write byte*/&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;BR /&gt; }&lt;/P&gt;&lt;P&gt;}&lt;BR /&gt;void ReceiveData(void)&lt;BR /&gt;{&lt;BR /&gt; while (eSCI_A.IFSR1.B.RDRF == 0) {} /* Wait for receive data reg full = 1 */&lt;BR /&gt; eSCI_A.IFSR1.R = 0x2000; /* Clear RDRF flag */&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff;"&gt;Same here. Instead of reading data from data register of esci, I am reading data directly from SIU GPDI input register&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG style="color: #0000ff;"&gt;//RecData = eSCI_A.SDR.B.RDTD; /* Read byte of Data*/&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #0000ff;"&gt;RecData = SIU_GPDI[104];&lt;/STRONG&gt;&lt;BR /&gt; while (eSCI_A.IFSR1.B.TDRE == 0) {} /* Wait for transmit data reg empty = 1 */&lt;BR /&gt; eSCI_A.IFSR1.R = 0x8000; /* Clear TDRE flag */&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is this the correct way to use GPIO pins for esci interface?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;Vrushali&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 17 May 2017 10:27:01 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/eSCI-Interface-in-MPC5777c/m-p/683537#M8317</guid>
      <dc:creator>vrushalitaklika</dc:creator>
      <dc:date>2017-05-17T10:27:01Z</dc:date>
    </item>
    <item>
      <title>Re: eSCI Interface in MPC5777c</title>
      <link>https://community.nxp.com/t5/MPC5xxx/eSCI-Interface-in-MPC5777c/m-p/683538#M8318</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Vrushali,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you want to use the eSCI module then you need to configure pins for eSCI functionality.&lt;/P&gt;&lt;P&gt;No eSCI options are available for your selected pins. The eSCI_A is available e.g on GPIO89 and GPIO90.&lt;/P&gt;&lt;P&gt;The setting should be&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;SIU.PCR[89].R = 0x400;&amp;nbsp; // Configure pad for primary func: TxDA&lt;/P&gt;&lt;P&gt;SIU.PCR[90].R = 0x400;&amp;nbsp; // Configure pad for primary func: RxDA&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;And use the eSCI DR register for transmit and receive, not GPIO output/input registers.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;You can refer to MPC5777C PinToggleStationery example (&lt;A _jive_internal="true" href="https://community.nxp.com/docs/DOC-328290"&gt;https://community.nxp.com/docs/DOC-328290&lt;/A&gt;) which configure the eSCI_A properly. See uart.c file for details. &amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BR, Petr&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 23 May 2017 06:55:41 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/eSCI-Interface-in-MPC5777c/m-p/683538#M8318</guid>
      <dc:creator>PetrS</dc:creator>
      <dc:date>2017-05-23T06:55:41Z</dc:date>
    </item>
  </channel>
</rss>

