Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Dodatok_1.doc
Скачиваний:
1
Добавлен:
04.09.2019
Размер:
706.05 Кб
Скачать

Блок-схема

Підпрограма затримки Delay1

Підпрограми затримки Delay2, 3 і 4 реалізовуються аналогічно підпрограмі Delay1, тільки замість умови «якщо r21=32» підставляється r21=64, r21=96 і r21=128 відповідно.

23). Реалізувати програму перетворення вхідного двійкового коду в код семисегментних індикаторів.

.device at90s1200

.include "1200def.inc"

ser r16 ;усі біти регістра R16 встановлюються в одиницю

out ddrb,r16 ;настроювання порту B на вивід

loop:

clr r17 ;очищення регістра R17

set ;установка в одиницю біта-акумулятора Т

sbic pind,0 ;якщо нульовий біт порту D дорівнює 0, то програма

;пропускає наступну команду

bld r17,0 ;завантаження в нульовий біт R17 значення

;біта-акумулятора

sbic pind,1 ;якщо перший біт порту D дорівнює 0, то програма

;пропускає наступну команду

bld r17,1 ;завантаження в перший біт R17 значення

;біта-акумулятора

sbic pind,2 ;якщо другий біт порту D дорівнює 0, то програма

;пропускає наступну команду

bld r17,2 ;завантаження в другий біт R17 значення

;біта-акумулятора

sbic pind,3 ;якщо третій біт порту D дорівнює 0, то програма

;пропускає наступну команду

bld r17,3 ;завантаження в третій біт R17 значення

;біта-акумулятора

cpi r17,0 ;порівняння регістра R17 з 0

breq m1 ;якщо R17=0, програма переходить на мітку m1

cpi r17,1 ;порівняння регістра R17 з 1

breq m2 ;якщо R17=1, програма переходить на мітку m2

cpi r17,2 ;порівняння регістра R17 з 2

breq m3 ;якщо R17=2, програма переходить на мітку m3

cpi r17,3 ;порівняння регістра R17 з 3

breq m4 ;якщо R17=3, програма переходить на мітку m4

cpi r17,4 ;порівняння регістра R17 з 4

breq m5 ;якщо R17=4, програма переходить на мітку m5

cpi r17,5 ;порівняння регістра R17 з 5

breq m6 ;якщо R17=5, програма переходить на мітку m6

cpi r17,6 ;порівняння регістра R17 з 6

breq m7 ;якщо R17=6, програма переходить на мітку m7

cpi r17,7 ;порівняння регістра R17 з 7

breq m8 ;якщо R17=7, програма переходить на мітку m8

cpi r17,8 ;порівняння регістра R17 з 8

breq m9 ;якщо R17=8, програма переходить на мітку m9

cpi r17,9 ;порівняння регістра R17 з 9

breq m10 ;якщо R17=9, програма переходить на мітку m10

rjmp loop ;перехід на мітку loop (початок програми)

m1:

ldi r18,0b01111110 ;присвоїти регістру R18 число 011111102

out portb,r18 ;вивід значення регістра R18 на порт B

rjmp loop ;перехід на мітку loop (початок програми)

m2:

ldi r18,0b00110000 ;присвоїти регістру R18 число 001100002

out portb,r18 ;вивід значення регістра R18 на порт B

rjmp loop ;перехід на мітку loop (початок програми)

m3:

ldi r18,0b01101101 ;присвоїти регістру R18 число 011011012

out portb,r18 ;вивід значення регістра R18 на порт B

rjmp loop ;перехід на мітку loop (початок програми)

m4:

ldi r18,0b01111001 ;присвоїти регістру R18 число 011110012

out portb,r18 ;вивід значення регістра R18 на порт B

rjmp loop ;перехід на мітку loop (початок програми)

m5:

ldi r18,0b00110011 ;присвоїти регістру R18 число 001100112

out portb,r18 ;вивід значення регістра R18 на порт B

rjmp loop ;перехід на мітку loop (початок програми)

m6:

ldi r18,0b01011011 ;присвоїти регістру R18 число 010110112

out portb,r18 ;вивід значення регістра R18 на порт B

rjmp loop ;перехід на мітку loop (початок програми)

m7:

ldi r18,0b01011111 ;присвоїти регістру R18 число 010111112

out portb,r18 ;вивід значення регістра R18 на порт B

rjmp loop ;перехід на мітку loop (початок програми)

m8:

ldi r18,0b01110000 ;присвоїти регістру R18 число 011100002

out portb,r18 ;вивід значення регістра R18 на порт B

rjmp loop ;перехід на мітку loop (початок програми)

m9:

ldi r18,0b01111111 ;присвоїти регістру R18 число 011111112

out portb,r18 ;вивід значення регістра R18 на порт B

rjmp loop ;перехід на мітку loop (початок програми)

m10:

ldi r18,0b01111011 ;присвоїти регістру R18 число 011110112

out portb,r18 ;вивід значення регістра R18 на порт B

rjmp loop ;перехід на мітку loop (початок програми)

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]