У меня голова лопается по шву...
В AVRstudio работает норм, но Proteus тупо молчит всеми портами
и не выдает ошибок ни одной.
Что не так-то?
Спасибо заранее
CODE
.include <m168def.inc>
.def temp = r16
.equ SS = PB2
.equ MOSI = PB3
.equ MISO = PB4
.equ SCK = PB5
.cseg
.org 0
jmp RESET
.org SPIaddr
jmp EXT_SPI
EXT_SPI:
reti
RESET:
cli
ldi temp, low(RAMEND)
out SPL, temp
ldi temp, high(RAMEND)
out SPH, temp
ldi temp, 1<<SE
out SMCR, temp
ldi temp, (1<<SCK)|(1<<MOSI)|(1<<SS)|(1<<MISO)
out DDRB, temp
ser temp
out PORTB, temp
ldi temp, (1<<SPIE)|(1<<SPE)|(1<<MSTR)
out SPCR, temp
ldi ZH, high(0x00ff)
ldi ZL, low(0x00ff)
sei
Cycle:
cbi PORTB, SS
nop
nop
nop
nop
nop
nop
out SPDR, ZL
sleep
sbi PORTB, SS
nop
nop
nop
nop
nop
nop
jmp Cycle
P.S. На C не хочу писать принципиально
P.P.S. В частности он не выходит из SLEEP режима
Причина редактирования: Уменьшение видимого размера цитаты исходника.