Hello,
I want to "cheat" :-) and to plug something into the real time agent, in this function:
/* * Send RTX Kernel task switch information to the host via Real-Time Agent * Parameters: tsk: packed task switch message * Return Value: RTA_STATUS (0 = OK) */ __RTA_DEC void RTA_Task_Mon (unsigned int tsk) {
How do I do this? How do I recompile RT_Agent.c? Can you help me?
in fact, Thorsten, this is required in order to allow our client to measure some performance metrics of the system in question. luckily, RTX provides a deterministic was to tell when a context switch has occurred without the need to recompile the kernel or use RT agent (available only while debugging), thus we can compute the actual runtime of a task, taking into account runtime of interrupts that occurred in between.
<CommonArmKnowledge>
If you have source code for a library like RTX, it's always worth looking for the __weak functions.
</CommonArmKnowledge>
Just like the previous issue that strangely triggered your rage at me (the accumulation of missed timer ticks), this is another undocumented feature of RTX: why can't it be found in the user manual or the Keil website (as far as I can tell)?
"... that strangely triggered your rage at me ... "
It has been said that an inquisitive and enquiring mind come with experience rather than through the simple acquisition of qualifications.
Extrapolating your argument, you must be one of the lucky few that manage to work with microcontrollers without a single glimpse at the respective data sheet(s)/user manuals, because you are so "experienced". Please...
"Extrapolating your argument..."
Mr Ego, you just proved my point!
Mr Ego
I think you are very confused. I just announced my affinity with reading documentation when dealing with a relatively unknown component, be it software or hardware. You, on the other hand, proclaimed to be so experienced to know in advance. Mr Ego, said?
"Extrapolating your argument ..."
"You, on the other hand, proclaimed to be so experienced to know in advance."
What? Where?
if ((2+2)==5) // Fool trap ReportFalseDeductions(); // Oh dear