Страница 1 из 1
Программа для простого таймера-сторожа на МК
Добавлено: Пт май 21, 2010 07:50:59
Vet-RX
Здравствуйте! Вопрос к бывалым Котам.
Помогите с программой для простого таймера-сторожа.
алгоритм работы такой: при подаче питания таймер начинает отсчёт какого то промежутка времени
(10 мин), на выводе 6 МК строго лог. 0
Если за этот период времени на базу транзистора приходит импульс, таймер начинает отсчёт времени опять.
Если же импульса не было то МК включает реле на 0,5-1 сек, и снова начинает отсчет.
Язык программирования BasCom или C, я пока еще в программировании дуб

, но стараюсь научиться. Заранее спасибо!
И еще МК может быть другим.
Re: Программа для простого таймера-сторожа на МК
Добавлено: Пн май 24, 2010 22:26:57
BOB51
попробуй на ассемблере

Re: Программа для простого таймера-сторожа на МК
Добавлено: Ср май 26, 2010 10:20:51
kybertech
Vet-RX писал(а):Здравствуйте! Вопрос к бывалым Котам.
Помогите с программой для простого таймера-сторожа.
алгоритм работы такой: при подаче питания таймер начинает отсчёт какого то промежутка времени
(10 мин), на выводе 6 МК строго лог. 0
Если за этот период времени на базу транзистора приходит импульс, таймер начинает отсчёт времени опять.
Если же импульса не было то МК включает реле на 0,5-1 сек, и снова начинает отсчет.
Язык программирования BasCom или C, я пока еще в программировании дуб

, но стараюсь научиться. Заранее спасибо!
И еще МК может быть другим.
Скинь в личку мыло или аську! С программой помогу !
Re: Программа для простого таймера-сторожа на МК
Добавлено: Ср май 26, 2010 10:42:58
ARV
господи, да какой там алгоритм, какая програ!? 2 микро-переделки в схеме (базу транзисторного ключа реле посадить дополнительно резистором на землю, а "синхронизирующий" транзистор подключить к входу сброса контроллера) и программа становится такой:
Код: Выделить всё
int main(void){
// изначально на базе ключа реле 0 из-за резистора
DDRB = 1; // теперь на базе 0, т.к. на выходе МК тоже 0
while(1){ // бесконечно (если не придет сброс) делаем следующее:
for(int i=0; i<10; i++){ // ждем 10 минут - тупо циклом
delay_ms(60000);
}
PORTB = 1; // после задержки выдаем на ключ релюшки единичку
delay_ms(1000); // в течение 1 секунды
PORTB = 0; // после чего опять нолик
// если сброс так и не пришел - повторяем снова и снова, а если пришел,
// то где бы мы ни находились в программе - все начнется сначала
}
}
Re: Программа для простого таймера-сторожа на МК
Добавлено: Ср май 26, 2010 10:50:20
kybertech
ARV писал(а):господи, да какой там алгоритм, какая програ!? 2 микро-переделки в схеме (базу транзисторного ключа реле посадить дополнительно резистором на землю, а "синхронизирующий" транзистор подключить к входу сброса контроллера) и программа становится такой:
Код: Выделить всё
int main(void){
// изначально на базе ключа реле 0 из-за резистора
DDRB = 1; // теперь на базе 0, т.к. на выходе МК тоже 0
while(1){ // бесконечно (если не придет сброс) делаем следующее:
for(int i=0; i<10; i++){ // ждем 10 минут - тупо циклом
delay_ms(60000);
}
PORTB = 1; // после задержки выдаем на ключ релюшки единичку
delay_ms(1000); // в течение 1 секунды
PORTB = 0; // после чего опять нолик
// если сброс так и не пришел - повторяем снова и снова, а если пришел,
// то где бы мы ни находились в программе - все начнется сначала
}
}
Если все будет именно так как выглядит на схеме то полностью согласен ! Но мне кажеться на МК ещё какую нить задачу положат и сброс резетом делать будет нежелательно.
Re: Программа для простого таймера-сторожа на МК
Добавлено: Ср май 26, 2010 11:07:09
ARV
kybertech писал(а):Если все будет именно так как выглядит на схеме то полностью согласен ! Но мне кажеться на МК ещё какую нить задачу положат и сброс резетом делать будет нежелательно.
положить можно на все, в том числе и на сброс

