Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
MOV.B
MOV.B
MOV.B
BIS
MOV.B
CLR.B
#B16+TPDMAX-1,&TPD;один 16-битный счётчик, выбор выходов заряда
#TPDMAX-1,&TPE |
; Разрешить выходы
заряда #PRESET,&TPCNT2; Загрузить время
заряда #CPUOFF,SR; Режим пониженного
потребления @SP,&TPE; Разрешить только
текущий датчик &TPCNT2
: Запретить все прерывания, чтобы обеспечить непрерыв-: ную работу таймера и разряд конденсатора
Запрет прерываний Очистить младший байт таймера Переключить все датчики в «О» |
&TPCNT1 @SP,&TPD |
DINT CLR.B
BIC.B
MOV.B #(TPSSEL0*3)+ENA+ENB,&TPCTL
TPCNT1 CLK=MCLK, разрешить вход CIN
EINT; Разрешить прерыва-
ния, общий старт
BIS #CPUOFF,SR; Режим пониженного
потребления
******************************** |
*********************
EN=0:Завершение преобразования: 2X8 бит результата
в MSTACK
Включить следующий датчик: если больше нет,
завершение *****************************************************
MOV.B &TPCNT1,MSTACK(R8)
; Сохранить результат в стеке
MOV.B &TPCNT2,MSTACK+1(R8)
; Сохранить старший байт результата
L$301
INCD RRA.B JNC INCD |
R8 @SP MEASLOP SP |
Инкремент адреса Следующий выход TPD.X Если С=1 - завершение
Убрать старший TPD из стека
Дата публикования: 2014-11-18; Прочитано: 318 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!