На семисегментному індикаторі почергово появляються цифри ‘1’, ‘9’, ‘8’, ‘8’.
dat EQU R0
adr EQU R1
Temp1 EQU R2
Temp2 EQU R3
Temp3 EQU R4
Segm EQU 0x02
CSEG
ORG 0x0000
JMP run
ORG 0x0033
run:
call off
call ldelay
call ldelay
mov dat, #11001111b
mov adr, #00000100b
call strob
call ldelay
mov dat, #10010000b
mov adr, #00000011b
call strob
call ldelay
mov dat, #10000000b
mov adr, #00000010b
call strob
call ldelay
mov dat, #10000000b
mov adr, #00000001b
call strob
call ldelay
petla:
jmp petla
strob:
setb P3. 6
mov P0, dat
mov P2, adr
mov P2, #0x00
ret
off:
mov dat, #11111111b
mov adr, #00000001b
call strob
mov dat, #11111111b
mov adr, #00000010b
call strob
mov dat, #11111111b
mov adr, #00000011b
call strob
mov dat, #11111111b
mov adr, #00000100b
call strob
ret
Delay:
mov Temp1, #0xFF
loop:
dec Temp1
mov Temp2, #0xFF
djnz Temp2, $
cjne Temp1, #0x00, loop
ret
Ldelay:
call delay
call delay
call delay
call delay
call delay
call delay
call delay
call delay
call delay
call delay
RET
END
Варіанти індивідуальних завдань
№
Текст індивідуального завдання
На семисегментному індикаторі засвітити на старших двох розрядах ххН, через інтервал в 1с. погасити число і на двох молодших розрядах число засвітити число ххН, час світіння 1с., після цього повторювати процедуру спочатку.
На семисегментному індикаторі засвітити на молодшиому розряді число хН, через інтервал 1с, на старшому розріді засвітити число хН (при цьому попереднє чисо не гаситься), через 1с. вивести на молодший розряд суму чисел, старший розряд погасити, час засвітки 1с., дальше повторити процедуру спочатку.
На семисегментному індикаторі засвітити на двох молодших розрядах число 0хН, через інтервал в 1с. погасити число і на то самому індикаторі засвітити число х0Н, час світіння 1с., після цього повторювати процедуру спочатку, старший розряд погашено.
На семисегментному індикаторі засвітити на молодшиому розряді число хН, через інтервал 1с, на старшому розріді засвітити число хН (при цьому попереднє чисо не гаситься), через 1с. вивести на молодший розряд добуток чисел, старший розряд погасити, час засвітки 1с., дальше повторити процедуру спочатку.
На семисегментному індикаторі починаючи з молодшого розряді засвітити число хН, через інтервал в 1с. погасити його і відобразити те саме число на наступному розряді, через 1с., на наступному, коли засвітиться останій індикатор, процедуру повторити з початку.
На семисегментному індикаторі засвітити на старшому розряді число ххН, через інтервал 1с, на молодшому розряді засвітити число хН (при цьому попереднє чисо не гаситься), через 1с. вивести на молодший розряд частку від ділення першого числа на перше, старший розряд погасити, час засвітки 1с., дальше повторити процедуру спочатку.
На семисегментному індикаторі на молодшому розряді засвітити число 0Н, через інтервал в 0, 5с. інкрементувати дане значення, коли число буде рівне 10, обнулити індикатор і процедуру повторити з початку, решта розрядів індикатора погашено.
На семисегментному індикаторі засвітити на старшому розряді число ххН, через інтервал 1с, на молодшому розряді засвітити число ххН, яке має бути менше за перше (при цьому попереднє чисо не гаситься), через 1с. вивести на молодший розряд різницю від віднімання першого числа від другого чисел, старший розряд погасити, час засвітки 1с., дальше повторити процедуру спочатку.
На семисегментному індикаторі на старшому розряді засвітити число 0Н, через інтервал в 0, 1с. інкрементувати дане значення, коли число буде рівне 100, обнулити індикатор і процедуру повторити з початку, решта розрядів індикатора погашено.
На семисегментному індикаторі на молодшому розряді засвітити число 59Н, через інтервал в 1с. декремннтувати значення, коли число буде рівне 0 засвітити на індикатор 59Н і процедуру повторити з початку, решта розрядів індикатора погашено.
Лабораторна робода №3. Схема динамічного відображення інформації
Тема: Схема динамічного відображення інформації.
Мета: Вивчити метод динамічного відображення інформації на прикладі матриці світлодіодів.
Порядок виконання роботи:
1. Вивчити принцип динамічного методу відображення інформації на прикладі матриці світлодіодів.
2. Розробити алгоритм індивідуального завдання до початку заняття.
3. Розробити програму і скомпілювати її.
4. Завантажити програму в стенд, переконатись в правильності її роботи, при негативному результаті виявити допущені помилки і виправити їх. Повторити завантаження програми в стенд.