ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
22 ноября
194521 Топик полностью
Т.Достоевский (18.05.2010 15:56 - 16:06, просмотров: 229) ответил Точка опоры на Всё по ТФМу, изменение регистра разрешено только при WDCE=1.
Нифига подобного! Почему тогда заработало только так? ///----- сверхэкономичная пауза на ватчдоге для пропуска дребезга и помех -----// lowpower_pause: //~16ms wdr cli //запустить WDT на прерывания WDTCR,((1<<WDTIE)|(1<<WDCE)|(0<<WDE)|(0<<WDP3)|(0<<WDP2)|(0<<WDP1)|(0<<WDP0)) //16ms sei sleep cli //отключить WDT WDTCR,((0<<WDTIE)|(1<<WDCE)|(0<<WDE)|(0<<WDP3)|(0<<WDP2)|(0<<WDP1)|(0<<WDP0)) //16ms sei ret //----- конец сверхэкономичная пауза на ватчдоге для пропуска дребезга и помех -----// И если делать фсё по мануалу: WDTCR,((0<<WDTIE)|(1<<WDCE)|(0<<WDE)|(0<<WDP3)|(0<<WDP2)|(0<<WDP1)|(0<<WDP0)) //16ms WDTCR,((1<<WDTIE)|(0<<WDCE)|(0<<WDE)|(0<<WDP3)|(0<<WDP2)|(0<<WDP1)|(0<<WDP0)) //16ms тоесть сначала (1<<WDCE), а вследующем (0<<WDCE) | (1<<WDTIE) то нифига не работает. И если отключать так, то WDT не отключается! MCUSR,0 WDTCR,((0<<WDTIE)|(0<<WDP3)|(1<<WDCE)|(0<<WDE)|(0<<WDP2)|(0<<WDP1)|(0<<WDP0)) ;?!?! WDTCR,((0<<WDTIE)|(0<<WDP3)|(0<<WDCE)|(0<<WDE)|(0<<WDP2)|(0<<WDP1)|(0<<WDP0)) ; отключается только WDTCR,((0<<WDTIE)|(0<<WDP3)|(1<<WDCE)|(1<<WDE)|(0<<WDP2)|(0<<WDP1)|(0<<WDP0)) //16ms WDTCR,((0<<WDTIE)|(0<<WDP3)|(0<<WDCE)|(0<<WDE)|(0<<WDP2)|(0<<WDP1)|(0<<WDP0)) //16ms Или надо чтобы (x<<WDCE) | (x<<WDE) всегда были одинаковые?