This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hello ,
I am using TMS320F28069 controller. I had a doubt in ePWM module.
1. Are the EPWMxSOCA and EPWMxSOCB (ADC start-of-conversion signals) interrupt line?
In the DMA module, MODE register it is shown as peripheral interrupt source (PERINTSEL).
In ePWM module, its shown as "start of conversion pulse" to the ADC when a selected event occur.
My user case is I want to trigger the DMA to transfer the data from some RAM location to ePWM (for DAC) at a particular frequency.
regards,
Hemanth
Hi Hemanth,
1. Are the EPWMxSOCA and EPWMxSOCB (ADC start-of-conversion signals) interrupt line?
Can you elaborate more on what do you mean by interrupt line? Also check Pg. 486 of SPRUH18D for more info.
My user case is I want to trigger the DMA to transfer the data from some RAM location to ePWM (for DAC) at a particular frequency.
In short you want a trigger signal every certain period to make a DMA data transfer, right?
Regards,
Gautam
Hi Gautam,
By Interrupt line I ment a Peripheral Interrupt to PIE
In the ePWM module (pg no 296), EPWMxSOCA is shown "Start of conversion pulse to the ADC".
In the DMA module (pg no 825), ePWM2SOCA, ePWM2SOCB, ePWM3SOCA.. ePWM7SOCB is shown as "Peripheral Interrupt"
I am confused if its an "Peripheral Interrupt" or "a Pulse"?
Yes, I want DMA data transfer to ePWM module based on event in same ePWM module. This needed for DAC operation.
regards,
Hemanth
SOC is triggered in DMA, but unfortunately I am unable to write the ePWM register with the required data from RAM using DMA although it possible to transfer data between RAM accessible by DMA.
Is it possible to write data to ePWM register by DMA?
In my application I needed to update Duty Cycle in ePWM register without using CPU interrupts.
In my application I needed to update Duty Cycle in ePWM register without using CPU interrupts.
This can surely be done!
Is it possible to write data to ePWM register by DMA?
Hemanth, you'll be just updating the duty right? So fetching this data by DMA and then loading it to CMPA register should not be an issue.
Regards,
Gautam
Yes, I was fetching the data from RAM and loaded to CMPA reg by DMA.
But unfortunately this didn’t work.
The same code works, when I change the destination (CMPA reg) to some RAM location accessible by DMA.
I enabled the DMA PIE interrupt & in the DMA ISR I tried updating the CMPA reg this worked.
So I doubt if DMA has write access the CMPA reg?
The same code works, when I change the destination (CMPA reg) to some RAM location accessible by DMA.
Ohh I see!
So I doubt if DMA has write access the CMPA reg?
True... Sorry mate I've never tried this myself so won't be able to comment.
Regards,
Gautam
I am now able to access :)
The change was remap ePWM for DMA access
SysCtrlRegs.EPWMCFG.bit.CONFIG = 1;
ref:
http://e2e.ti.com/support/microcontrollers/c2000/f/171/t/67248.aspx
Would have been good if this info was mentioned in either ePWM or DMA.
regards,
Hemanth