DAVE TIP of the day: How to generate ADC boundary flag interrupt?

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

cross mob
Not applicable
There is no Boundary Flag signal (BFL) connected to NVIC.
You just need to:
1) Connect the "Channel Event" to NIVC002 Interrupt Node
2) Check the GxBFL in the interrupt service routine
0 Likes
4 Replies
Not applicable
I'm trying to figure out how to make use of this, but I am getting a “Resource mapping failed, please review the user defined constraints” error when solving when I enable the boundary flag on one of my ADCCH001 inputs. I don't have a problem with the solver otherwise (and the event is connected to an NVIC002 interrupt).

When I look in the ADCCH001 code, I find the function ADCCH001_EnableBoundaryFlag that takes a ADCCH001_Handle and a flag number. I can't tell how flag number maps to channel number (therefore dependent on input pin and group that is chosen), but it appears that flag number must == channel number (although the comments indicate result register). What is the correct use of this function?

The DAVE ADCCH001 app lets you set up lower and upper boundaries and channel event mode for any channel, but it doesn't seem like it will actually work.

Could you please clarify use of these? I found some example code for ADC use (DEV_XMC4000_VADC_Example_Code_v1_0.exe), but oddly enough, it doesn't make use of the DAVE tool.
0 Likes
Not applicable
Hi Jeff,

Are you trying to use ADCCH001 App as a standalone App?

BR,
Zain
0 Likes
Not applicable
No. We are using 4 ADC queue groups with ADC002 and use all but 1 or 2 of the available ADC inputs.

As I looked into this more, I found that I was able to get DAVE to generate the boundary flag on a couple of inputs that happen to be on channel's 0 & 2. So I think my issues with DAVE can be summarized as:
1. ADCCH001 UI Advanced Channel Configuration allows the user to choose channel event mode, lower boundary and upper boundary on channels that don't support a boundary flag
2. ADCCH001 UI Result Configurations allows the user to enable the Boundary flag on a channel that doesn't support it. This results in the solver failing and reporting the useless error of "Resource mapping failed, please review the user defined constraints".
3. The documentation / comments for ADCCH001_EnableBoundaryFlag indicates the interface is a "FlagNo" which is described as "This is the boundary flag number 0 to 3". It also says "This function will disable the boundary flag for result registers 0, 1, 2 or 3." and "Please make sure that the same result register is used for writing the channel conversion result." This isn't correct and the handle identifies the correct boundary flag via kChannelNo.

My issues w/ the chip documentation is that it is so difficult to figure out this mapping between flags and channels and the limitations of channels.
0 Likes
lock attach
Attachments are accessible only for community members.
Not applicable
Hi Jeff,

Have you tried to configure lower & upper boundaries in ADCGROUP001 App? Attached is an example using one ADC channel to generate boundary flag. Perhaps you can share your project?!



BR,
Zain
0 Likes