Реализация функции времени (1086953), страница 2
Текст из файла (страница 2)
;версия для МК51
MOV TMOD, #00001001B ;настройка Т/С0
MOV TH0, #0 ;сброс таймера
MOV TL0, #0
SETB TCON.4 ;старт Т/С0
WAITO: JNB P3.2, WAITO ;ожидание "1"
WAITC: JB P3.2, WAITC ;ожидание "0"
CLR TCON.4 ;стоп Т/С0
EXIT: ... ;выход из процедуры
Управление программе должно быть передано при условии, что на входе ¬ЗПР0 присутствует низкий уровень. Прерывания от Т/С0 и внешнее прерывание по входу ¬ЗПР0 должны быть запрещены. По завершению программы в Т/С0 будет находиться число, пропорциональное длительности "положительного" импульса на входе ¬ЗПР0. Верхний предел измерения равен 65536 мкс, а максимальная погрешность 1 мкс.
При необходимости измерения временных интервалов большей длительности можно программным способом подсчитывать число переполнений от таймера, т.е. расширять его разрядность за счет рабочего регистра или ячейки РПД.