Что-то не так?
Пожалуйста, отключите Adblock.
Портал QRZ.RU существует только за счет рекламы, поэтому мы были бы Вам благодарны если Вы внесете сайт в список исключений. Мы стараемся размещать только релевантную рекламу, которая будет интересна не только рекламодателям, но и нашим читателям. Отключив Adblock, вы поможете не только нам, но и себе. Спасибо.
Как добавить наш сайт в исключения AdBlockРеклама
Автоматическая перезагрузка компьютера при зависании watchdog
Автоматическая перезагрузка компьютера при зависании (Watchdog)Вариант 1Признаком нормальной работы компьютера в данном случае служит наличие сигнала на выходе TxD одного из COM портов. Защищаемая от "зависания" программа должна постоянно выводить в него данные. Какие - значения не имеет. Это может быть полезная информация, предназначенная для подключённого к порту устройства, либо другая, лишь бы сигнал на выходе TxD не прерывался на длительное время. Значения выпрямленного диодами VD1 и VD2 напряжения на конденсаторах C2 и C3 равны по абсолютной величине (~10 В), но противоположны по знаку. В результате напряжение на базе транзистора VT1 близко к нулю и он закрыт. После прекращения сигнала TxD конденсатор C3 разряжается быстрее, чем C2, ёмкость которого в несколько раз больше. Напряжение на базе транзистора VT1 становится положительным и открывает его. Цепь "Сброс" компьютера соединяется с общим проводом до полной разрядки конденсатора C2. В результате компьютер начнёт работу с загрузки операционной системы и выполнения команд Autoexec.bat. Среди них не должно быть команд, требующих оператора (например, ввод пароля). Только загрузка необходимых резидентных драйверов и вызов рабочей программы. В течении всего перезапуска "сторож" не оказывает влияния на работу компьютера, т.к. сигнал TxD отсутствует, конденсаторы разряжены, а транзистор закрыт. С появлением сигнала первым заряжается конденсатор C3, затем C2, и устройство готово к работе. Список необходимых радиодеталей: До того, как опробовал у себя эту схему, я и не подозревал, что Винда настолько глюченая. С другими ОСями никаких проблем (DOS, Linux). Под Widows надо делать большую задержку. Обязательно точно разберитесь с подключением на "Reset", а то IMHO может сгореть транзистор. Резисторы достаточно поставить минимальной мощности (0,125 Ват). Заменять диоды можно без проблем на однотипные: у меня стоят КД521. Вариант 2При помощи предлагаемой схемы и программы Вы навсегда забудете что такое зависший внутренний модем, или провисевшая несколько суток станция.
Алгоритм ее работы прост. На таймерное прерывание вешается обработчик, делающий две вещи. Во-первых он выдает импульс в порт 100h по линии D0, а во-вторых инкрементирует внутренний счетчик, который сбрасывается файловыми функциями 21h прерывания и нажатиями на клавиши. Если 10 минут не возникало таких ситуаций, происходит перезагрузка. Теперь о схеме. Ее основой является ждущий мультивибратор с повторным запуском. После первого запускающего импульса одновибратор начинает формирование временной задержки. Каждый следующий импульс возобновляет эту задержку. Если поступление запускающих импульсов прекратится, одновибратор закончит формирование импульса, определяемого постоянной времени C1R2 и запустит второй одновибратор, который собственно и формирует сигнал сброса. Кроме того можно программно сформировать сбрасывающий импульс по линии D1порта 100h. Выводы Reset и Gnd подключаются параллельно кнопке сброса выводом Gnd к нулю. Элементы D2 и D3 образуют дешифратор, а D1 - четырехбитный порт, у которого два разряда остаются резервными. www.iceinet.ru |