<?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>Kinetis MicrocontrollersのトピックRe: DMA with PIT problem</title>
    <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/DMA-with-PIT-problem/m-p/340035#M16337</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;A class="jx-jive-macro-user" href="https://community.nxp.com/people/BlackNight" rel="nofollow noopener noreferrer" target="_blank"&gt;BlackNight&lt;/A&gt;, I found what causes the unhandled exception. It was happening due a clk config missed. Thanks by the tip for ISR!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The code without exception:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE __default_attr="c++" __jive_macro_name="code" class="jive_text_macro jive_macro_code _jivemacro_uid_14073555626494042" jivemacro_uid="_14073555626494042"&gt;
&lt;P&gt;void InitTimer(void)&lt;/P&gt;
&lt;P&gt;{&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SIM_SCGC6 |= SIM_SCGC6_TPM0_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; TPM0_SC = 0;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; TPM0_CNT = 0;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; TPM0_MOD = TPM_MOD_MOD(0xFFFF);&lt;/P&gt;
&lt;P&gt;&amp;nbsp; TPM0_C0V = TPM_CnV_VAL(0x1770);&lt;/P&gt;
&lt;P&gt;&amp;nbsp; TPM0_C0SC = (TPM_CnSC_CHIE_MASK | TPM_CnSC_MSA_MASK | TPM_CnSC_DMA_MASK);&lt;/P&gt;
&lt;P&gt;&amp;nbsp; TPM0_SC = (TPM_SC_CMOD(0x01) | TPM_SC_PS(0x00) | TPM_SC_DMA_MASK); //Set up clock and prescaler&lt;/P&gt;
&lt;P&gt;}&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;void InitMuxDMA(void)&lt;/P&gt;
&lt;P&gt;{&lt;/P&gt;
&lt;P&gt;&amp;nbsp; //Channel Configuration Register&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SIM_SCGC6 |= SIM_SCGC6_DMAMUX_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DMAMUX0_CHCFG0 &amp;amp;= ~DMAMUX_CHCFG_ENBL_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DMAMUX0_CHCFG0 |= DMAMUX_CHCFG_TRIG_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DMAMUX0_CHCFG0 |= DMAMUX_CHCFG_SOURCE(24);&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DMAMUX0_CHCFG0 |= DMAMUX_CHCFG_ENBL_MASK;&lt;/P&gt;
&lt;P&gt;}&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;void InitDMA(void)&lt;/P&gt;
&lt;P&gt;{&lt;/P&gt;
&lt;P&gt;&amp;nbsp; //Init DMA Clock&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SIM_SCGC7 |= SIM_SCGC7_DMA_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; //DMA Source Addr&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DMA_SAR0 = (uint32_t)&amp;amp;Sinus[0];&lt;/P&gt;
&lt;P&gt;&amp;nbsp; //DMA Destination Addr&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DMA_DAR0 = (uint32_t)&amp;amp;DAC0_DAT0L;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; //DMA Status Register/ Byte Counter Register&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DMA_DSR_BCR0 = DMA_DSR_BCR_BCR(256);&lt;/P&gt;
&lt;P&gt;&amp;nbsp; //DMA Control Register&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DMA_DCR0 = DMA_DCR_ERQ_MASK | DMA_DCR_CS_MASK | DMA_DCR_SINC_MASK | DMA_DCR_SSIZE(0b10) | DMA_DCR_DINC_MASK | DMA_DCR_DSIZE(0b10);&lt;/P&gt;
&lt;P&gt;&amp;nbsp; //DMA Mux&lt;/P&gt;
&lt;P&gt;&amp;nbsp; InitMuxDMA();&lt;/P&gt;
&lt;P&gt;}&lt;/P&gt;
&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But, anyway, the DMA wasn't handled the DAC. Someone knows why?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 06 Aug 2014 20:10:07 GMT</pubDate>
    <dc:creator>wendersonolivei</dc:creator>
    <dc:date>2014-08-06T20:10:07Z</dc:date>
    <item>
      <title>DMA with PIT problem</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/DMA-with-PIT-problem/m-p/340032#M16334</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi all&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I'm having a problem with DMA with PIT triggering. I've tried to config the TPM0 (CH0) timer to trigger the DMA, but it doesn't work; I always have a program break at PE_DEBUGHALT(); .&lt;/P&gt;&lt;P&gt;I was testing that because I want to use DMA to output a waveform at DAC, with a sample rate of the PIT. So, I've tried to do this:&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE class="c++" name="code"&gt;#define SINUS_LENGTH 256&amp;nbsp; uint16_t Sinus[SINUS_LENGTH] = { &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2047U,&amp;nbsp; 2097U,&amp;nbsp; 2147U,&amp;nbsp; 2198U,&amp;nbsp; 2248U,&amp;nbsp; 2298U,&amp;nbsp; 2347U,&amp;nbsp; 2397U,&amp;nbsp; 2446U,&amp;nbsp; 2496U,&amp;nbsp; 2544U,&amp;nbsp; 2593U,&amp;nbsp; 2641U,&amp;nbsp; 2689U, &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2737U,&amp;nbsp; 2784U,&amp;nbsp; 2830U,&amp;nbsp; 2877U,&amp;nbsp; 2922U,&amp;nbsp; 2967U,&amp;nbsp; 3012U,&amp;nbsp; 3056U,&amp;nbsp; 3099U,&amp;nbsp; 3142U,&amp;nbsp; 3184U,&amp;nbsp; 3226U,&amp;nbsp; 3266U,&amp;nbsp; 3306U, &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3346U,&amp;nbsp; 3384U,&amp;nbsp; 3422U,&amp;nbsp; 3458U,&amp;nbsp; 3494U,&amp;nbsp; 3530U,&amp;nbsp; 3564U,&amp;nbsp; 3597U,&amp;nbsp; 3629U,&amp;nbsp; 3661U,&amp;nbsp; 3691U,&amp;nbsp; 3721U,&amp;nbsp; 3749U,&amp;nbsp; 3776U, &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3803U,&amp;nbsp; 3828U,&amp;nbsp; 3852U,&amp;nbsp; 3875U,&amp;nbsp; 3897U,&amp;nbsp; 3918U,&amp;nbsp; 3938U,&amp;nbsp; 3957U,&amp;nbsp; 3974U,&amp;nbsp; 3991U,&amp;nbsp; 4006U,&amp;nbsp; 4020U,&amp;nbsp; 4033U,&amp;nbsp; 4044U, &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4055U,&amp;nbsp; 4064U,&amp;nbsp; 4072U,&amp;nbsp; 4079U,&amp;nbsp; 4084U,&amp;nbsp; 4088U,&amp;nbsp; 4092U,&amp;nbsp; 4093U,&amp;nbsp; 4094U,&amp;nbsp; 4093U,&amp;nbsp; 4092U,&amp;nbsp; 4088U,&amp;nbsp; 4084U,&amp;nbsp; 4079U, &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4072U,&amp;nbsp; 4064U,&amp;nbsp; 4055U,&amp;nbsp; 4044U,&amp;nbsp; 4033U,&amp;nbsp; 4020U,&amp;nbsp; 4006U,&amp;nbsp; 3991U,&amp;nbsp; 3974U,&amp;nbsp; 3957U,&amp;nbsp; 3938U,&amp;nbsp; 3918U,&amp;nbsp; 3897U,&amp;nbsp; 3875U, &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3852U,&amp;nbsp; 3828U,&amp;nbsp; 3803U,&amp;nbsp; 3776U,&amp;nbsp; 3749U,&amp;nbsp; 3721U,&amp;nbsp; 3691U,&amp;nbsp; 3661U,&amp;nbsp; 3629U,&amp;nbsp; 3597U,&amp;nbsp; 3564U,&amp;nbsp; 3530U,&amp;nbsp; 3494U,&amp;nbsp; 3458U, &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3422U,&amp;nbsp; 3384U,&amp;nbsp; 3346U,&amp;nbsp; 3306U,&amp;nbsp; 3266U,&amp;nbsp; 3226U,&amp;nbsp; 3184U,&amp;nbsp; 3142U,&amp;nbsp; 3099U,&amp;nbsp; 3056U,&amp;nbsp; 3012U,&amp;nbsp; 2967U,&amp;nbsp; 2922U,&amp;nbsp; 2877U, &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2830U,&amp;nbsp; 2784U,&amp;nbsp; 2737U,&amp;nbsp; 2689U,&amp;nbsp; 2641U,&amp;nbsp; 2593U,&amp;nbsp; 2544U,&amp;nbsp; 2496U,&amp;nbsp; 2446U,&amp;nbsp; 2397U,&amp;nbsp; 2347U,&amp;nbsp; 2298U,&amp;nbsp; 2248U,&amp;nbsp; 2198U, &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2147U,&amp;nbsp; 2097U,&amp;nbsp; 2047U,&amp;nbsp; 1997U,&amp;nbsp; 1947U,&amp;nbsp; 1896U,&amp;nbsp; 1846U,&amp;nbsp; 1796U,&amp;nbsp; 1747U,&amp;nbsp; 1697U,&amp;nbsp; 1648U,&amp;nbsp; 1598U,&amp;nbsp; 1550U,&amp;nbsp; 1501U, &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1453U,&amp;nbsp; 1405U,&amp;nbsp; 1357U,&amp;nbsp; 1310U,&amp;nbsp; 1264U,&amp;nbsp; 1217U,&amp;nbsp; 1172U,&amp;nbsp; 1127U,&amp;nbsp; 1082U,&amp;nbsp; 1038U,&amp;nbsp; 995U,&amp;nbsp;&amp;nbsp; 952U,&amp;nbsp;&amp;nbsp; 910U,&amp;nbsp;&amp;nbsp; 868U, &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 828U,&amp;nbsp;&amp;nbsp; 788U,&amp;nbsp;&amp;nbsp; 748U,&amp;nbsp;&amp;nbsp; 710U,&amp;nbsp;&amp;nbsp; 672U,&amp;nbsp;&amp;nbsp; 636U,&amp;nbsp;&amp;nbsp; 600U,&amp;nbsp;&amp;nbsp; 564U,&amp;nbsp;&amp;nbsp; 530U,&amp;nbsp;&amp;nbsp; 497U,&amp;nbsp;&amp;nbsp; 465U,&amp;nbsp;&amp;nbsp; 433U,&amp;nbsp;&amp;nbsp; 403U,&amp;nbsp;&amp;nbsp; 373U, &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 345U,&amp;nbsp;&amp;nbsp; 318U,&amp;nbsp;&amp;nbsp; 291U,&amp;nbsp;&amp;nbsp; 266U,&amp;nbsp;&amp;nbsp; 242U,&amp;nbsp;&amp;nbsp; 219U,&amp;nbsp;&amp;nbsp; 197U,&amp;nbsp;&amp;nbsp; 176U,&amp;nbsp;&amp;nbsp; 156U,&amp;nbsp;&amp;nbsp; 137U,&amp;nbsp;&amp;nbsp; 120U,&amp;nbsp;&amp;nbsp; 103U,&amp;nbsp;&amp;nbsp; 88U,&amp;nbsp;&amp;nbsp;&amp;nbsp; 74U, &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 61U,&amp;nbsp;&amp;nbsp;&amp;nbsp; 50U,&amp;nbsp;&amp;nbsp;&amp;nbsp; 39U,&amp;nbsp;&amp;nbsp;&amp;nbsp; 30U,&amp;nbsp;&amp;nbsp;&amp;nbsp; 22U,&amp;nbsp;&amp;nbsp;&amp;nbsp; 15U,&amp;nbsp;&amp;nbsp;&amp;nbsp; 10U,&amp;nbsp;&amp;nbsp;&amp;nbsp; 6U,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2U,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1U,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0U,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1U,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2U,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6U, &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10U,&amp;nbsp;&amp;nbsp;&amp;nbsp; 15U,&amp;nbsp;&amp;nbsp;&amp;nbsp; 22U,&amp;nbsp;&amp;nbsp;&amp;nbsp; 30U,&amp;nbsp;&amp;nbsp;&amp;nbsp; 39U,&amp;nbsp;&amp;nbsp;&amp;nbsp; 50U,&amp;nbsp;&amp;nbsp;&amp;nbsp; 61U,&amp;nbsp;&amp;nbsp;&amp;nbsp; 74U,&amp;nbsp;&amp;nbsp;&amp;nbsp; 88U,&amp;nbsp;&amp;nbsp;&amp;nbsp; 103U,&amp;nbsp;&amp;nbsp; 120U,&amp;nbsp;&amp;nbsp; 137U,&amp;nbsp;&amp;nbsp; 156U,&amp;nbsp;&amp;nbsp; 176U, &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 197U,&amp;nbsp;&amp;nbsp; 219U,&amp;nbsp;&amp;nbsp; 242U,&amp;nbsp;&amp;nbsp; 266U,&amp;nbsp;&amp;nbsp; 291U,&amp;nbsp;&amp;nbsp; 318U,&amp;nbsp;&amp;nbsp; 345U,&amp;nbsp;&amp;nbsp; 373U,&amp;nbsp;&amp;nbsp; 403U,&amp;nbsp;&amp;nbsp; 433U,&amp;nbsp;&amp;nbsp; 465U,&amp;nbsp;&amp;nbsp; 497U,&amp;nbsp;&amp;nbsp; 530U,&amp;nbsp;&amp;nbsp; 564U, &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 600U,&amp;nbsp;&amp;nbsp; 636U,&amp;nbsp;&amp;nbsp; 672U,&amp;nbsp;&amp;nbsp; 710U,&amp;nbsp;&amp;nbsp; 748U,&amp;nbsp;&amp;nbsp; 788U,&amp;nbsp;&amp;nbsp; 828U,&amp;nbsp;&amp;nbsp; 868U,&amp;nbsp;&amp;nbsp; 910U,&amp;nbsp;&amp;nbsp; 952U,&amp;nbsp;&amp;nbsp; 995U,&amp;nbsp;&amp;nbsp; 1038U,&amp;nbsp; 1082U,&amp;nbsp; 1127U, &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1172U,&amp;nbsp; 1217U,&amp;nbsp; 1264U,&amp;nbsp; 1310U,&amp;nbsp; 1357U,&amp;nbsp; 1405U,&amp;nbsp; 1453U,&amp;nbsp; 1501U,&amp;nbsp; 1550U,&amp;nbsp; 1598U,&amp;nbsp; 1648U,&amp;nbsp; 1697U,&amp;nbsp; 1747U,&amp;nbsp; 1796U, &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1846U,&amp;nbsp; 1896U,&amp;nbsp; 1947U,&amp;nbsp; 1997U };&amp;nbsp; void InitTimer(void) { &amp;nbsp; TPM0_SC = 0;&amp;nbsp; &amp;nbsp; TPM0_CNT = 0; &amp;nbsp; TPM0_MOD = TPM_MOD_MOD(0xFFFF); &amp;nbsp; TPM0_C0V = TPM_CnV_VAL(0x1770);&amp;nbsp; &amp;nbsp; TPM0_C0SC = (TPM_CnSC_CHIE_MASK | TPM_CnSC_MSA_MASK | TPM_CnSC_DMA_MASK);&amp;nbsp; &amp;nbsp; TPM0_SC = (TPM_SC_CMOD(0x01) | TPM_SC_PS(0x00) | TPM_SC_DMA_MASK); //Set up clock and prescaler }&amp;nbsp; void InitMuxDMA(void) { &amp;nbsp; //Channel Configuration Register &amp;nbsp; DMAMUX0_CHCFG0 = DMAMUX_CHCFG_ENBL_MASK | DMAMUX_CHCFG_TRIG_MASK | DMAMUX_CHCFG_SOURCE(24); }&amp;nbsp; void InitDMA(void) { &amp;nbsp; //DMA Source Addr &amp;nbsp; DMA_SAR0 = (uint32_t)&amp;amp;Sinus[0]; &amp;nbsp; //DMA Destination Addr &amp;nbsp; DMA_DAR0 = (uint32_t)&amp;amp;DAC0_DAT0L; &amp;nbsp; //DMA Status Register/ Byte Counter Register &amp;nbsp; DMA_DSR_BCR0 = DMA_DSR_BCR_BCR(256); &amp;nbsp; //DMA Control Register &amp;nbsp; DMA_DCR0 = DMA_DCR_ERQ_MASK | DMA_DCR_CS_MASK | DMA_DCR_SINC_MASK | DMA_DCR_SSIZE(0b10) | DMA_DCR_DINC_MASK | DMA_DCR_DSIZE(0b10); &amp;nbsp; //DMA Mux &amp;nbsp; InitMuxDMA(); }&lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Target: KL25Z&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Can anyone help?&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Original Attachment has been moved to: &lt;A _jive_internal="true" href="https://community.nxp.com/docs/DOC-337723" rel="nofollow noopener noreferrer" target="_blank"&gt;DMA-error-project-(FRDM-KL25Z).zip&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 Aug 2014 18:00:21 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/DMA-with-PIT-problem/m-p/340032#M16334</guid>
      <dc:creator>wendersonolivei</dc:creator>
      <dc:date>2014-08-06T18:00:21Z</dc:date>
    </item>
    <item>
      <title>Re: DMA with PIT problem</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/DMA-with-PIT-problem/m-p/340033#M16335</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;To know which interrupt was raised, could you enable 'own for every' in the Processor Expert CPU build tab settings?&lt;/P&gt;&lt;P&gt;See &lt;A href="http://mcuoneclipse.com/2012/02/20/oh-my-an-interrupt/" title="http://mcuoneclipse.com/2012/02/20/oh-my-an-interrupt/"&gt;Oh my! An Interrupt… | MCU on Eclipse&lt;/A&gt;&lt;/P&gt;&lt;P&gt;That way we would know at least what interrupt is firing.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Erich&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 Aug 2014 18:57:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/DMA-with-PIT-problem/m-p/340033#M16335</guid>
      <dc:creator>BlackNight</dc:creator>
      <dc:date>2014-08-06T18:57:11Z</dc:date>
    </item>
    <item>
      <title>Re: DMA with PIT problem</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/DMA-with-PIT-problem/m-p/340034#M16336</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Erich!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks, it's really helpful (not only for this project). &lt;/P&gt;&lt;P&gt;Well, now I know that is a &lt;STRONG&gt;Cpu_ivINT_Hard_Fault&lt;/STRONG&gt; isr, and this is happening when I try to write the &lt;SPAN style="color: #000000; font-family: Consolas, 'Courier New', Courier, mono, serif; font-size: 12px;"&gt;DMAMUX0_CHCFG0&lt;/SPAN&gt;. Do you know why a write occurrence on this reg is generating this error?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 Aug 2014 19:24:29 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/DMA-with-PIT-problem/m-p/340034#M16336</guid>
      <dc:creator>wendersonolivei</dc:creator>
      <dc:date>2014-08-06T19:24:29Z</dc:date>
    </item>
    <item>
      <title>Re: DMA with PIT problem</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/DMA-with-PIT-problem/m-p/340035#M16337</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;A class="jx-jive-macro-user" href="https://community.nxp.com/people/BlackNight" rel="nofollow noopener noreferrer" target="_blank"&gt;BlackNight&lt;/A&gt;, I found what causes the unhandled exception. It was happening due a clk config missed. Thanks by the tip for ISR!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The code without exception:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE __default_attr="c++" __jive_macro_name="code" class="jive_text_macro jive_macro_code _jivemacro_uid_14073555626494042" jivemacro_uid="_14073555626494042"&gt;
