Setting DMA with ADC in F28335 (2018a/2020b)

조회 수: 18(최근 30일)
Francisco Jesús Matas Díaz
Francisco Jesús Matas Díaz 2020년 12월 2일
댓글: Venkatesh Chilapur 2020년 12월 15일
Hello,
I am in the second round configuring DMA with ADC in F28335 with TI C2000 support package. Now I am using Matlab 2020b. I am struggling with the memory allocation definitions in Simulink.
I need DMA ch1 to transfer the data adquired by ADC to an user defined memory allocation. I have 10 channels, so I have configured it for a Burst size of (10-1). I'm using a Data store and Memory allocation blocks to access stored data as in Matlab example c28x7x_c28004x_dma_epwm
My Burst source address is the ADC register (following controlsuite examples): &AdcMirror.ADCRESULT0
My Burst destination address is a buffer ADCbuffer[10], so I set: &ADCbuffer[0]
If I define ADCbuffer in Simulink environment, I mean, Model properties/Callbacks, or even in Model explorer/Model environment as a Simulink.signal, I find that the compiler gives an error in DMA configuration because ADCbuffer is not defined.
However, if I define it in a custom header in Configuration parameters/Custom code, as (taken from controlsuite/adc_dma example):
#pragma DATA_SECTION(ADCbuffer,"DMARAML4");
volatile Uint16 ADCbuffer[10];
Now I get that ADCbuffer is defined in all .obj files...
Other setups gave me catastrophic errors...
The example c28x7x_c28004x_dma_epwm sets the Burst source address as duty_cycle_table, a signal generated by executing "sineTableCalculation" comand in Model properties/Callbacks, at InitFcn as well as at PreLoadFcn.
So I would be really grateful to get some advice:
  • Where should I define the DMA buffer?
  • It is needed a specific variable type?
  • Additional tips to take into account?
Thank you for your time.
  댓글 수: 1
Venkatesh Chilapur
Venkatesh Chilapur 2020년 12월 15일
Please create a service request by contacting our support:
Regards,
Venkatesh C

댓글을 달려면 로그인하십시오.

답변(0개)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by