Migrating from PPI to DPPI

I'm trying to port a PPI application to an nrf5340. I'm quite puzzled, as it would appear there is no obvious way to achieve what I'm trying to do.

In short, I have a setup where the events E should trigger tasks T accordingly to the relation below. Events originate by timers (E1-4 TIM3, E5 TIM4), and the tasks are simple GPIOTE clear/set

e1 --> t1,t5
e2 --> t2,t6
e3 --> t3,t5
e4 --> t4,t6
e5 --> t2,t4,t6

I'm using the gppi API, as I would like to support both nrf52 and nrf53 families. As far as I understand DPPI does not allow to associate multiple channels to the same task/event. This seems to make it impossible to achieve, as either tasks or events need to be connected to multiple channels.

I think I'm missing something since this was feasible with PPI and does not seem like a very strange use case to me :D

Thanks!

Parents Reply
  • Thanks. As far as I can see, this use case is different from the example you linked. I'm familiar with how to connect multiple events and multiple tasks to the same DPPI channel. The problem I have here is that some tasks should be triggered by multiple DPPI channels (e.g. t6).

    This was achieved in PPI with forks, but I cannot reproduce it with DPPI. Looking forward to your solution!

    Best,

    Andrea

Children
Related