Hi,
We have written code for eQADC_A in mpc5777c and able to achieve sampling rate of 1.2Msps (verified using input sine wave and plotting graph of it).
In eQADC_A we are using continuous scan method, with software pit3 as trigger source and use of DMA to request data from rfifo to the system memory.
Details:
What could be the reason behind this? share your opinions.
Thanks.
Hi,
Details
1. Initialization's:
2. Graph plotted:
1. Input 25KHz Sine wave with offset: 48 samples
2. Input 20KHz Sine wave with offset: 12 samples with same adc configurations, at the same adc channel.
This what trying to find the cause/solution to it, what could be the reason?
Thanks,
Harshal
It does not make sense too much. Could you post the whole your initialization code?
Hi David,
/*eQADC initilization*/
EQADC_A.MCR.R = 0x00000000;
EQADC_A.CFPR[0].R = 0x00800301;
EQADC_A.CFPR[0].R = 0x82800301;
EQADC_A.CFCR0.R = 0x0C101C10;
while (EQADC_A.FISR[0].B.EOQFX == 0);
EQADC_A.FISR[0].R = End_of_Queue_Flag;
EQADC_A.IDCR0.R = 0x33033303;
/*eDMA_init*/
DMA_A.CR.R = 0x0000000C;
DMA_A.EEIH.R = 0x00;
DMA_A.EEIL.R = 0x00;
DMA_A.ERQH.R = 0x00;
DMA_A.ERQL.R = 0x00;
/*pit3_init(void)*/
PIT.MCR.R = 0x00000000;
PIT.TIMER[3].LDVAL.R = 2000;
PIT.TIMER[3].TFLG.R = 0x00000001;
PIT.TIMER[3].TCTRL.B.TIE = 1;
PIT.TIMER[3].TCTRL.B.TEN = 0;
/*initialize TCD*/
/* PIT3 trigger */
SIU.ISEL5.R = 0x05050000;
SIU.ISEL4.R = 0x00000505;
EQADC_A.CFCR0.R = 0x00d000d0;
EQADC_A.CFCR1.R = 0x00d000d0;
These are initilization codes and then we reading adc count from Rqueue.
Thanks.
Hi, could you share some details about the setting? And plots?