DAVE4 - Synchronous ADC - which APP?

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Not applicable
Hi,
for a few days now I'm using Dave4. For my actual XMC4500 project I have to convert 4 analog inputs (Pin 14.0 - 14.3) in parallel. In Dave 3 I used the ADCSYNC001 App. Now I'm trying to impelemnt my old code with the ADC_MEASUREMENT App, but I'm not sure how to enable parallel conversion. When I change the number of measurements I see the resulting channel names A to D in the next option. But are they read synchronous when saving the results with ADC_MEASUREMENT_GetResult? Or what do I have to enable / write?
Sorry if this is a stupid question. I'm new in XMC programming.
Thanks a lot!
0 Likes
4 Replies
Not applicable
Hi Johannes,

Currently there is no compatible App for ADCSYNC001 in DAVE4 . It will be availiable in future advance Apps. You need to use ADC LLD at this time being.

Best regards,
Sophia
0 Likes
Not applicable
That's a pity..
So, I tried to implement the synchronous part now with all old and fine working Dave3 c- and h-files of ADCSYNC001, ADC002, ADCGLOBAL001, ADCGROUP, IO001, CLK001, RESET001 of my project. But now in Dave4.
For that,I put all necessary files in a new project same directory as the main.c. I had to change a lot of #includes, status_t to DAVE_STATUS_t and another variable to DAVE_STATUS_SUCCESS.
But now, everything compiled bugless and I followed in the debugger step by step the initialization of the ..._init() functions. I couldn't find any difference to the Dave3 initializations.

But: When I read the registers, the values are always 0... When I use ADCSYNC001_GetResult and follow the contained code step by step, TempResult always is zero and the code jumps to the section /* If data is old, then send error as invalid result */.

What did I make wrong? Is this concept not possible in Dave 4? I didn't use any Dave4 app except of a digital 3.3 volt supply for potentiometer.

Thanks!!!
0 Likes
Not applicable
Hi Johannes,

As mentioned, the DAVE Apps between DAVE v4 and DAVE v3 are not compatible. You are unable to simply copy & paste the *.c & *.h files.
Firstly, you need to understand the project settings in DAVE3:
1) Find DAVE3 APPs used
2) Find project resource (pins & signals) used
3) Find APP settings and corresponding registers' configurations
4) Find API used and program flow
Then, you need to create a new project in DAVE4

Meanwhile, you can refer to:
1) "XMC4000 ADC Device Guide" for the configuration of synchronization conversion
2) ADC XMClib example "VADC_MEASUREMENT" for the use of VADC LLD (in "XMC_Peripheral_Library_v1.0.0.zip" under path " ..\XMC_Peripheral_Library_v1.0.0\XMClib\examples)

Best regards,
Sophia
0 Likes
Not applicable
I know this is a very late answer, but maybe there is someone out there having the same question.
Meanwhile there is a APP for sync. Conversion and I'm really grateful for that 😄 It's named "ADC_MEASUREMENT_ADV"
There is also a good example called "ADC_MEASUREMENT_ADV_XMC45"
0 Likes