I want to combine hard realtime & soft realtime tasks.
As per this scenario I have done a simple demo project.
A button press activates the external interrupt & a higher priority task is deferred by interrupt processing.
This deferred task is the sender task which sends the incremental value of a counter variable through inter task communication or queue management to a low priority receiver task.
And below this low priority task two same priority tasks runs which blinks independent leds separately at different intervals.
So in this way am I implementing both hard realtime & soft realtime tasks?
If the above demo is not perfect for this scenario, kindly suggest me a simple practical example to implement both hard & soft real time tasks on stm32 using freertos.
Is this a real project? How are you defining hard and soft real time? There is no universal definition. My personal definition is that if a hard real time requirement is breached then your product fails, if a soft real time requirement is breached then your product is just degraded.
It’s a small project that I was experimenting on stm32 microcontroller by running freertos.I have just given the priorities to tasks.But where the hard & soft real time should be defined I don’t know.
Thanks for your comment.
FreeRTOS doesn’t need to know the difference between Hard requirements and Soft requirement, it just works to do things in the order you have defined by your priorities.
FreeRTOS doesn’t actually even know the requirements you are trying to meet.
There are other RTOS around that do want to be provided with at least some of the requirements and the scheduling is at least somewhat directly driven by those requirements, but FreeRTOS uses a simpler pure priority scheduling, so you, as the programmer, need to take the requirements into consideration and design your software to meet it, in part, by the priorities you assign to your tasks,
Okay.Thanks for the comment.