LINUX.ORG.RU

Micro Watchdog timer на микроконтроллере PIC16F630 для PC.


0

0

Многие, наверное, сталкивались с ситуацией, когда необходима надежная и бесперебойная работа сервера в режиме 24/7, даже покупая дорогое проверенное железо, нет ни какой гарантии, что оно не "повиснет" в неподходящий момент, причиной этого может стать сыроватость ядра ОС или драйвера какой-нибудь железки, а то и вовсе из-за его брака. Главная проблема в том, что в этот неприятный момент может ни кого не оказаться по близости с этим сервером, что бы нажать на кнопку "RESET", и с этого момента, оценивая важность этого сервера, у вас начинаются проблемы, если повисший сервер вовремя не начнет свою работу....
В статье рассказывается как собрать недорогой Watchdog на микроконтроллере
PIC16F630, что бы затем его можно было использовать на серверах под
управлением Linux/FreeBSD/Windows NT/2K/XP...

>>> Подробности

★★★

Проверено: ivlad ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

McMCC конечно респект, но:

>Использование параллельного порта, который практически нигде не используется на серверах.

поэтому на серверах нет вообще LPT

borisych ★★★★★ ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>поэтому на серверах нет вообще LPT

Если есть COM, то LPT быть обязан, т.к. чип, обычно, который это содержит,
является еще контроллером FDD, PS/2 и прочей фигни, скорее всего на
самой плате есть разъем, если не вывели LPT наружу. Может я не правильные
сервера видел, но у наших серверов везде есть LPT...

McMCC ★★★ ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

Аналогичную фигню от Cronyx кто-нить проверял в работе?

anonymous ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>Аналогичную фигню от Cronyx кто-нить проверял в работе?

Только на картинке видел:), а что там внутри - Х.З... За $50 вы можете его
купить у них...

McMCC ★★★ ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>вот здесь в описании про lpt нет ничего
>http://developer.intel.com/design/servers/boards/se7520jr2/index.htm

У Intel'а есть встроенный Watchdog, так что ему другой не нужен...

McMCC ★★★ ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

респект! налаживай производство.

anonymous ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

Интересно. Наверное для удаленного управления ничего. Впрочем ежели проверяющая машинка физически рядом то пожалуй и она излишне сложна. Демоны,таймеры...

anonymous ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>Интересно. Наверное для удаленного управления ничего. Впрочем ежели
>проверяющая машинка физически рядом то пожалуй и она излишне сложна.
>Демоны,таймеры...

Если сервер повис, то о каком удаленном управлении может идти речь?
Ну если касательно темы, то можно послать принудительный "RESET"....

McMCC ★★★ ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>>Если сервер повис, то о каком удаленном управлении

Имеется ввиду когда проверяющая машинка оочень далеко. Ежели это все рядом (в одной стойке к примеру) нафига огород с таймером? Слева на схемке ключик, что кнопку замыкает, его на компорт управляющей машины. А то таймеры, демоны...

anonymous ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>Ежели это все рядом (в одной стойке к примеру) нафига огород с таймером?
>Слева на схемке ключик, что кнопку замыкает, его на компорт управляющей
>машины. А то таймеры, демоны...

Ну и сколько такая управляющая машина сможет обслужить серверов в стойке?
2-е? А если она сама повиснет?

McMCC ★★★ ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>USB варианты даже не рассматривались из-за дороговизны их реализации.
http://www.obdev.at/products/avrusb/index.html

AVR-USB is a firmware-only implementation of a USB 1.1 compliant
low-speed device for Atmel's AVR microcontrollers. It runs on any AVR
microcontroller which has at least 2 kB of Flash memory, 128 bytes RAM
and can be clocked at 12 MHz. No UART, timer, input capture unit or
other special hardware is required (except one edge triggered
interrupt).


ATMega8 имеет 8Кб, может работать на 16MHz и стоит менее 3$

Это дорого?

а ЛПТ как-то совсем не интересно...

