Hi Ruud,
I found your's FemtoOs very usefull. Thank you for the greate work!
I have the questions about the events:
1. Is there the way to use more than 8 event?
2. How can i manipulate with the two different events, if need to unblock the task when one of the two event fired(event1 "OR" event2)?
I can't to found the way to resolve this problen, cause the taskWaitForEventSet(Ev1,Ev2...) unblock the task when all events have fired(Ev1 "AND" Ev2 "AND"...EvN).
Now I have to use two different task to unblocking by two diffent events, performing the same procedure:
void ADCproc(void)
// do something//
Task1......
taskWaitForEventSet(Ev1);
ADCproc();
Task2.....
taskWaitForEventSet(Ev2);
ADCproc();
Task3....
genFireEventOnName(Ev1);
Task4....
genFireEventOnName(Ev2);
Is there another way to use events?
Thank you
Last edit: fedic 2020-06-01
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
If i remember correctly the events are stored in e byte somewhere, so 8 events is a hard limit i am afraid. Such hard limits apply to most of the parts (tasks, priorities etc) and this was a design decission.
Normally when you need the OR function on different events, you just fire the same event from different places. And use one event for the blocking tasks. Is this not possible? May i don not quit understand you problem correctly
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Thank you Ruud for your answer my question
Yes, you correct understand what i meen.
Much a pitty about this limitation, cause event using make the project more reliable and flexible
The method your suggested of events proccessing "OR" work really fine!
My project moving in progress!
Last edit: fedic 2020-06-05
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi Ruud,
I found your's FemtoOs very usefull. Thank you for the greate work!
I have the questions about the events:
1. Is there the way to use more than 8 event?
2. How can i manipulate with the two different events, if need to unblock the task when one of the two event fired(event1 "OR" event2)?
I can't to found the way to resolve this problen, cause the taskWaitForEventSet(Ev1,Ev2...) unblock the task when all events have fired(Ev1 "AND" Ev2 "AND"...EvN).
Now I have to use two different task to unblocking by two diffent events, performing the same procedure:
void ADCproc(void)
// do something//
Task1......
taskWaitForEventSet(Ev1);
ADCproc();
Task2.....
taskWaitForEventSet(Ev2);
ADCproc();
Task3....
genFireEventOnName(Ev1);
Task4....
genFireEventOnName(Ev2);
Is there another way to use events?
Thank you
Last edit: fedic 2020-06-01
If i remember correctly the events are stored in e byte somewhere, so 8 events is a hard limit i am afraid. Such hard limits apply to most of the parts (tasks, priorities etc) and this was a design decission.
Normally when you need the OR function on different events, you just fire the same event from different places. And use one event for the blocking tasks. Is this not possible? May i don not quit understand you problem correctly
Thank you Ruud for your answer my question
Yes, you correct understand what i meen.
Much a pitty about this limitation, cause event using make the project more reliable and flexible
The method your suggested of events proccessing "OR" work really fine!
My project moving in progress!
Last edit: fedic 2020-06-05
BTW: Somebody here asked about modeling schematic and FemtoOS firmware project in PROTEUS, i can confidently answer: IT WORKS!!!
Last edit: fedic 2020-06-05
Very nice indeed. Good work!😄