If I make a function call from the manged framework into RLP, does that call block all other threads until it is complete?
Yes, RLP blocks everything else.
The whole managed engine is on hold.
So RLP should return as quick as possible.
Use RLP tasks if you need something like a loop.
An RLP task is like an timer.
You can setup an RLP task in two different ways.
One will execute on normal managed based event, which is not very accurate.
The other mode is based on a bare metal timer interrupt, which makes it quite accurate, but might compromise the whole system if executed on a very short time base.
Not sure how the parameter is called, buts it’s an boolean one when the RLP task is set up.
@ Reinhard Ostermeier - And RLP interrupts take hold immediately and thus will pause the entire managed system until that function completes. Am I right?
@ andre.m - I’m reading over all those RLP stuff again. Look like I have no choice but to use RLP and to use it now. I can’t move forward with the robot any other way.
@ Mr. John Smith - Yes, interrupts are no different to calling RLP functions.
But I already managed to run a 40kHz timer for short periods of time, which makes an SPI request on a G120 and the managed stuff still runs along quite well.
Here I needed the interrupt version of the RLP task to get an accurate sampling rate