ЗЫ все равно респект %)

anonymous ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

Как ни странно, но это тоже программное решение, которое может сбоить. Уж лучше поставить обычный одновибратор на NE555 или подобной схеме аппаратного таймера и наслаждаться жизнью.

a1s2d3 ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>Как ни странно, но это тоже программное решение, которое может сбоить. Уж
>лучше поставить обычный одновибратор на NE555 или подобной схеме
>аппаратного таймера и наслаждаться жизнью.

Не лучше, нужно еще иметь возможность остановки таймера, а иначе
постоянный ребут обеспечен при проверке fs, плавали, знаем...
PIC довольно надежно работает, уже как месяц использую, пока притензий
небыло....

McMCC ★★★ ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

Нафиг не надо - в любой совеременной матери есть встроенный watchdog, причем иногда не один, а 2 - 3 (!) сразу.

anonymous ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>Нафиг не надо - в любой совеременной матери есть встроенный watchdog,
>причем иногда не один, а 2 - 3 (!) сразу.

А то я не знал..... Вот только не на всех и не везде распаян. На MSI матерях
для AMD64 ни один из нескольких не работает...


McMCC ★★★ ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>ATMega8 имеет 8Кб, может работать на 16MHz и стоит менее 3$ Схема будет уже не маленькая, хотя attiny2313 подошел бы, но вот флеш в ней на 1Кб, что может не хватить....

McMCC ★★★ ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>Как ни странно, но это тоже программное решение, которое может сбоить.

Нет, не может. Тем более, что почти у всех мелкоконтроллеров есть свой, аппаратный, WDT.

>Уж лучше поставить обычный одновибратор на NE555 или подобной схеме аппаратного таймера и наслаждаться жизнью.

Таки да.

smartly ★★★ ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>>Ну и сколько такая управляющая машина сможет обслужить серверов в стойке? 2-е? А если она сама повиснет?

Пинов на компорте поболе 2. Практически на каждую ногу в отдельности можно сигнал дать (гнд не всчет). Впрочем можно и на лпт. А насчет зависания... Что скажем будет если в предложенной схеме за отведенное время таймер не отключить ? Пралльна. Таймер грохнет возможно еще живой сервер. Ежели на прямую с порта и отключалка повисла - не отключит мертвый. Но схема безусловно интересная.

anonymous ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

> Схема будет уже не маленькая видимо по ссылке ты не ходил...

или ты про размер меги8? так она в соике на 8х8мм...

еще из мелких есть ATtiny45 (дип8)

anonymous ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>или ты про размер меги8?

Про нее, 28 ног все же, ATMEGA8-16PI(16PU), 8K Flash,DIP28,16MHz,Ind, 5V,8-bit AVR MCU. (Atmel), хотя цена 70 руб интересная:)... Только всеравно,
дешевле моего варианта не будет, так как кварц за собой тащит, да и программатор надо собирать, когда как для PIC'ов давно уже был собран
и мне быстрее все было сделать именно на PIC'ах...

McMCC ★★★ ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>Что скажем будет если в предложенной схеме за отведенное время таймер не
>отключить ? Пралльна. Таймер грохнет возможно еще живой сервер.

Ну не надо обо мне так плохо думать:), уж эту ситуацию я учел,
killall -1 демон и все остановится...

McMCC ★★★ ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

> так как кварц за собой тащит
не а... %)
есть встроенный тактовый генератор

>да и программатор надо собирать
у меня 4 проводка к ЛПТшнигу прицеплены... даже без буфера (ибо лениво)...

> и мне быстрее все было сделать именно на PIC'ах...
ну тады понятно...
просто я про usb говорил... и как пример авры привел.

anonymous ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>> и мне быстрее все было сделать именно на PIC'ах...
>ну тады понятно...
>просто я про usb говорил... и как пример авры привел.

Над этим я еще подумаю:), за наводку спасибо, просто на PIC18 + USB,
гораздо дороже выйдет, а по вашей ссылке, есть куда думать...

