Здравствуйте, господа форумчане. Недавно начал освоение микроконтроллеров и дошёл до watchdog и тут я застрял. НАписал простенькую програмку, которая мигает светодиодом раз в секунду, затем записал в программу watchdog, который сбрасывал программу через 0.5 сек. Т.е. по сути светодиод загораться не должен. Но когда запустил в симуляторе Proteus, то прерывания не происходит, т.е. светодиод продолжает мигать. Весь интернет уже облазил в поисках ответа на свой вопрос.
Помогите пожалуйста разобраться в чём проблема, в моих руках или в протеусе. Вот фрагмент самой программы:
Код
rjmp Init
Delay:
ldi Delay1, 0x40
ldi Delay2, 0x0D
ldi Delay3, 0x03
OneSecond:
subi Delay1, 1
sbci Delay2, 0
sbci Delay3, 0
brne OneSecond
ret
Init:
ser temp
out DDRD, temp
ldi temp, 0b00001101
sts wdtcsr, temp
Start:
cbi PortD, 0
rcall Delay
sbi PortD, 0
rcall Delay
rjmp Start