Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- .include "m328pdef.inc"
- init: ldi r16,0b00111111
- out DDRB,r16 ;настройка на вывод линий порта B
- ldi r16,0b11110011
- out DDRD,r16 ;настройка на вывод линий порта D
- main: ldi zl, LOW(array*2)
- ldi zh, HIGH(array*2)
- ldi r17,8 ;счётчик строк матрицы
- M1: ldi r19,0x80 ;255
- ldi r20,0x0C ;105
- ldi r21,0x00 ;24
- lpm r16,z+
- out PORTB,r16 ;вывод в порт B
- lpm r16,z+
- out PORTD,r16 ;вывод в порт D
- Delay: ;сидим в этих циклах 0,5с.
- subi R19,1 ;вычитание 1 из регистра r19
- sbci R20,0 ;вычитание только С
- sbci R21,0 ;вычитание только С
- brcc Delay ;если не было заёма вернуться к метке Delay
- dec r17 ;уменьшить счётчик цикла
- brne M1 ;цикл из 8 итераций завершён?
- rjmp main
- array: .db 0x18,0xFE,0x14,0x02,0x10,0x02,0x0C,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement