I have implemented a driver which periodically converts all AD channels and transfers the results within DMA to RAM. In my first version I used the PDB to trigger the DMA which starts the conversion sequence. This version worked fine. In my second version, I want to use a PIT (with same number as the DMA channel) which triggers the DMA. This version is not able to run because I get immediately after enabling the PIT a DMA SBE error (Source Bus Error) on the channel which is used by the conversion sequence.
Is there anybody who can help me with this issue?
Hi Arnold,
From your description, it just use PIT instead of PDB module as hardware trigger source of ADC conversion. There without any modification with DMA trigger with ADC conversion finish.
If customer just set PIT to period trigger DMA? It need to use ADC trigger DMA when ADC conversion finished.
And customer need to check SIM_SOPT7 to select correct ADC hardware trigger source.
Wish it help.
best regards,
Ma Hui
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hello Ma Hui
I think you do misunderstand my problem.
Please read the description of my ADC DMA driver in following Link Re: scanning all ADC channels within DMA
The only difference, as described in the new Post 'Problems using PIT to trigger a DMA' is that I use the PIT instead of the PDB to trigger the DMA.
Arnold
I haven't used a PIT for DMA triggering but have noticed that there is an errata concerning the DMAMUX and PIT (eg. Errate ID 4588).
Have you checked the errate to the mask used in your chip? Could something like this be a cause of difficulty?
Regards
Mark
Hi Mark
It seems this is the reason for my problem. So I try to use an other timer e.g. an FTM
Thanks
Arnold