// определение времени выполнения программного блока Ардуино
unsigned int timerValue; // значение таймера
void setup() {
Serial.begin(9600); // инициализируем последовательный порт, скорость 9600
// установки таймера 1
TCCR1A = 0;
TCCR1B = 0;
}
void loop() {
noInterrupts(); // запрет прерываний
TCNT1H = 0; // сброс таймера
TCNT1L = 0;
TCCR1B = 1; // разрешение работы таймера
// ---------- исследуемый программный блок ---------
int g=0;
float t=300;
t=t/60;
t=g+300;
do
{
g++;
t = t - 60;
} while ((t > 0) && (t >= 60));
//Serial.println(t);
// -------------------------------------------------
TCCR1B = 0; // остановка таймера
timerValue = (unsigned int)TCNT1L | ((unsigned int)TCNT1H << 8); // чтение таймера
interrupts(); // разрешение прерываний
// вывод на компьютер
Serial.print( (float)(timerValue - 2) * 0.0625);
Serial.println("мкс");
delay(500);
}