logo search
ООП для Заоч / Пинчук Лозовская Программир на С

Void runstimer();

unsigned long mcstimer();

Функції мікросекундного таймера: процедура runstimer здійснює ініціалізацію таймера, функція mcstimer повертає поточне значення таймера в мікросекундах (ціле число). Для того, щоб таймер давав правильні значення, у програмі необхідно передбачити установку тактової частоти діючого процесору. Для цього треба привласнити відповідне значення глобальній змінній CPU_Frequency (частота вказується в Мгц). Значення цієї змінної по умовчанню дорівнює 2600 Мгц. Крім того, перед рядком включення файлу syst.h необхідно записати такий рядок для визначення спеціального ідентифікатора:

#define _STIMER_

Ця директива дозволяє компіляцію функцій runstimer і stimer у модулі syst.h. При компіляції функцій мікросекундного таймера варто також не забути попередньо помістити в системний підкаталог ..\ BIN файл асемблерного компілятора tasm32.exe.

У наведеному нижче прикладі програма здійснює вимірювання спочатку тактової частоти процесора і, далі, проміжку часу від виведення повідомлення про частоту процесора і до натискання довільної клавіші (у мікросекундах). Вимірювання часу за допомогою мікросекундного таймера є значно більш точним, ніж вимірювання за допомогою простого таймера timer, особливо при вимірюванні коротких проміжків часу.

// Приклад 2

#define _STIMER_

#include <syst.h>