Ïðîáëåìà ñ Watchdog. Èìååì ïðîåêò ñ attiny45. Ñòàâèì ïî äàòøèòó êîýô.äåëåíèÿ ÷òî áû ïîëó÷èòü 8s ñðàáîòêè ñîáàêè(max).
WDTCR = 0x39;
WDTCR = 0x29;
 ðåçóëüòàòå ïîøàãîâîãî èñïîëíåíèÿ ïðîòåóñ (ïðàâûé êëèê íà ýëåìåíòå -> Configure diagnostic -> Watchdog Timer Module -> Debug) ñîîáùàåò: Enabled. Period is 0.004000000s, Reset mode.
Ò.å. â 2000 ðàç ìåíüøå äåëàåò, íó è ñáðàñûâàåò êàæäûå 4ms âìåñòî 8s.
 "Avr microprocessor model" - "Model Properties" íàøåë, ÷òî Watchdog clock = 1Mhz âìåñòî 125Khz ïî äàòøèòó. Íî ýòî âñåãî â 8 ðàç áîëüøå. Îòêóäà æå òàêîé ãëþê (2000/8=250 ðàç)?
CodeWizardAVR òîæå ñîãëàñåí ñî ìíîé â íàñòðîéêå Ñîáàêè:
// Watchdog Timer initialization
// Watchdog Timer Prescaler: OSC/1024k
// Watchdog Timer interrupt: Off
#pragma optsize-
#asm("wdr")
WDTCR=0x39;
WDTCR=0x29;
Êòî çíàåò, ÷òî ýòî çà ïðèêîë?