McMCC ★★★ ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>> так как кварц за собой тащит
>не а... %)
>есть встроенный тактовый генератор

Т.е. 12 Мгц можно на внутреннем организовать? Тогда здорово, надо
будет даташит почитать...

McMCC ★★★ ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>Т.е. 12 Мгц можно на внутреннем организовать? Тогда здорово, надо
>будет даташит почитать...

Не, только на 8Мгц, так что кварц надо вешать, что бы с USB можно было работать...

McMCC ★★★ ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

> Т.е. 12 Мгц можно на внутреннем организовать? упс... щаз залез в даташит на мегу16... написано что на внутреннем можно 1,2,4,8

нашел в апп ноутах от атмела как организовать усб на tiny2313 (называется avr309.pdf). Но кварц на 12Mhz нужен. итого стоимость в 70р (мега8, кстати в соике еще дешевле)+ 15р (кварц) + рублей 20 (кусок макетки и всякая мелочь), что то=же не так уш много...

anonymous ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>Не, только на 8Мгц

И даже не на 8МГц, а на 1МГц. (Иди ты имеешь в виду внешний RC)

>будет даташит почитать...

А даташит лучше почитай на atmega48/88/168. Это типа багфикс на atmega8 ;)

И внутренний RC у него на 8МГц.

smartly ★★★ ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

Самоделкин, а на какую ножку в socket 940 припаивать ресет нужно? Я чего-то никак не пойму.

Sun-ch ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>Самоделкин, а на какую ножку в socket 940 припаивать ресет нужно? Я >чего-то никак не пойму.

Глупее вопроса не придумал? Ресет на материнской плате, есть такой
разъемчик...

McMCC ★★★ ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>Самоделкин, а на какую ножку в socket 940 припаивать ресет нужно? Я чего-то никак не пойму.

Специально для таких как ты я поискал в http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/31412... и нашёл, что это ножка G12

Но вопрос всё равно глупый.

smartly ★★★ ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

Проще всего однокристалки подключать к USB через чипы USB-COM, например, FT232BL (фирмы FTDI): на PC не придется париться с драйверами - есть и под Винду, и под Линух, и на микропроцессоре вешается на встроенный COM-порт...

coleman ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>Проще всего однокристалки подключать к USB через чипы USB-COM

Проще не будет, будет дороже... Проще, это когда AVRки подключать напрямую
к USB, человек тут даже ссылки привел, за что ему большое спасибо, это гораздо дешевле будет...

McMCC ★★★ ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

> Проще не будет, будет дороже... Проще, это когда AVRки подключать напрямую к USB

Дороже будет - баксов на 5, но зато сразу с этим девайсом можно будет работать и со стороны PC, как с обычным COM-портом, стороны микроконтроллера, а не трахаться с драйверами.

coleman ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>Дороже будет - баксов на 5, но зато сразу с этим девайсом можно будет
>работать и со стороны PC, как с обычным COM-портом, стороны
>микроконтроллера, а не трахаться с драйверами.

Вы бы по первой ссылке сходили, что давал выше человек, там на странице
есть пример, PowerSwitch кажись называется, так вот, там тоже не нужно
ничего писать, драйвер есть готовый, работает в userspace моде и использует
libusb библиотеку, причен на avr тоже уже все написано, просто надо взять
API USB от аврки и подсунуть в свой код для Watchdog'а, только проблема в
том, что аврка должна иметь память для прошивки не менее 2Кб....

McMCC ★★★ ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

Guido Socher ещё когда тусил на LinuxFocus такими фигулинами на PIC'ах забавлялся. Чего он только сними вытворял :). От Watchdog timer'ов и контроллеров LCD дисплеев, до всяких роботов ищущих свет и других перделок. НИХРЕНА НЕ НОВО!

banifatich ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>Guido Socher ещё когда тусил на LinuxFocus такими фигулинами на PIC'ах забавлялся

