сейчас сделано два уровня так:
//////////////////////////////////
int0_vect()
{
task0_exec();
}
//////////////////////////////////
volatile bool task1_flag = false;
int1_vect()
{
task1_flag = true;
}
//////////////////////////////////
task1_exec()
{
....
task1_flag = false;
}
//////////////////////////////////
void main( void )
{
...
while( true )
{
if( task1_flag )
task1_exec();
}
}
нужно добавить task2, но чтобы task2<task1<task0
можно даже чтобы task2 выполнялся если task1 и task0 idle
вообщем, нужно как то чтобы task1 мог выместить task0