<?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>Processor Expert Software中的主题 Coldfire+ MCF51QM128VLH: Problems with DMA and ADC</title>
    <link>https://community.nxp.com/t5/Processor-Expert-Software/Coldfire-MCF51QM128VLH-Problems-with-DMA-and-ADC/m-p/223166#M1052</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I would like to trigger the DMA after completed ADC Measurement. At the moment I am working with Processor Expert.&lt;/P&gt;&lt;P&gt;I configured the DMA module following the second example of Component DMATransfer_LDD with some modifications.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Some of the modifications are:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Trigger source type: Peripheral device&lt;/P&gt;&lt;P&gt;Trigger source: ADC0_DMA_Request&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data source Address: (uint32_t)&amp;amp;ADC0_RA&lt;/P&gt;&lt;P&gt;Data destination Address: &amp;amp;destBuffer&lt;/P&gt;&lt;P&gt;External object declaration: extern uint16_t destBuffer[];&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For "Transfer control" I can't change to "Nested transfer". At the moment I set "Single transfer".&lt;/P&gt;&lt;P&gt;Event masks "OnComplete" and "OnError" are enabled.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;After the initialisation of ADC and DMA y also allocate and enable the DMA channel for the DMA transfer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The AD measurement is called in a loop with a delay of a few seconds. Unfortunately the DMA isn't&amp;nbsp; triggered and the event "OnComplete" is never reached.&lt;/P&gt;&lt;P&gt;What could be wrong? Has anybody an idea?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am using Coldfire+ MCF51QM128VLH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Marc&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 25 Jul 2013 14:17:22 GMT</pubDate>
    <dc:creator>marcwagner</dc:creator>
    <dc:date>2013-07-25T14:17:22Z</dc:date>
    <item>
      <title>Coldfire+ MCF51QM128VLH: Problems with DMA and ADC</title>
      <link>https://community.nxp.com/t5/Processor-Expert-Software/Coldfire-MCF51QM128VLH-Problems-with-DMA-and-ADC/m-p/223166#M1052</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I would like to trigger the DMA after completed ADC Measurement. At the moment I am working with Processor Expert.&lt;/P&gt;&lt;P&gt;I configured the DMA module following the second example of Component DMATransfer_LDD with some modifications.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Some of the modifications are:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Trigger source type: Peripheral device&lt;/P&gt;&lt;P&gt;Trigger source: ADC0_DMA_Request&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data source Address: (uint32_t)&amp;amp;ADC0_RA&lt;/P&gt;&lt;P&gt;Data destination Address: &amp;amp;destBuffer&lt;/P&gt;&lt;P&gt;External object declaration: extern uint16_t destBuffer[];&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For "Transfer control" I can't change to "Nested transfer". At the moment I set "Single transfer".&lt;/P&gt;&lt;P&gt;Event masks "OnComplete" and "OnError" are enabled.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;After the initialisation of ADC and DMA y also allocate and enable the DMA channel for the DMA transfer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The AD measurement is called in a loop with a delay of a few seconds. Unfortunately the DMA isn't&amp;nbsp; triggered and the event "OnComplete" is never reached.&lt;/P&gt;&lt;P&gt;What could be wrong? Has anybody an idea?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am using Coldfire+ MCF51QM128VLH.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Marc&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 25 Jul 2013 14:17:22 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Processor-Expert-Software/Coldfire-MCF51QM128VLH-Problems-with-DMA-and-ADC/m-p/223166#M1052</guid>
      <dc:creator>marcwagner</dc:creator>
      <dc:date>2013-07-25T14:17:22Z</dc:date>
    </item>
    <item>
      <title>Re: Coldfire+ MCF51QM128VLH: Problems with DMA and ADC</title>
      <link>https://community.nxp.com/t5/Processor-Expert-Software/Coldfire-MCF51QM128VLH-Problems-with-DMA-and-ADC/m-p/223167#M1053</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello again,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I almost could fix the problem myself by setting the DMA channel 2 instead of the channel 0.&lt;/P&gt;&lt;P&gt;But still isn't possible to set the Transfer control to "Nested transfer".&lt;/P&gt;&lt;P&gt;It appears following error:&lt;/P&gt;&lt;P&gt;Transfer mode is not supported by selected device! In this case, what does "device" mean ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Beside of this problem after the first measurement a configuration error occurs.&lt;/P&gt;&lt;P&gt;By calling DMAT1_GetLastError I get the ErrorFlags 0x40000000 on Channel 2.&lt;/P&gt;&lt;P&gt;What could be the reason for this error?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Marc&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 26 Jul 2013 11:34:40 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Processor-Expert-Software/Coldfire-MCF51QM128VLH-Problems-with-DMA-and-ADC/m-p/223167#M1053</guid>
      <dc:creator>marcwagner</dc:creator>
      <dc:date>2013-07-26T11:34:40Z</dc:date>
    </item>
    <item>
      <title>Re: Coldfire+ MCF51QM128VLH: Problems with DMA and ADC</title>
      <link>https://community.nxp.com/t5/Processor-Expert-Software/Coldfire-MCF51QM128VLH-Problems-with-DMA-and-ADC/m-p/223168#M1054</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;it's probably too late be here are some findings regarding this issue:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&amp;nbsp; There should be source address (&amp;amp;ADC_R0)+2 instead of &amp;amp;ADC0_R0, because of endian on the ColdFire+ &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- For channel 0&amp;nbsp; should be used trigger 14, instead of 13. The trigger 13 works only with channel 2. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Regarding the error "Transfer mode is not supported by selected device! In this case, what does "device" mean ?" - the DMA component can work on different microcontrollers where the nested transfer&amp;nbsp; is supported. However, at ColdFire+ it's not.However, it's not clear why nested transfer is needed here... &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The &lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; font-size: 12.727272033691406px;"&gt;ErrorFlags 0x40000000 is a value of the DSC_BCR register which means "configuration error" which can have several causes. It could be &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;that ADC is still running = requests DMA transfer but all requested data has already been transmitted =DMA_BCR register = 0.&lt;/P&gt;&lt;P&gt;You can set&amp;nbsp; “Disable after transfer” property in the DMA_Transfer component&amp;nbsp; to “yes” value in order to disable next requests from ADC as soon as all data are transmitted -&amp;gt; DMA _BCR = 0.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;In the current version of CodeWarrior (10.5) and DriverSuite (10.3) I recommend to use the newer component DMAChannel_LDD instead. It should be used for new design, because it has simpler configuration with more possibilities and and generates cleaner driver code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;/P&gt;&lt;P&gt;Petr Hradsky&lt;/P&gt;&lt;P&gt;Processor Expert Support Team&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Mar 2014 15:02:36 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Processor-Expert-Software/Coldfire-MCF51QM128VLH-Problems-with-DMA-and-ADC/m-p/223168#M1054</guid>
      <dc:creator>Petr_H</dc:creator>
      <dc:date>2014-03-07T15:02:36Z</dc:date>
    </item>
  </channel>
</rss>

