XMC4400: How to connect DSD Auxiliary Filter with CCU8

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

cross mob
User9246
Level 1
Level 1
Hello,

in my application I measure the current with DeltaSigma and filter it with the DSD unit on the XMC4400. For overcurrent protection I use the Auxiliary Filter of the DSD.
I would like to switch off the PWM, generated with CCU8, automatically without any software in between. Is it possible to connect the Auxíliary Filter directly to the CCU8?
I tried to find that out, with the ERU in between, but I didn't succeed.

I know I can generate an interrupt and switch off the PWM programmatically, that's how I do it now, but I would prefer a direct connection.

Any ideas?
0 Likes
1 Solution
Vasanth
Moderator
Moderator
Moderator
250 sign-ins 500 solutions authored First question asked
Hi,

Following is the DSD architecture.
5311.attach
The comparator results are routed to NVIC and DMA. This is why the limitation is arising from. I was thinking about the possibility of modifying CC8yTC.TRAP register using DMA
to get this done. But this not tested. Let me know your thoughts.

Best Regards,
Vasanth

View solution in original post

0 Likes
4 Replies
Vasanth
Moderator
Moderator
Moderator
250 sign-ins 500 solutions authored First question asked
Hi,

Following is the DSD architecture.
5311.attach
The comparator results are routed to NVIC and DMA. This is why the limitation is arising from. I was thinking about the possibility of modifying CC8yTC.TRAP register using DMA
to get this done. But this not tested. Let me know your thoughts.

Best Regards,
Vasanth
0 Likes
User9246
Level 1
Level 1
Hi Vasanth,

you mean the CC8yTC.TRAPEx bits? But they just enable or disable TRAP, right? They don't cause a trap event.
How exactly do you want to use the DMA to do that? Do you have an example code?

Regards,
Tobias
0 Likes
Vasanth
Moderator
Moderator
Moderator
250 sign-ins 500 solutions authored First question asked
Hi,

My bad. So my suggestion was to modify the CCU8 registers using DMA as a direct connection to stop the CCU8 is not available from DSD. CC8yTCCLR can be used to stop the timer.
So that can be the DMA destination address. Will that solution be feasible for your application. If yes, I can try to generate a sample project for the same.

Best Regards,
Vasanth
0 Likes
User9246
Level 1
Level 1
Hi Vasanth,

I'm not sure if CC8yTCCLR is the right register, because the PWM outputs should be set in a passive state as the TRAP does. If the counters just stop, the output could be left active.
But anyway, I understand your idea to modify a register via DMA. A sample code would be very helpful!

Best regards, Tobias
0 Likes