Цитата(AHTOXA @ Jun 10 2018, 13:18)
Прерывание вызывается?
А приоритет какой у него?
Для проверки в прерывание могралку ставлю:
CODE
static void TIM3_Event()
{
static uint16_t counter=0;
counter++;
if(counter>100)
{
digitalWrite(PC13,!digitalRead(PC13));
counter=0;
}
OS::system_timer_isr();
}
Если процесс выглядит так:
CODE
namespace OS
{
template<> void TProc0::exec()
{
for (;;)
{
delay(100);
}
}
}
все моргает, стоит заменить на
CODE
namespace OS
{
template<> void TProc0::exec()
{
for (;;)
{
OS::sleep(100);
}
}
}
моргание прекращается.
Какой приоритет - это надо в ардуиновские исходники лезть смотреть, так что пока не знаю.
Сообщение отредактировал varvar - Jun 10 2018, 10:43