А исходную ссылку можно , скрин это долго

А исходную ссылку можно , скрин это долго
Подход общий - быстрые внутрисистемные интерфейсы наружу немогиnick2015 писал(а): 12 мар 2025, 18:16Что то я упустил, ладно,тогда тот же вопрос про i2с.
Нормальный WDT делается на копеечной TPL5010.
Так уверенно, может схемой поделитесь ?
В даташите всё есть
теперь его нужно вставить в код C++ для IDEdstrufanov писал(а): 13 мар 2025, 10:32Rovki писал(а): 11 мар 2025, 22:40 Буду признателен и благодарен если сделаете, а то ждать манны небесной слишком долго.
Переделал под тини10: на PB0 прерывание от целевого контроллера, PB3 - сброс 100мс целевого контроллера через 10с, если от него нет прерыванияКод: Выделить всё
.device ATtiny10 .nolist .include "C:\Program Files (x86)\Atmel\AVR Tools\AvrAssembler2\Appnotes\tn10def.inc" .list ;================================================================================================================= ; частота внутреннего генератора 8МГц с делителем на 8 (по умолчанию) ;================================================================================================================= .def temp =r16 ;определение аккумулятора ;================================================================================================================= rjmp init ;таблица прерываний reti rjmp PCINT reti reti rjmp T0_compA rjmp T0_compB ;================================================================================================================= init: ldi temp,low(RAMEND) ;определяем указатель стека out $3D,temp ldi temp,high(RAMEND) out $3E,temp clr temp out TCNT0H,temp ;сброс счетчика таймера T0 out TCNT0L,temp ldi temp,0b00000000 ;включаем Т0 в режим normal out TCCR0A,temp ldi temp,0b00000100 ;предделитель таймера Т0 на 1024 (период 1024мкс) out TCCR0B,temp ldi temp,0b00000000 out TCCR0C,temp ldi temp,0b00100110 ;совпадение по истечении 10с (9766) out OCR0AH,temp ldi temp,0b00100110 out OCR0AL,temp ldi temp,0b00000000 ;совпадение по истечении 100мс (98) out OCR0BH,temp ldi temp,0b01100010 out OCR0BL,temp ldi temp,0b00001000 ;определяем PB3 как выход, а остальные как входы out DDRB,temp ldi temp,0b00001000 ;подтяжек нет, единица на выходе out PortB,temp ldi temp,0b00000010 ;разрешаем прерывания от Т0 по совпадению канала A out TIMSK0,temp ldi temp,0b00000001 ;разрешаем прерывания по изменению состояния входов out PCICR,temp ldi temp,0b00000001 ;разрешаем прерывания по изменению на входе PB0 out PCMSK,temp sei ;общее разрешение прерываний ;================================================================================================================= cicle: wdr ;сброс аппаратного вотчдога rjmp cicle ;цикл ;================================================================================================================= T0_compA: cbi PortB,3 ;установка нуля на выводе PB3 для сброса целевого МК clr temp out TCNT0H,temp ;сброс счетчика таймера T0 out TCNT0L,temp ldi temp,0b00000100 ;разрешаем прерывания от T0 по совпадению канала B out TIMSK0,temp reti ;и выходим из прерывания ;================================================================================================================= T0_compB: sbi PortB,3 ;установка единицы на выводе PB3 для запуска целевого МК clr temp out TCNT0H,temp ;сброс счетчика таймера T0 out TCNT0L,temp ldi temp,0b00000010 ;разрешаем прерывания от T0 по совпадению канала A out TIMSK0,temp reti ;и выходим из прерывания ;================================================================================================================= PCINT: clr temp out TCNT0H,temp ;сброс счетчика таймера T0 out TCNT0L,temp reti ;и выходим из прерывания
ПС: но я согласен с nick1215, что если уж ставить внешний вотчдог, то лучше аппаратный, по крайней мере его программировать не надо
Спорное утверждение, разная логика для вочдога это будет примерно также как и использование атинни. В теории конечно можно выдумать кейсы, но на практике как вы любите говорить - из пушки по вообьям.Rovki писал(а): 13 мар 2025, 20:29 Программировании недостаток ,но и достоинство , можно придумать разную логику вотчдога
В этой одной логике есть повторный резет если есп не запустилась от WD ?
Да нечему там виснуть , ни библиотек, ни вайфай ...
Голова на то и дана , что бы думать.. Обдумывание даже длительное (подготовка) не считается выстрелом . Зато потом будет простоPhazz писал(а): 14 мар 2025, 05:02Спорное утверждение, разная логика для вочдога это будет примерно также как и использование атинни. В теории конечно можно выдумать кейсы, но на практике как вы любите говорить - из пушки по вообьям.Rovki писал(а): 13 мар 2025, 20:29 Программировании недостаток ,но и достоинство , можно придумать разную логику вотчдога
Пусть попробуют более опытные, в плане кода пользователи .
1. Да есть, если esp не сделает сброс таймера
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя