<?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 How to use DMA function to achieve  FTM  input capture? in S32K</title>
    <link>https://community.nxp.com/t5/S32K/How-to-use-DMA-function-to-achieve-FTM-input-capture/m-p/809313#M2915</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;How to use DMA function&amp;nbsp;to achieve&amp;nbsp; FTM&amp;nbsp; input capture?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In interrupt mode, I have&amp;nbsp;&lt;SPAN&gt;achieved,but I don't know how to configue it in dma mode, following is my code,use FTM0 ch0 &amp;amp;ch1 measure PWM duty, in debug mode,there is no change for reg&amp;nbsp;&lt;SPAN style="background-color: #ffffff;"&gt;FTM0-&amp;gt;CONTROLS[1].CnV,but not interrupt mode.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff;"&gt;Please help me!&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class="image-headerbgmain-png"&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV style="background-color: white;"&gt;&lt;DIV&gt;&lt;SPAN style="font-family: Calibri, Arial, Helvetica, sans-serif;"&gt;/****************************************************************************************************/&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt;void DmaInit(void)&lt;BR /&gt; {&lt;BR /&gt; &amp;nbsp;uint8_t index = 0;&lt;BR /&gt; &amp;nbsp;&lt;BR /&gt; &amp;nbsp; DmaMuxInit();&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;SIM-&amp;gt;PLATCGC |= SIM_PLATCGC_CGCDMA(1);&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt; &amp;nbsp; DMA-&amp;gt;TCD[0].CSR &amp;amp;= 0xFFFFFFFF ^ DMA_TCD_CSR_DONE_MASK;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; DMA-&amp;gt;TCD[0].SADDR = DMA_TCD_SADDR_SADDR(&amp;amp;(FTM0-&amp;gt;CONTROLS[1].CnV));&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; DMA-&amp;gt;TCD[0].SOFF = DMA_TCD_SOFF_SOFF(0);&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;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; DMA-&amp;gt;TCD[0].ATTR = DMA_TCD_ATTR_SMOD(0) | DMA_TCD_ATTR_SSIZE(1) | DMA_TCD_ATTR_DMOD(0) |&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;DMA_TCD_ATTR_DSIZE(1);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;DMA-&amp;gt;TCD[0].NBYTES.MLOFFNO = DMA_TCD_NBYTES_MLNO_NBYTES(2);&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; DMA-&amp;gt;TCD[0].SLAST = 0;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; DMA-&amp;gt;TCD[0].DADDR = DMA_TCD_DADDR_DADDR(&amp;amp;(RxDmaCan1DataFifo[0]));&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; DMA-&amp;gt;TCD[0].DOFF = DMA_TCD_DOFF_DOFF(0);&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; DMA-&amp;gt;TCD[0].CITER.ELINKNO = DMA_TCD_CITER_ELINKNO_CITER(1) | DMA_TCD_CITER_ELINKNO_ELINK(0);&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; DMA-&amp;gt;TCD[0].DLASTSGA = DMA_TCD_DLASTSGA_DLASTSGA(0);&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; DMA-&amp;gt;TCD[0].BITER.ELINKNO = DMA_TCD_BITER_ELINKNO_BITER(1) | DMA_TCD_BITER_ELINKNO_ELINK(0);&amp;nbsp; &lt;BR /&gt; #ifndef DMA_CHANNEL_IQR&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;DMA-&amp;gt;TCD[0].CSR = DMA_TCD_CSR_BWC(0) | DMA_TCD_CSR_MAJORELINK(0) | DMA_TCD_CSR_MAJORLINKCH(0) | DMA_TCD_CSR_ESG(0) | DMA_TCD_CSR_DREQ(0) | DMA_TCD_CSR_INTHALF(0) | DMA_TCD_CSR_INTMAJOR(1) | DMA_TCD_CSR_START(0);&amp;nbsp;&amp;nbsp; &lt;BR /&gt; #else&lt;BR /&gt; &amp;nbsp;DMA-&amp;gt;TCD[0].CSR = DMA_TCD_CSR_BWC(0) | DMA_TCD_CSR_MAJORELINK(0) | DMA_TCD_CSR_MAJORLINKCH(0) | DMA_TCD_CSR_ESG(0) | DMA_TCD_CSR_DREQ(0) | DMA_TCD_CSR_INTHALF(0) | DMA_TCD_CSR_INTMAJOR(0) | DMA_TCD_CSR_START(0);&amp;nbsp;&amp;nbsp; &lt;BR /&gt; #endif&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; DMA-&amp;gt;SERQ = DMA_SERQ_SERQ(0);&lt;/DIV&gt;&lt;DIV&gt; &lt;/DIV&gt;&lt;DIV&gt;#ifndef DMA_CHANNEL_IQR&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;INT_SYS_EnableIRQ(DMA0_IRQn);&lt;BR /&gt; #endif&lt;BR /&gt; }&lt;/DIV&gt;&lt;DIV&gt; &lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="background-color: #ffffff;"&gt;/&lt;/SPAN&gt;&lt;SPAN style="background-color: #ffffff;"&gt;****************************************************************************************************&lt;/SPAN&gt;&lt;SPAN style="background-color: #ffffff;"&gt;/&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;static void DmaMuxInit (void)&lt;BR /&gt; {&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;PCC-&amp;gt;PCCn[PCC_DMAMUX_INDEX] |= PCC_PCCn_CGC_MASK;&amp;nbsp; &lt;BR /&gt; &amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;DMAMUX-&amp;gt;CHCFG[0] &amp;amp;= ~DMAMUX_CHCFG_ENBL(1);&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;DMAMUX-&amp;gt;CHCFG[0] |= DMAMUX_CHCFG_SOURCE(36);&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;DMAMUX-&amp;gt;CHCFG[0] |= DMAMUX_CHCFG_ENBL(1);&lt;/DIV&gt;&lt;DIV&gt;}&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="background-color: #ffffff;"&gt;/&lt;/SPAN&gt;&lt;SPAN style="background-color: #ffffff;"&gt;****************************************************************************************************&lt;/SPAN&gt;&lt;SPAN style="background-color: #ffffff;"&gt;/&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="font-family: Calibri, Arial, Helvetica, sans-serif;"&gt;void FTM0_init(void) &lt;BR /&gt; {&lt;BR /&gt; &amp;nbsp; PCC-&amp;gt;PCCn[PCC_FTM0_INDEX] &amp;amp;= ~PCC_PCCn_CGC_MASK; &amp;nbsp;/* Ensure clk disabled for config */&lt;BR /&gt; &amp;nbsp; PCC-&amp;gt;PCCn[PCC_FTM0_INDEX] |= PCC_PCCn_PCS(1) |&amp;nbsp; PCC_PCCn_CGC_MASK;&amp;nbsp;/* Clock Src=1, 8 MHz SOSCDIV1_CLK */&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;&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;&amp;nbsp;&amp;nbsp; /* Enable clock for FTM regs */&lt;BR /&gt; &amp;nbsp; FTM0-&amp;gt;MODE |= FTM_MODE_WPDIS_MASK;&amp;nbsp; /* Write protect to registers disabled (default) */&lt;BR /&gt; &amp;nbsp; FTM0-&amp;gt;SC = 0x000C0107;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="font-family: Calibri, Arial, Helvetica, sans-serif;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;SPAN style="background-color: #ffffff;"&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; /* Enable PWM channel&amp;nbsp;0&amp;nbsp;input*/&lt;/SPAN&gt;&lt;BR style="background-color: #ffffff;" /&gt;&lt;SPAN style="background-color: #ffffff;"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Enable PWM channel&amp;nbsp;1&amp;nbsp;input*/&lt;/SPAN&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="font-family: Calibri, Arial, Helvetica, sans-serif;"&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; /* Enable PWM channel 2 output*/&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Enable PWM channel 3 output*/&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* TOIE (Timer Overflow Interrupt Ena) = 1 (enable) */&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* CPWMS (Center aligned PWM Select) = 0 (default, up count) */&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* CLKS (Clock source) = 0 (default, no clock; FTM disabled) */&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* PS (Prescaler factor) = 7. Prescaler = 128 */&lt;BR /&gt; &amp;nbsp; FTM0-&amp;gt;COMBINE = 0x00000004;/* FTM mode settings used: DECAPENx = 1, DECAP = 0£¬MCOMBINEx = 0, COMBINEx=0&amp;nbsp; */&lt;BR /&gt; &amp;nbsp; FTM0-&amp;gt;POL = 0x00000000;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Polarity for all channels is active high (default) */&lt;BR /&gt;&amp;nbsp; FTM0-&amp;gt;MOD = 62500 - 1 ;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* FTM1 counter final value (used for PWM mode) */&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* FTM1 Period = MOD-CNTIN+0x0001 ~= 62500 ctr clks&amp;nbsp; */&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* 8MHz /128 = 62.5kHz -&amp;gt;&amp;nbsp; ticks -&amp;gt; 1Hz */&lt;BR /&gt; }&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="background-color: #ffffff;"&gt;/&lt;/SPAN&gt;&lt;SPAN style="background-color: #ffffff;"&gt;****************************************************************************************************&lt;/SPAN&gt;&lt;SPAN style="background-color: #ffffff;"&gt;/&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt;void FTM0_CH0_IC_init(void) &lt;BR /&gt; {&lt;BR /&gt; &amp;nbsp; FTM0-&amp;gt;CONTROLS[0].CnSC = 0x00000059;&amp;nbsp; /* FTM0 ch6: Input Capture fall edge */&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* CHIE (Chan Interrupt Ena) = 1 (enable) */&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* MSB:MSA (chan Mode Select)=0b01, Continue */&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* ELSB:ELSA (ch Edge/Level Select)=0b10, fall*/&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* DMA enable */&lt;BR /&gt; }&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="background-color: #ffffff;"&gt;/&lt;/SPAN&gt;&lt;SPAN style="background-color: #ffffff;"&gt;****************************************************************************************************&lt;/SPAN&gt;&lt;SPAN style="background-color: #ffffff;"&gt;/&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;void FTM0_CH1_IC_init(void) &lt;BR /&gt; {&lt;BR /&gt; &amp;nbsp; FTM0-&amp;gt;CONTROLS[1].CnSC = 0x00000045;&amp;nbsp; /* FTM0 ch7: Input Capture rising edge */&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* CHIE (Chan Interrupt Ena) = 1 (enable) */&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* MSB:MSA (chan Mode Select)=0b00, Continue */&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* ELSB:ELSA (ch Edge/Level Select)=0b01, rise*/&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* DMA enable */&lt;BR /&gt; }&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 19 Oct 2018 09:15:38 GMT</pubDate>
    <dc:creator>tianyunfang</dc:creator>
    <dc:date>2018-10-19T09:15:38Z</dc:date>
    <item>
      <title>How to use DMA function to achieve  FTM  input capture?</title>
      <link>https://community.nxp.com/t5/S32K/How-to-use-DMA-function-to-achieve-FTM-input-capture/m-p/809313#M2915</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;How to use DMA function&amp;nbsp;to achieve&amp;nbsp; FTM&amp;nbsp; input capture?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In interrupt mode, I have&amp;nbsp;&lt;SPAN&gt;achieved,but I don't know how to configue it in dma mode, following is my code,use FTM0 ch0 &amp;amp;ch1 measure PWM duty, in debug mode,there is no change for reg&amp;nbsp;&lt;SPAN style="background-color: #ffffff;"&gt;FTM0-&amp;gt;CONTROLS[1].CnV,but not interrupt mode.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffff;"&gt;Please help me!&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class="image-headerbgmain-png"&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV class=""&gt;&lt;DIV style="background-color: white;"&gt;&lt;DIV&gt;&lt;SPAN style="font-family: Calibri, Arial, Helvetica, sans-serif;"&gt;/****************************************************************************************************/&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt;void DmaInit(void)&lt;BR /&gt; {&lt;BR /&gt; &amp;nbsp;uint8_t index = 0;&lt;BR /&gt; &amp;nbsp;&lt;BR /&gt; &amp;nbsp; DmaMuxInit();&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;SIM-&amp;gt;PLATCGC |= SIM_PLATCGC_CGCDMA(1);&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt; &amp;nbsp; DMA-&amp;gt;TCD[0].CSR &amp;amp;= 0xFFFFFFFF ^ DMA_TCD_CSR_DONE_MASK;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; DMA-&amp;gt;TCD[0].SADDR = DMA_TCD_SADDR_SADDR(&amp;amp;(FTM0-&amp;gt;CONTROLS[1].CnV));&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; DMA-&amp;gt;TCD[0].SOFF = DMA_TCD_SOFF_SOFF(0);&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;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; DMA-&amp;gt;TCD[0].ATTR = DMA_TCD_ATTR_SMOD(0) | DMA_TCD_ATTR_SSIZE(1) | DMA_TCD_ATTR_DMOD(0) |&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;DMA_TCD_ATTR_DSIZE(1);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;DMA-&amp;gt;TCD[0].NBYTES.MLOFFNO = DMA_TCD_NBYTES_MLNO_NBYTES(2);&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; DMA-&amp;gt;TCD[0].SLAST = 0;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; DMA-&amp;gt;TCD[0].DADDR = DMA_TCD_DADDR_DADDR(&amp;amp;(RxDmaCan1DataFifo[0]));&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; DMA-&amp;gt;TCD[0].DOFF = DMA_TCD_DOFF_DOFF(0);&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; DMA-&amp;gt;TCD[0].CITER.ELINKNO = DMA_TCD_CITER_ELINKNO_CITER(1) | DMA_TCD_CITER_ELINKNO_ELINK(0);&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; DMA-&amp;gt;TCD[0].DLASTSGA = DMA_TCD_DLASTSGA_DLASTSGA(0);&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; DMA-&amp;gt;TCD[0].BITER.ELINKNO = DMA_TCD_BITER_ELINKNO_BITER(1) | DMA_TCD_BITER_ELINKNO_ELINK(0);&amp;nbsp; &lt;BR /&gt; #ifndef DMA_CHANNEL_IQR&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;DMA-&amp;gt;TCD[0].CSR = DMA_TCD_CSR_BWC(0) | DMA_TCD_CSR_MAJORELINK(0) | DMA_TCD_CSR_MAJORLINKCH(0) | DMA_TCD_CSR_ESG(0) | DMA_TCD_CSR_DREQ(0) | DMA_TCD_CSR_INTHALF(0) | DMA_TCD_CSR_INTMAJOR(1) | DMA_TCD_CSR_START(0);&amp;nbsp;&amp;nbsp; &lt;BR /&gt; #else&lt;BR /&gt; &amp;nbsp;DMA-&amp;gt;TCD[0].CSR = DMA_TCD_CSR_BWC(0) | DMA_TCD_CSR_MAJORELINK(0) | DMA_TCD_CSR_MAJORLINKCH(0) | DMA_TCD_CSR_ESG(0) | DMA_TCD_CSR_DREQ(0) | DMA_TCD_CSR_INTHALF(0) | DMA_TCD_CSR_INTMAJOR(0) | DMA_TCD_CSR_START(0);&amp;nbsp;&amp;nbsp; &lt;BR /&gt; #endif&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; DMA-&amp;gt;SERQ = DMA_SERQ_SERQ(0);&lt;/DIV&gt;&lt;DIV&gt; &lt;/DIV&gt;&lt;DIV&gt;#ifndef DMA_CHANNEL_IQR&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;INT_SYS_EnableIRQ(DMA0_IRQn);&lt;BR /&gt; #endif&lt;BR /&gt; }&lt;/DIV&gt;&lt;DIV&gt; &lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="background-color: #ffffff;"&gt;/&lt;/SPAN&gt;&lt;SPAN style="background-color: #ffffff;"&gt;****************************************************************************************************&lt;/SPAN&gt;&lt;SPAN style="background-color: #ffffff;"&gt;/&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;static void DmaMuxInit (void)&lt;BR /&gt; {&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;PCC-&amp;gt;PCCn[PCC_DMAMUX_INDEX] |= PCC_PCCn_CGC_MASK;&amp;nbsp; &lt;BR /&gt; &amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;DMAMUX-&amp;gt;CHCFG[0] &amp;amp;= ~DMAMUX_CHCFG_ENBL(1);&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;DMAMUX-&amp;gt;CHCFG[0] |= DMAMUX_CHCFG_SOURCE(36);&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;DMAMUX-&amp;gt;CHCFG[0] |= DMAMUX_CHCFG_ENBL(1);&lt;/DIV&gt;&lt;DIV&gt;}&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="background-color: #ffffff;"&gt;/&lt;/SPAN&gt;&lt;SPAN style="background-color: #ffffff;"&gt;****************************************************************************************************&lt;/SPAN&gt;&lt;SPAN style="background-color: #ffffff;"&gt;/&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="font-family: Calibri, Arial, Helvetica, sans-serif;"&gt;void FTM0_init(void) &lt;BR /&gt; {&lt;BR /&gt; &amp;nbsp; PCC-&amp;gt;PCCn[PCC_FTM0_INDEX] &amp;amp;= ~PCC_PCCn_CGC_MASK; &amp;nbsp;/* Ensure clk disabled for config */&lt;BR /&gt; &amp;nbsp; PCC-&amp;gt;PCCn[PCC_FTM0_INDEX] |= PCC_PCCn_PCS(1) |&amp;nbsp; PCC_PCCn_CGC_MASK;&amp;nbsp;/* Clock Src=1, 8 MHz SOSCDIV1_CLK */&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;&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;&amp;nbsp;&amp;nbsp; /* Enable clock for FTM regs */&lt;BR /&gt; &amp;nbsp; FTM0-&amp;gt;MODE |= FTM_MODE_WPDIS_MASK;&amp;nbsp; /* Write protect to registers disabled (default) */&lt;BR /&gt; &amp;nbsp; FTM0-&amp;gt;SC = 0x000C0107;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="font-family: Calibri, Arial, Helvetica, sans-serif;"&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;SPAN style="background-color: #ffffff;"&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; /* Enable PWM channel&amp;nbsp;0&amp;nbsp;input*/&lt;/SPAN&gt;&lt;BR style="background-color: #ffffff;" /&gt;&lt;SPAN style="background-color: #ffffff;"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Enable PWM channel&amp;nbsp;1&amp;nbsp;input*/&lt;/SPAN&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="font-family: Calibri, Arial, Helvetica, sans-serif;"&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; /* Enable PWM channel 2 output*/&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Enable PWM channel 3 output*/&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* TOIE (Timer Overflow Interrupt Ena) = 1 (enable) */&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* CPWMS (Center aligned PWM Select) = 0 (default, up count) */&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* CLKS (Clock source) = 0 (default, no clock; FTM disabled) */&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* PS (Prescaler factor) = 7. Prescaler = 128 */&lt;BR /&gt; &amp;nbsp; FTM0-&amp;gt;COMBINE = 0x00000004;/* FTM mode settings used: DECAPENx = 1, DECAP = 0£¬MCOMBINEx = 0, COMBINEx=0&amp;nbsp; */&lt;BR /&gt; &amp;nbsp; FTM0-&amp;gt;POL = 0x00000000;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Polarity for all channels is active high (default) */&lt;BR /&gt;&amp;nbsp; FTM0-&amp;gt;MOD = 62500 - 1 ;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* FTM1 counter final value (used for PWM mode) */&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* FTM1 Period = MOD-CNTIN+0x0001 ~= 62500 ctr clks&amp;nbsp; */&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* 8MHz /128 = 62.5kHz -&amp;gt;&amp;nbsp; ticks -&amp;gt; 1Hz */&lt;BR /&gt; }&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="background-color: #ffffff;"&gt;/&lt;/SPAN&gt;&lt;SPAN style="background-color: #ffffff;"&gt;****************************************************************************************************&lt;/SPAN&gt;&lt;SPAN style="background-color: #ffffff;"&gt;/&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt;void FTM0_CH0_IC_init(void) &lt;BR /&gt; {&lt;BR /&gt; &amp;nbsp; FTM0-&amp;gt;CONTROLS[0].CnSC = 0x00000059;&amp;nbsp; /* FTM0 ch6: Input Capture fall edge */&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* CHIE (Chan Interrupt Ena) = 1 (enable) */&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* MSB:MSA (chan Mode Select)=0b01, Continue */&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* ELSB:ELSA (ch Edge/Level Select)=0b10, fall*/&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* DMA enable */&lt;BR /&gt; }&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="background-color: #ffffff;"&gt;/&lt;/SPAN&gt;&lt;SPAN style="background-color: #ffffff;"&gt;****************************************************************************************************&lt;/SPAN&gt;&lt;SPAN style="background-color: #ffffff;"&gt;/&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;void FTM0_CH1_IC_init(void) &lt;BR /&gt; {&lt;BR /&gt; &amp;nbsp; FTM0-&amp;gt;CONTROLS[1].CnSC = 0x00000045;&amp;nbsp; /* FTM0 ch7: Input Capture rising edge */&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* CHIE (Chan Interrupt Ena) = 1 (enable) */&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* MSB:MSA (chan Mode Select)=0b00, Continue */&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* ELSB:ELSA (ch Edge/Level Select)=0b01, rise*/&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;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* DMA enable */&lt;BR /&gt; }&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 19 Oct 2018 09:15:38 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/How-to-use-DMA-function-to-achieve-FTM-input-capture/m-p/809313#M2915</guid>
      <dc:creator>tianyunfang</dc:creator>
      <dc:date>2018-10-19T09:15:38Z</dc:date>
    </item>
    <item>
      <title>Re: How to use DMA function to achieve  FTM  input capture?</title>
      <link>https://community.nxp.com/t5/S32K/How-to-use-DMA-function-to-achieve-FTM-input-capture/m-p/809314#M2916</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;By the way, DMA interrupt is ok!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 19 Oct 2018 09:19:27 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/How-to-use-DMA-function-to-achieve-FTM-input-capture/m-p/809314#M2916</guid>
      <dc:creator>tianyunfang</dc:creator>
      <dc:date>2018-10-19T09:19:27Z</dc:date>
    </item>
  </channel>
</rss>

