[an error occurred while processing this directive]
Направте на путь истинный..........
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено Aleksey75 20 октября 2005 г. 08:42

Задача... нужно сделать кодовый замок с вводом кода одной кнопкой, 4 цифры, в каждой от 1 до 255..
прогу написал....может есть путь попроще?

.include "c:\real avr\m8def.inc"


.def tmp = r16
.def code1 = r17
.def code2 = r18
.def code3 = r19
.def code4 = r20

.def Xcode = r23

.equ sw = PD0


.cseg

.org $0000
rjmp reset

.org $0009
rjmp T0_OVF


reset:

ldi tmp,low(RAMEND)
out spl,tmp ;Определение вершины стека
ldi tmp,High(ramEND)
out sph,tmp ;Определение вершины стека

ldi tmp,0x01
out timsk,tmp



ldi tmp,0xff
out DDRC,tmp ;ВЫХОД
ldi tmp,0xff ;
out PORTC,tmp

ldi tmp,0x00
out DDRD,tmp ;Вход
ldi tmp,0xff ;
out PORTD,tmp
out PIND,tmp


MAIN:
sei
SBIS pinD,sw
rjmp SW_ON
ser tmp
out pind,tmp
rjmp main


SW_ON: clr tmp
out TCNT0,tmp ;Очистить содержимое таймера
ldi tmp,0x01
out TCCR0,tmp ;Зпапуск таймера
inc Xcode ;+1

sbi pinD,sw
rjmp main

T0_OVF: clr tmp
out TCCR0,tmp
out TCNT0,tmp


cpi code1,0x00
brne pc+4
mov code1,Xcode
clr Xcode
reti

cpi code2,0x00
brne pc+4
mov code2,Xcode
clr Xcode
reti

cpi code3,0x00
brne pc+4
mov code3,Xcode
clr Xcode
reti

cpi code4,0x00
brne pc+4
mov code4,Xcode
clr Xcode
reti

reti

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 
NoIX ключ Запомнить

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru