|
|
Рис. 7. Детальная блок – схема алгоритма работы тестера ИМС
Примем tвнутр.цикла = 500 мкс, t внеш.цикла = 20 мс. Необходимо определить значения переменных EXTR и INTR, задающие, соответственно, tвнутр.цикла и tвнеш.цикла. Можно записать:
tвнутр.цикла = 2*3мкс* INTR = 6мкс * INTR.
Отсюда
INTR = 500 мкс / 6 мкс = 83, 33 = 53Н.
Для времени внешнего цикла:
t внеш.цикла = ( 2+ 2+ 2) * 3мкс + [(2+2)*3мкс + 500]*EXTR = 18мкс+ 512мкс *EXTR.
Отсюда
EXTR = ( 20 – 0,018)мс/ 512 мс = 39,03 = 27Н
Рис. 8. Блок – схема алгоритма подпрограммы тестирования ИМС К155ЛА1
3.5.3. Программа работы прибора на языке Ассемблера
INTR EQU 53H ; Времязадающие константы
EXTR EQU 27H ; для подпрограммы DELAY
ORG 0000H ; Начальный адрес программы
; Основная программа
MOV P3, #1FH ; Выключить индикаторы
MOV SP, #70H ; Определить стек
READY: SETB P3.5 ; Включить индикатор "ГОТОВ"
WAIT1: JB P3.3, WAIT1 ; Ожидание нажатия кнопки "ТЕСТ"
CALL DELAY ; Вызов подпрограммы задержки
WAIT2: JNB P3.3, WAIT2 ; Ожидание отжатия кнопки "ТЕСТ"
CALL DELAY
CLR P3.5 ; Погасить индикатор "ГОТОВ"
MOV A, P0 ; Ввод кода номера ИМС
CPL A ; Получить прямой код номера N
CJNE A, #0, NEXT1 ; Номер ИМС N=00?
CALL TEST00 ; Да, вызов подпрограммы тестирования
; TEST00
JMP CHECK ; Переход на метку CHECK
NEXT1: CJNE A, #1, NEXT2 ; Номер ИМС N=01?
CALL TEST01 ; Да, вызов подпрограммы тестирования
; TEST01
JMP CHECK
:
: ; Проверка остальных ИМС
:
NEXT98: CJNE A, #98, NEXT99 ; Номер ИМС N=98?
CALL TEST98 ; Да, вызов подпрограммы тестирования
; TEST98
JMP CHECK
NEXT99: CALL TEST99 ; Да, вызов подпрограммы тестирования
; TEST99
; Проверка результата тестирования
CHECK: JB F0, NORM ; Переход, если F0=1 (НОРМА)
SETB P3.7 ; Включить индикатор "БРАК"
JMP WAIT3
NORM: SETB P3.6 ; Включить индикатор "НОРМА"
WAIT3: JB P3.4, WAIT3 ; Ожидание нажатия кнопки "СБРОС"
CALL DELAY ; Вызов подпрограммы задержки
WAIT4: JNB P3.4, WAIT4 ; Ожидание отжатия кнопки "СБРОС"
CALL DELAY
; Установка портов Р1, Р2, Р3 на ввод, гашение всех индикаторов
MOV P1, #0FFH
MOV P2, #0FFH
MOV P3, #1FH
JMP READY ; Переход в исходное состояние
; DELAY – подпрограмма временной задержки на 20мс
; Входные параметры: константы INTR, EXTR
DELAY: MOV R6, # EXTR ; Загрузка
LOOP2: MOV R7, # INTR ; времязадающих констант
LOOP1: DJNZ R7, LOOP1 ; Цикл, если (R7) 0
DJNZ R6, LOOP2 ; Цикл, если (R6) 0
RET ; Возврат из подпрограммы
; TEST01 – подпрограмма тестирования ИМС К155ЛА1 с номером N=01
; Выходной параметр: флаг F0 – при F0 = 1 результат тестирования
; положительный (НОРМА), при F0 = 0 – отрицательный (БРАК)
TEST01: CLR P3.2 ; P3.2 < -0, подать питание на ИМС
CALL DELAY ; Вызов подпрограммы задержки
MOV R2, # 0FH ; Загрузить счетчик состояний
MOV R0, # 0 ; В (R0)– начальное значение входного
; кода
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.