<?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中的主题 Re: MPC5746R eTPU to UART data transfer</title>
    <link>https://community.nxp.com/t5/MPC5xxx/MPC5746R-eTPU-to-UART-data-transfer/m-p/769261#M11040</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;just a quick hint - if you want to trigger transferring of 8 bytes on serial interface using one trigger from ETPU, you need to use two DMA channels. Configure one channel to send 8 bytes using trigger TXFIFO empty. This channel will be enabled by second channel - configure second channel (triggered by ETPU) to simply write to DMA_SERQ register to enable hardware trigger for first channel.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Lukas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 22 May 2018 14:04:57 GMT</pubDate>
    <dc:creator>lukaszadrapa</dc:creator>
    <dc:date>2018-05-22T14:04:57Z</dc:date>
    <item>
      <title>MPC5746R eTPU to UART data transfer</title>
      <link>https://community.nxp.com/t5/MPC5xxx/MPC5746R-eTPU-to-UART-data-transfer/m-p/769256#M11035</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 want to periodically transfer data from the eTPU to UART via DMA, every 100us it should transfer 8 bytes.&amp;nbsp; I have tried the following approaches:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1) NBYTES = 1, CITER/BITER = 8. The problem here is that the DMARequest from the eTPU only triggers one iteration of the major loop so only one byte is sent.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2) NBYTES = 8, CITER/BITER = 1. With this test the data seems to be overwritten and not everything is sent. Which I'm guessing is because the Tx FIFO only has room for 4 bytes&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;3) NBYTES = 3, CITER/BITER = 1.&amp;nbsp;This acutally works, all data is sent, but I really want to send 8 bytes....&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Does anyone have any idea or example on how to make this work??&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Cecilia&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 18 May 2018 14:21:48 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/MPC5746R-eTPU-to-UART-data-transfer/m-p/769256#M11035</guid>
      <dc:creator>ceciliac</dc:creator>
      <dc:date>2018-05-18T14:21:48Z</dc:date>
    </item>
    <item>
      <title>Re: MPC5746R eTPU to UART data transfer</title>
      <link>https://community.nxp.com/t5/MPC5xxx/MPC5746R-eTPU-to-UART-data-transfer/m-p/769257#M11036</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I think you need to be using the UART TXFIFO empty to trigger the DMA action, once the eTPU has initiated the DMA transfer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;James&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 18 May 2018 21:52:14 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/MPC5746R-eTPU-to-UART-data-transfer/m-p/769257#M11036</guid>
      <dc:creator>jamesmurray</dc:creator>
      <dc:date>2018-05-18T21:52:14Z</dc:date>
    </item>
    <item>
      <title>Re: MPC5746R eTPU to UART data transfer</title>
      <link>https://community.nxp.com/t5/MPC5xxx/MPC5746R-eTPU-to-UART-data-transfer/m-p/769258#M11037</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Not sure which register to adjust to accomplish that, I have the following setting for UART and DMA:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;// Baud rate = 2Mb/s &lt;BR /&gt; LINFlexD_0.LINIBRR.B.IBR = 3; &lt;BR /&gt; LINFlexD_0.LINFBRR.B.FBR = 1; &lt;BR /&gt; LINFlexD_0.UARTCR.B.UART = 1; &lt;BR /&gt; LINFlexD_0.UARTCR.B.RFBM = 1; &lt;BR /&gt; LINFlexD_0.UARTCR.B.TFBM = 1; &lt;BR /&gt; LINFlexD_0.UARTCR.B.OSR = 0; &lt;BR /&gt; LINFlexD_0.UARTCR.B.ROSE = 0; &lt;BR /&gt; LINFlexD_0.UARTCR.B.DTU_PCETX = 0; &lt;BR /&gt; LINFlexD_0.UARTCR.B.SBUR = 0; &lt;BR /&gt; LINFlexD_0.UARTCR.B.WL1 = 0; &lt;BR /&gt; LINFlexD_0.UARTCR.B.WL0 = 1; &lt;BR /&gt; LINFlexD_0.UARTCR.B.PCE = 0; &lt;BR /&gt; LINFlexD_0.UARTCR.B.TxEn = 1; &lt;BR /&gt; LINFlexD_0.DMATXE.R = 1;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;__attribute__(( aligned(32) )) DMA_TCD_Struct etpu_rs485_tcd = {&lt;BR /&gt; (vuint32_t)(uint32_t *)((uint32_t)fs_etpu_data_ram_start + (eTPU-&amp;gt;CHAN[70].CR.B.CPBA&amp;lt;&amp;lt;3) + _CPBA_ARRAY_Sensor_rs485Out_),&lt;BR /&gt; 0x00, /*SMOD*/&lt;BR /&gt; 0x00, /*SSIZE*/&lt;BR /&gt; 0x00, /*DMOD*/&lt;BR /&gt; 0x00, /*DSIZE*/&lt;BR /&gt; 1, /*SOFF*/&lt;BR /&gt; 1, /*NBYTES*/&lt;BR /&gt; -8, /*SLAST*/&lt;BR /&gt; ((vuint32_t)&amp;amp;LINFlexD_0.BDRL.R) + 3, /*DADDR*/&lt;BR /&gt; 0x00, /*CITERE_LINK*/&lt;BR /&gt;8, /*CITER*/&lt;BR /&gt; 0, /*DOFF*/&lt;BR /&gt; 0, /*DLAST_SGA*/&lt;BR /&gt; 0x00, /*BITERE_LINK*/&lt;BR /&gt;8, /*BITER*/&lt;BR /&gt; 0x00, /*BWC*/&lt;BR /&gt; 0x00, /*MAJORLINKCH*/&lt;BR /&gt; 0x00, /*DONE*/&lt;BR /&gt; 0x00, /*ACTIVE*/&lt;BR /&gt; 0x00, /*MAJORE_LINK*/&lt;BR /&gt; 0x00, /*E_SG*/&lt;BR /&gt; 0x00, /*D_REQ*/&lt;BR /&gt; 0x00, /*INT_HALF*/&lt;BR /&gt; 0x00, /*INT_MAJ*/&lt;BR /&gt; 0x00 /*START*/&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks, Cecilia&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 20 May 2018 08:06:53 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/MPC5746R-eTPU-to-UART-data-transfer/m-p/769258#M11037</guid>
      <dc:creator>ceciliac</dc:creator>
      <dc:date>2018-05-20T08:06:53Z</dc:date>
    </item>
    <item>
      <title>Re: MPC5746R eTPU to UART data transfer</title>
      <link>https://community.nxp.com/t5/MPC5xxx/MPC5746R-eTPU-to-UART-data-transfer/m-p/769259#M11038</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Check the DMA MUX chapter and section 19.1.3&lt;/P&gt;&lt;P&gt;Linflex_0 TX is source 10 and can be used with DMA channels 0-15&lt;/P&gt;&lt;P&gt;or source 44&amp;nbsp; and can be used with DMA channels 32-63&lt;/P&gt;&lt;P&gt;I guess that currently you are using a source between 21 and 43 ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm not using structs for my DMA configuration and don't have a 70th eTPU channel? So I don't quite follow that part of your code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;James&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 20 May 2018 08:28:55 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/MPC5746R-eTPU-to-UART-data-transfer/m-p/769259#M11038</guid>
      <dc:creator>jamesmurray</dc:creator>
      <dc:date>2018-05-20T08:28:55Z</dc:date>
    </item>
    <item>
      <title>Re: MPC5746R eTPU to UART data transfer</title>
      <link>https://community.nxp.com/t5/MPC5xxx/MPC5746R-eTPU-to-UART-data-transfer/m-p/769260#M11039</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The etpu B channels actually starts at&amp;nbsp;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;eTPU-&amp;gt;CHAN[64], so number 70 is eTPU_B_6 (not really clear in the manual..).&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;Your response got me thinking...since I am using a DMARequest from the eTPU that DMA channel is configured in the MUX as eTPU. So what I have done now is to create a channel linking between the etpu DMA channel to a DMA channel configured for LinFlex_0. Unfortunately it behaves exactly the same way, only 8 bits are sent per etpu request. Also the setting of&amp;nbsp;LINFlexD_0.DMATXE.R does not seem to matter () which suggests there is something wrong with the configuration.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;According to the manual "A DMA request is triggered by FIFO-not-full (TX) status signals." but it seems it is never triggered.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;//Cecilia&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 21 May 2018 13:42:47 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/MPC5746R-eTPU-to-UART-data-transfer/m-p/769260#M11039</guid>
      <dc:creator>ceciliac</dc:creator>
      <dc:date>2018-05-21T13:42:47Z</dc:date>
    </item>
    <item>
      <title>Re: MPC5746R eTPU to UART data transfer</title>
      <link>https://community.nxp.com/t5/MPC5xxx/MPC5746R-eTPU-to-UART-data-transfer/m-p/769261#M11040</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;just a quick hint - if you want to trigger transferring of 8 bytes on serial interface using one trigger from ETPU, you need to use two DMA channels. Configure one channel to send 8 bytes using trigger TXFIFO empty. This channel will be enabled by second channel - configure second channel (triggered by ETPU) to simply write to DMA_SERQ register to enable hardware trigger for first channel.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Lukas&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 22 May 2018 14:04:57 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/MPC5746R-eTPU-to-UART-data-transfer/m-p/769261#M11040</guid>
      <dc:creator>lukaszadrapa</dc:creator>
      <dc:date>2018-05-22T14:04:57Z</dc:date>
    </item>
    <item>
      <title>Re: MPC5746R eTPU to UART data transfer</title>
      <link>https://community.nxp.com/t5/MPC5xxx/MPC5746R-eTPU-to-UART-data-transfer/m-p/769262#M11041</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I have channel linking between the etpu DMA channel and the one configured for UART. However only 1 byte is sent for every request, to send all 8 bytes I need to call the DMARequest from the eTPU 8 times. There must be some additional configuration required for enabling the TxFifo empty trigger !!??&lt;/P&gt;&lt;P&gt;Thanks, Cecilia&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 22 May 2018 19:51:47 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MPC5xxx/MPC5746R-eTPU-to-UART-data-transfer/m-p/769262#M11041</guid>
      <dc:creator>ceciliac</dc:creator>
      <dc:date>2018-05-22T19:51:47Z</dc:date>
    </item>
  </channel>
</rss>