&lt;P&gt;void InitTimer(void)&lt;/P&gt;
&lt;P&gt;{&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SIM_SCGC6 |= SIM_SCGC6_TPM0_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; TPM0_SC = 0;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; TPM0_CNT = 0;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; TPM0_MOD = TPM_MOD_MOD(0xFFFF);&lt;/P&gt;
&lt;P&gt;&amp;nbsp; TPM0_C0V = TPM_CnV_VAL(0x1770);&lt;/P&gt;
&lt;P&gt;&amp;nbsp; TPM0_C0SC = (TPM_CnSC_CHIE_MASK | TPM_CnSC_MSA_MASK | TPM_CnSC_DMA_MASK);&lt;/P&gt;
&lt;P&gt;&amp;nbsp; TPM0_SC = (TPM_SC_CMOD(0x01) | TPM_SC_PS(0x00) | TPM_SC_DMA_MASK); //Set up clock and prescaler&lt;/P&gt;
&lt;P&gt;}&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;void InitMuxDMA(void)&lt;/P&gt;
&lt;P&gt;{&lt;/P&gt;
&lt;P&gt;&amp;nbsp; //Channel Configuration Register&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SIM_SCGC6 |= SIM_SCGC6_DMAMUX_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DMAMUX0_CHCFG0 &amp;amp;= ~DMAMUX_CHCFG_ENBL_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DMAMUX0_CHCFG0 |= DMAMUX_CHCFG_TRIG_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DMAMUX0_CHCFG0 |= DMAMUX_CHCFG_SOURCE(24);&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DMAMUX0_CHCFG0 |= DMAMUX_CHCFG_ENBL_MASK;&lt;/P&gt;
&lt;P&gt;}&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;void InitDMA(void)&lt;/P&gt;
&lt;P&gt;{&lt;/P&gt;
&lt;P&gt;&amp;nbsp; //Init DMA Clock&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SIM_SCGC7 |= SIM_SCGC7_DMA_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; //DMA Source Addr&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DMA_SAR0 = (uint32_t)&amp;amp;Sinus[0];&lt;/P&gt;
&lt;P&gt;&amp;nbsp; //DMA Destination Addr&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DMA_DAR0 = (uint32_t)&amp;amp;DAC0_DAT0L;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; //DMA Status Register/ Byte Counter Register&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DMA_DSR_BCR0 = DMA_DSR_BCR_BCR(256);&lt;/P&gt;
&lt;P&gt;&amp;nbsp; //DMA Control Register&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DMA_DCR0 = DMA_DCR_ERQ_MASK | DMA_DCR_CS_MASK | DMA_DCR_SINC_MASK | DMA_DCR_SSIZE(0b10) | DMA_DCR_DINC_MASK | DMA_DCR_DSIZE(0b10);&lt;/P&gt;
&lt;P&gt;&amp;nbsp; //DMA Mux&lt;/P&gt;
&lt;P&gt;&amp;nbsp; InitMuxDMA();&lt;/P&gt;
&lt;P&gt;}&lt;/P&gt;
&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But, anyway, the DMA wasn't handled the DAC. Someone knows why?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 06 Aug 2014 20:10:07 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/DMA-with-PIT-problem/m-p/340035#M16337</guid>
      <dc:creator>wendersonolivei</dc:creator>
      <dc:date>2014-08-06T20:10:07Z</dc:date>
    </item>
    <item>
      <title>Re: DMA with PIT problem</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/DMA-with-PIT-problem/m-p/340036#M16338</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Looks you already identified the spot what caused the hard fault.&lt;/P&gt;&lt;P&gt;Just in case, if not seen these:&lt;/P&gt;&lt;P&gt;&lt;A href="http://mcuoneclipse.com/2012/11/24/debugging-hard-faults-on-arm-cortex-m/" title="http://mcuoneclipse.com/2012/11/24/debugging-hard-faults-on-arm-cortex-m/"&gt;http://mcuoneclipse.com/2012/11/24/debugging-hard-faults-on-arm-cortex-m/&lt;/A&gt;&lt;/P&gt;&lt;P&gt;and for Processor Expert there is even a dedicated component:&lt;/P&gt;&lt;P&gt;&lt;A href="http://mcuoneclipse.com/2012/12/28/a-processor-expert-component-to-help-with-hard-faults/" title="http://mcuoneclipse.com/2012/12/28/a-processor-expert-component-to-help-with-hard-faults/"&gt;http://mcuoneclipse.com/2012/12/28/a-processor-expert-component-to-help-with-hard-faults/&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This helps with debugging hard faults.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Erich&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 07 Aug 2014 04:57:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/DMA-with-PIT-problem/m-p/340036#M16338</guid>
      <dc:creator>BlackNight</dc:creator>
      <dc:date>2014-08-07T04:57:11Z</dc:date>
    </item>
    <item>
      <title>Re: DMA with PIT problem</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/DMA-with-PIT-problem/m-p/340037#M16339</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I have not tried your example (PIT triggered), but I experimented with DMA and PWM. Maybe this helps:&lt;/P&gt;&lt;P&gt;&lt;A href="http://mcuoneclipse.com/2014/06/07/tutorial-pwm-with-dma-on-armkinetis/" title="http://mcuoneclipse.com/2014/06/07/tutorial-pwm-with-dma-on-armkinetis/"&gt;http://mcuoneclipse.com/2014/06/07/tutorial-pwm-with-dma-on-armkinetis/&lt;/A&gt;&lt;/P&gt;&lt;P&gt;There is as well&lt;/P&gt;&lt;P&gt;&lt;A href="http://mcuoneclipse.com/2014/07/13/first-adafruit-neopixel-blinks-with-the-frdm-board/" title="http://mcuoneclipse.com/2014/07/13/first-adafruit-neopixel-blinks-with-the-frdm-board/"&gt;First Adafruit NeoPixel Blinks with the FRDM Board | MCU on Eclipse&lt;/A&gt;&lt;/P&gt;&lt;P&gt;and&lt;/P&gt;&lt;P&gt;&lt;A href="http://mcuoneclipse.com/2014/07/27/led-clock-with-kitchen-hot-pan-protector/" title="http://mcuoneclipse.com/2014/07/27/led-clock-with-kitchen-hot-pan-protector/"&gt;http://mcuoneclipse.com/2014/07/27/led-clock-with-kitchen-hot-pan-protector/&lt;/A&gt;&lt;/P&gt;&lt;P&gt;where I use DMA.&lt;/P&gt;&lt;P&gt;DMA code is in&lt;/P&gt;&lt;P&gt;&lt;A href="https://github.com/ErichStyger/mcuoneclipse/blob/master/Examples/Eclipse/FRDM-KL25Z/FRDM-KL25Z_NeoPixel/Sources/NeoPixel.c" title="https://github.com/ErichStyger/mcuoneclipse/blob/master/Examples/Eclipse/FRDM-KL25Z/FRDM-KL25Z_NeoPixel/Sources/NeoPixel.c"&gt;mcuoneclipse/NeoPixel.c at master · ErichStyger/mcuoneclipse · GitHub&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The Processor Expert Init component for DMA has a setting for PIT triggered DMA. When I tried this, I remember that worked as expected. So I think just something is missing in the settings.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 07 Aug 2014 05:06:52 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/DMA-with-PIT-problem/m-p/340037#M16339</guid>
      <dc:creator>BlackNight</dc:creator>
      <dc:date>2014-08-07T05:06:52Z</dc:date>
    </item>
    <item>
      <title>Re: DMA with PIT problem</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/DMA-with-PIT-problem/m-p/340038#M16340</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I got that with your DMA and PWM example. Thanks!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 07 Aug 2014 10:53:12 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/DMA-with-PIT-problem/m-p/340038#M16340</guid>
      <dc:creator>wendersonolivei</dc:creator>
      <dc:date>2014-08-07T10:53:12Z</dc:date>
    </item>
  </channel>
</rss>

