Script - Страница 146

МИКРОКОНТРОЛЛЕРЫ СЕМЕЙСТВА 8051 - Script

Вместо сброса счетчика долей секунд в нулевое состояние из его содержимого вычитается 1 000 000 (к этому моменту содержимое счетчика равно 1 048 576). Это означает что остаток переносится на следующую секунду. После двух секунд этот остаток приведет к тому, что только 15 прерываний потребуется, чтобы счетчик превысил значение 1 048 576. Таким образом, каждый интервал времени не будет точно равен секунде, но в среднем время будет фиксироваться правильно.

Программа «AP2V3.ASM» производит опрос состояния кнопки «Установка» каждый раз, когда содержимое счетчика долей секунды превышает значение 1 048 576. Если эта кнопка нажата, то выполняется установка нового значения времени. Для этой цели используется специально разработанный алгоритм, который позволяет упростить отладку приложения. Алгоритм установки времени следующий. Для изменения числа минут используется переменная «Increment», значение которой после этого сдвигается на один разряд влево с вводом 1 в младший бит до получения максимальной величины 03Fh (десятичное 63). Чем дольше держать кнопку, тем больше составит изменение времени. Когда значение минут достигает максимума, начинают увеличиваться часы со скоростью один раз в секунду. После каждого часа значение минут сбрасывается в нуль. Таким образом можно пройти полные 24 часа менее чем за 30 секунд.

Go to Top