.include "m162defwor.inc" ;свистелки-перделки
.org 0x000
jmp telo ;куды деваться при ресете
.org 0x022
jmp chpok ;куды хуячить по прерыванию переполнения счетчика
.org 0x038 ;пиздец таблицы прерываний, прога пошла
telo:
ldi r16,low(RAMEND) ;всякая непонятная хуита, чтобы работало пиздато
out spl,r16
ldi r16,high(RAMEND)
out sph,r16
sei ;конец мутной хуиты, понеслась
clr r16
ldi r16,0b00000001 ;перед прошивкой не забыть бит три впердолить, а то пиздец!
out tccr0,r16 ;настраиваем таймер-счетчик
clr r16
ldi r16,0b00000001
out timsk,r16 ;можно хуярить прерыванию
clr r16
ldi r16,0
out ddra,r16 ;порт а весь на выход
clr r16
ldi r16,0b00000001
out ddrb,r16 ;пин 0 порта б на вход под кнопку, остальное на выход, шоб мозга не ебало
clr r16
ldi r16,0b00000000
out pinb,r16 ;обнуляем порт б, ибо нехуй
clr r17 ;обнуляем 17 регистр, потом пригодится
ebat: ;цикл для нихуяниделания
nop
jmp ebat
chpok: ;обработчик прерывания счетчика
inc r17 ;инкерементируем переменную, шоп лампочки мигали
in r16,pinb
cpi r16,1 ;чекирим на тему нажатой кнопки
breq morg ;опа, кнопка нажата, ебашим
jmp hui ;а если не ебашим, то нахуй
morg: ;ебашим
out pina,r17 ;елочка, зажгись!
jmp nahui
hui: ;не ебашим
clr r16
out pina,r16 ;заткнись, сука!
nahui: ;пиздец обработчику
reti | | огромный резиновый топинамбур ( |
February 10 2009, 12:21:37 UTC 3 years ago
February 10 2009, 13:53:30 UTC 3 years ago
February 10 2009, 12:37:11 UTC 3 years ago
February 10 2009, 12:39:56 UTC 3 years ago
February 10 2009, 13:52:20 UTC 3 years ago
jmp nahuiи коммент можно не писать 8-)February 10 2009, 13:16:22 UTC 3 years ago
February 10 2009, 13:51:35 UTC 3 years ago
February 10 2009, 14:05:28 UTC 3 years ago
И косвенная адресация есть?
February 10 2009, 14:09:50 UTC 3 years ago
February 10 2009, 14:20:53 UTC 3 years ago
February 10 2009, 14:51:16 UTC 3 years ago
February 10 2009, 14:53:26 UTC 3 years ago