Страница 1 из 1

Почему proteus ругается? Дело в программе?

Добавлено: Вт окт 02, 2012 20:48:31
gibiri
Почему proteus ругается на прерывание? Дело в программе?

Код: Выделить всё

.include "m128def.inc"


RJMP VECT_END
.org OVF2addr
rjmp over_a
.org OVF2addr

jmp over_a
VECT_END:
LDI r19,HIGH(RamEnd)
OUT   SPH,r19
LDI r19,LOW(RamEnd)
OUT   SPL,r19
clr r3
LDI R16,0xFF
OUT DDRA,R16
LDI R18, 0xFF
OUT TIMSK,R18

ldi r25, (1<<TOIE3)| (1<<OCIE3A)
STS ETIMSK,R18  ;!!!!!!!!!!!


LDI R16,3
out OCR2,R16
LDI R17,(1<<WGM21) | (1<<CS20)
out TCCR2,R17

SEI

LOOP:
RJMP LOOP


over_a:

com r3

OUT PORTA,R3
reti


Выдает: Invalid opcode OxFFFF at PC=0x0026

Re: Почему proteus ругается? Дело в программе?

Добавлено: Вт окт 02, 2012 20:56:59
zero648
Это еще что такое, сами поняли чё делаете?

Код: Выделить всё

LDI R18, 0xFF
OUT TIMSK,R18

ldi r25, (1<<TOIE3)| (1<<OCIE3A)
STS ETIMSK,R18  ;!!!!!!!!!!!

Re: Почему proteus ругается? Дело в программе?

Добавлено: Вт окт 02, 2012 20:59:38
gibiri
хотел разрешить все прерывания(на всякий случай).

Re: Почему proteus ругается? Дело в программе?

Добавлено: Вт окт 02, 2012 21:01:29
gibiri
это я отключал:

Код: Выделить всё

 ; ldi r25, (1<<TOIE3)| (1<<OCIE3A)

Re: Почему proteus ругается? Дело в программе?

Добавлено: Вт окт 02, 2012 21:21:01
zero648
gibiri писал(а):это я отключал:

Код: Выделить всё

 ; ldi r25, (1<<TOIE3)| (1<<OCIE3A)
А это совсем никакой роли не играет, вы в ETIMSK загружаете 0xFF, а надо бы походу так:

Код: Выделить всё

ldi r25, (1<<TOIE3)| (1<<OCIE3A)
STS ETIMSK, R25