Микропроцессоры и микроконтроллеры

 
 
 
«'Legacy code' often differs from its suggested alternative by actually working and scaling.»
Bjarne Stroustrup
Русский | Українська


Микропроцессоры и микроконтроллеры :: Принципи роботи мікропроцесорів :: Використання таймерів для реалізації періодичних обчислень

Використання таймерів для реалізації періодичних обчислень

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

rn

Особливість реалізації алгоритму управління полягає в тому, що після одноразового виконання алгоритму процесор повинен чекати завершення поточного періоду , що визначається сигналом переривання від таймера (мал. 7.4). При цьому у процедурі обробки переривання від таймера, який реалізує , повинен кожен раз після ініціалізації таймера бути виконано перехід на початок алгоритму, а не в ту точку програми, де виникло переривання. Повернення з процедури обробки навіть у цьому випадку слід виконувати не по команді JMP, а з використанням спеціальної команди повернення (RETI або IRET) - спробуйте пояснити, чому? Зазначена вимога забезпечується тим, що всередині процедури обробки точка повернення примусово зчитується з стека, а на її місце заноситься адреса початку блоку обчислень.

rn

Блок-схема (мал. 7.4.-б) не зовсім точно відображає процес обробки та реалізації періоду . Для опису подієвої-орієнтованих дій краще використовувати тимчасові діаграми (мал. 7.4.-а).

rn

Логіка реалізації періодичних вичісленій

rn

Рис. 7.4. Логіка реалізації періодичних обчислень:
а) тимчасова діаграма дій пристроїв обчислювача;
б) блок-схема реалізації періоду

rn

Для запобігання зацікліваній в алгоритмах обробки даних, що реалізовуються в керуючих обчислювача, застосовують так званий сторожевойтаймер (Watch Dog Timer - WDT). Етоn таймер налаштовують на інтервал , а сигнал переривання з цього таймер використовують в обчислювальному блоці як сигнал апаратного скидання процесора. Після кожного нормально завершеного періоду повинна бути виконана нова ініціалізація і перезапуск сторожового таймера.

rn

У сучасних керуючих обчислювальних системах зазвичай застосовують функціонально завершені мікросхеми таймерів з програмної настройкою (наприклад, К580ВІ53, К1810ВІ54 або подібні). Крім того, таймери входять до складу Однокристальний мікроконтролерів, що дозволяє виконувати на їхній основі цифрові системи управління об'єктами або процесами в реальному часі.




<< Предыдущая статья
«Реалізація функцій часу»