Курсовая работа: Микропроцессорное устройство управления электронными весами
ldi r16,0xBD; клавиша «6»
st X+,r16
ldi r16,0xEB; клавиша «7»
st X+,r16
ldi r16,0xDB; клавиша «8»
st X+,r16
ldi r16,0xBB; клавиша «9»
st X+,r16
;опросклавиатуры
begin: ldi scancode,0xFF
ldir19,0x00; обнуление счетчика антидребезгового цикла
l3: ldir16,0x01; задается опрашиваемая линия
l1: movr17,temp1; номер опрашиваемой линии преобразуется для обнуления
negr17 ; соответствующего вывода
outPORTB,r17
inr17, PINB; чтение сканкода
orir17,0x80
cpir17,0xFF ;если клавиша нажата, то запомнить ее сканкод для
breql4 ; обработки в антидребезговом цикле
movr18,r17
l4: lslr16 ;следующая линия
cpir16,0x10
brnel1 ;если опрошены все линии, переходим к следующему шагу
cpi r19,0x00
breq l2
cp r18,scancode
brnel5;если текущий скан-код не равен предыдущему, то нажатие случайное
l2: mov scancode,r18
inc r19