Re: Программа для простого таймера-сторожа на МК
Добавлено: Ср май 26, 2010 11:22:35
kybertech
ARV писал(а):положить можно на все, в том числе и на сброс


Re: Программа для простого таймера-сторожа на МК
Добавлено: Пн май 31, 2010 01:05:42
Vet-RX
нет на МК других задач не будет, подождал 10 мин. если входного импульса нет, то включил реле и все с начала.
А вся эта затея для компьютера. Ночью качаю через торенты, и комп иногда зависает!

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

Re: Программа для простого таймера-сторожа на МК
Добавлено: Пн май 31, 2010 07:19:26
BOB51
совсем народ мысли лишился...
автоперезагрузку легче организовать при помощи программного обеспечения того же ПК- только там надо книжки почитать но уже по разделу компьютерных программ

Re: Программа для простого таймера-сторожа на МК
Добавлено: Пн май 31, 2010 09:08:45
truebest
Супервизор человеку нужен...Я как понимаю какой-то девайс за 10 минут должен послать импульс на супервизор, если он его не послал то рубим питалово и включаем вновь, как в том фильме (если я не вернусь через 10 мин взрывайте все нах) не ужели у вас такая мошьная нагрузка что вы реле применяете?
блять сначала написал потом тему прочитал...есть у меня подобная схема...
Re: Программа для простого таймера-сторожа на МК
Добавлено: Пн май 31, 2010 19:39:33
BOB51
"А вся эта затея для компьютера. Ночью качаю через торенты, и комп иногда зависает! вот и надо чудо девайс для авто перезагрузки. Вход подключить к светодиоду,
а релле параллельно кнопке ресет. "
ммдааа...
Выключить современный ПК с какой-нибудь WINью при помощи сетевого выключателя (или кнопкой reset) - по меньшей мере "синий экран" с автоматическим включением "скандиска" при последующем запуске
Этот фокус только под DOS и то при закрытых программах проходил - так можно и жестких дисков недосчитаться...
Бывают, правда, иногда и исключения - некоторые (крайне редко) нормально сеанс закрывают по reset, но это как большое исключение, а у других и этой волшебной кнопочки уже нет...
Для нормального отключения\перезагрузки надобно на клавиатуре последовательно несколько кнопочек нажать или мышей поводить(тоже раза три левую кнопку придушить прийдется).
Так что лучше и легче поискать специализированное ПО для данного случая иль какую-нибудь прогу нарисовать под сигнал от LPT или GAME входа...
Re: Программа для простого таймера-сторожа на МК
Добавлено: Вт июн 01, 2010 08:03:21
Vet-RX
Ну почему? Перезагрузку производим только если комп завис!! То есть чтоби не просыпаться ночью
и не нажимать кнопку ресет самому, все делает автоматика и не надо придумывать никаких программ для Windows и т. п.
Re: Программа для простого таймера-сторожа на МК
Добавлено: Вт июн 01, 2010 08:20:25
ARV
во-первых, если файловая система NTFS, то никакого синего экрана и т.п. эффектов не будет, во всяком случае их вероятность стремится к нулю.
во-вторых, если комп завис - то ему уже по барабану, будет хард-сброс или софт-перезагрузка, точнее, перезагрузки вообще не будет.
однако возникает вопрос: а чего он виснет-то? может, не там копаете?
Re: Программа для простого таймера-сторожа на МК
Добавлено: Вт июн 01, 2010 22:11:49
Vet-RX
Зависает по разному: бывает несколько раз на ночь, а бывает вообще ни разу. Сейчас сканирую диск с помощью HDDScan, может Windows какая то кривая

но это уже другая тема.
Re: Программа для простого таймера-сторожа на МК
Добавлено: Пт ноя 11, 2011 16:05:04
BOB51
змечание по поводу "непоняток" с ПК:
провести профилактическую чистку от пыли и грязи, включая и обратную сторону плат "материнки" и блока питания
заменить все даже чуток "вздувшиеся" конденсаторы на материнке, желательно "низкоимпедансными" и с вдвое большим напряжением
(касается практически всех плат на базе intel815e)
самого осенью задолбало... сначала порграммы начинают "выделываться", затем "виснет" причем совершенно бессистемно...
провел профилактику - вие исчезло!