вранье... он как раз на AVRках и баловался... как раз из-за этого я и начал с ними заморачиваться...

>От Watchdog timer'ов и контроллеров LCD дисплеев, а ты почитай что в статье написано: простой и дешевый, а к изделиям Guido Socher это не относится (его ватчдог с ЛЦД на борту был, к тому-же общался по rs232)

http://www.linuxfocus.org/Russian/May2002/article236.shtml

>НИХРЕНА НЕ НОВО!

че там про газификацию лужи говорят? %)

anonymous ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>вранье... он как раз на AVRках и баловался... как раз из-за этого я и начал с
>ними заморачиваться...

Ну если так дальше говорить:), то Watchdog он делал не на PIC'ах, а на NE555,
от которого я сразу отказался....

McMCC ★★★ ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

> И даже не на 8МГц, а на 1МГц. (Иди ты имеешь в виду внешний RC)

и как он у меня на 4Mhz работает?

> А даташит лучше почитай на atmega48/88/168

интересно... а то что на них оперативы в два раза меньше это фигня?

anonymous ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

> просто надо взять API USB от аврки и подсунуть в свой код для > Watchdog'а, только проблема в том, что аврка должна иметь > память для прошивки не менее 2Кб....

Оно конечно, только 2Кб чужого кода - это не так уж мало, если после сборки вдруг окажется, что оно почему-то не пашет :)

coleman ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>Оно конечно, только 2Кб чужого кода - это не так уж мало, если после сборки вдруг окажется, что оно почему-то не пашет :)

оно конечно тяжело 1000 строк просмотреть... причем из этой тыщи ~60-70 комментарии...

>2Кб чужого кода - это не так уж мало

а ты linux'ом пользуешся? скока там кода?

anonymous ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>и как он у меня на 4Mhz работает?

Да, я ошибся. Разница в том, что atmega8 частота выбирается фузами, а atmega48/88/168 - программно.

>интересно... а то что на них оперативы в два раза меньше это фигня?

Да. Это фигня.

atmega8 8K Code, 1K Data
atmega48 4K Code, 0.5K Data
atmega88 8K Code, 1K Data
atmega168 16K Code, 1K Data

Так что тебе тоже надо внимательней читать.

smartly ★★★ ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

сразу надо было сказать, что я с 48/88/168 не работал...

atmega48 4K Code, 0.5K Data вот это бросилось в глаза

на меге 8 8кб флэш... так что 48 и 168 немного не корректно считать багфиксами...

В то же время 16 многовато.

Хотя для этого 48 вполне должно хватить...

>а atmega48/88/168 - программно. пасибо за инфу... почитаю

anonymous ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

В диодном мостике два диода, которые на землю смотрят, лишние. Они никогда не используются, так как всегда в запертом состоянии. И диоды лучше бы германиевые (типа ГД5** или даже Д9*), на них падение напряжения ниже. Хотя в принципе и так падение напряжения небольшое, меньше 1В, вполне нормально.

ansky ★★★★★ ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

>В диодном мостике два диода, которые на землю смотрят, лишние.

Нет не лишние...Проиграй ситуацию с разной полярностью, тогда увидишь.

>И диоды лучше бы германиевые (типа ГД5** или даже Д9*), на них падение
>напряжения ниже. Хотя в принципе и так падение напряжения небольшое,
>меньше 1В, вполне нормально.

Ну может у кого-то такой раритет остался, у меня их точно не завалялось:).
А вообще, надо ставить не диоды, а мостик, который есть размером в
транзистор, типа в корпусе TO92...

P.S. В схеме есть одна неточность, светодиоды, я их не смог в Dia повернуть
на 180, так что учтите это, если у кого то еще возникнут притензии:)...

McMCC ★★★ ()

Re: Micro Watchdog timer на микроконтроллере PIC16F630 для PC.

> USB варианты даже не рассматривались из-за дороговизны их реализации.

Сейчас уже много дешевых PIC'ов с поддержкой USB же есть.

init ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.