Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)

Обсуждаем контроллеры компании Atmel.
Аватара пользователя
odesasha
Прорезались зубы
Сообщения: 237
Зарегистрирован: Пт фев 12, 2010 14:02:22
Откуда: Одесса

Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)

Сообщение odesasha »

Кстати , Ваша программа может быть легко доработана с учетом вывода доп. информации без измения схемы (на голые индикаторы , конечно) .
Аватара пользователя
odesasha
Прорезались зубы
Сообщения: 237
Зарегистрирован: Пт фев 12, 2010 14:02:22
Откуда: Одесса

Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)

Сообщение odesasha »

Danko писал(а):odesasha, пожалуйста повнимательней с кнопкой Отправить.

И второе: выводы МК в Z-состояние не переводятся.



Прекрасно переводятся и можно подключать два AVR параллельно . если по 2-м ногам сделать программное
согласование доступа к общей шине (индикатору ) .
См . для начала http://microchipinf.com/articles/45/144
Не понимаю почему никто не делает , например , 2 термометра на ATTiny2313 и независимые от них часы -будильник .
Индикатор общий и термометры могут без сбоев 1-ware считывать данные , а выводить на индикатор по сигналу основного AVRа
Наверное так даже проще программировать .?
Аватара пользователя
odesasha
Прорезались зубы
Сообщения: 237
Зарегистрирован: Пт фев 12, 2010 14:02:22
Откуда: Одесса

Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)

Сообщение odesasha »

[quote="Danko"]Нет. По нескольким причинам.

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

Скажем я планирую сделать вариант с мега88.

Что Вы имели ввиду "С использованием зарядного или хоть без него" я вообще не понимаю.

В ds1202 входит программируемое Зарядное для батареи . См . стр . 9 даташита , может его можно как-то применить ,
если использовать старую батарею от Мабылы .
Вложения
ds1302.pdf
(212.23 КБ) 941 скачивание
Аватара пользователя
Danko
Сверлит текстолит когтями
Сообщения: 1287
Зарегистрирован: Пн окт 13, 2008 11:45:54
Откуда: РФ, Крым, г.Бахчисарай
Контактная информация:

Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)

Сообщение Danko »

Я бы хотел поставить точку.

DS1302 я применять не буду и обсуждать что подключается и как подключается я не буду.

И еще:
odesasha, посмотрите как оформляются цитаты. Это не каприз. Вы сами попробуйте прочесть, то что пишите и раборать где Ваш текст, а где цитата.

В этой ветке ведется обсуждение моих часов, а учить меня о том как переводить выводы AVR в Z-состояние не нужно.

Есть идеи пишите.
Первое, что привлекает в программировании, объяснить просто: ты говоришь компьютеру что то сделать, и он это делает. Безошибочно. Всегда. Без возражений.
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
vin_07
Нашел транзистор. Понюхал.
Сообщения: 157
Зарегистрирован: Чт авг 27, 2009 16:19:45

Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)

Сообщение vin_07 »

По будильникам, в последней схеме порты PD5, PD6 в некотором смысле дублируют друг друга. Есть пожелание, PD6 задействовать для управления чем-то внешним - по будильнику 1 включать, а по второму выключать.
Чтобы освободить еще порт, если потребуется, может отказаться от индивидуальной индикации включения каждого будильника? Достаточно показывать, что какой-то из них включен. Или модулировать числом вспышек :)
Аватара пользователя
Danko
Сверлит текстолит когтями
Сообщения: 1287
Зарегистрирован: Пн окт 13, 2008 11:45:54
Откуда: РФ, Крым, г.Бахчисарай
Контактная информация:

Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)

Сообщение Danko »

Как вам вариант с двумя схемами часов.

Первая базовая: из функций будильник и один выход на пищалку т.е. самый минимум.

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

Универсальность схемы остается. Желаешь получить доп функции подпаивай доп.м/сх.

А вообще если вопрос в освобождении портов.

А зачем их освобождать? для того чтобы бесконечно что то добавлять или переделывать. Лично мое мнение в схеме нужно поставить точку большую и жирную и начать что называется с чистого листа т.е. взять мега88 (а лучше мега168) определится какие функции нужны, какие функции главные, а какие второстепенные. Схему нарисовать с учетом удобства трассировки платы.
Первое, что привлекает в программировании, объяснить просто: ты говоришь компьютеру что то сделать, и он это делает. Безошибочно. Всегда. Без возражений.
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
Аватара пользователя
ВНН
Потрогал лапой паяльник
Сообщения: 347
Зарегистрирован: Сб дек 13, 2008 09:03:43
Откуда: г.Советская Гавань

Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)

Сообщение ВНН »

Danko я только за новый проект а (Mega8+DS1307+DS18B20+4LED) как на hard так и soft уровнях можно считать законченым .Проект получился на уровне.Спасибо еще раз и не один.
1 atmega168
2 LED 6шт
3 IR
4 Градусы (?давление ?влажность)хотя цены кусают bmp085,sht10-15
Пора заводить новую тему
Я тоже белый и пушистый и также как и Вы ловлю мышей.
С уважением ВНН.
Аватара пользователя
Danko
Сверлит текстолит когтями
Сообщения: 1287
Зарегистрирован: Пн окт 13, 2008 11:45:54
Откуда: РФ, Крым, г.Бахчисарай
Контактная информация:

Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)

Сообщение Danko »

шесть разрядов ?

я не думал, но почему бы и нет.
Первое, что привлекает в программировании, объяснить просто: ты говоришь компьютеру что то сделать, и он это делает. Безошибочно. Всегда. Без возражений.
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
sergo123
Родился
Сообщения: 15
Зарегистрирован: Чт апр 22, 2010 14:16:06

Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)

Сообщение sergo123 »

Danko, а можешь на последок приделать кухонный таймер к Mega8+DS1307+DS18B20+4LED, очень надо для кухни...
vin_07
Нашел транзистор. Понюхал.
Сообщения: 157
Зарегистрирован: Чт авг 27, 2009 16:19:45

Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)

Сообщение vin_07 »

Danko писал(а):Как вам вариант с двумя схемами часов.
Вторая включает в себя доп.регистр
ну не знаю. это лучше для другого проекта. а вот управление нагрузкой будильниками да еще просьба серго123 о таймере обратного счета были бы кстати, как точка в проекте. Спасибо.
Аватара пользователя
Seal
Сверлит текстолит когтями
Сообщения: 1122
Зарегистрирован: Чт мар 05, 2009 19:51:55
Откуда: Дырасполь

Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)

Сообщение Seal »

Респект Danko за проделанную работу по этим часикам !!!
На форуме не так часто встретишь настолько гибкого устройства с авторской поддержкой .
Раз тема близка к закрытию, хотел-бы уважаемого Danko свою очередь попросить сделать дополнительную индикацию знаков температуры - и +
Освобождать порты для этого вовсе нет необходимости, можно использовать сегмент Н первого и четвертого разрядов. Зажженной точке первого разряда соответствует минус, а четвертого разряда индикация +

Не сочтите пожалуйста мою просьбу за наглость, но в программировании я чайник.
ученые долго думали,в чем измерять частоту.... С тех пор и пишут Hz
neon-f
Потрогал лапой паяльник
Сообщения: 392
Зарегистрирован: Сб дек 12, 2009 02:15:45

Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)

Сообщение neon-f »

Danko ну тебе и надавали дембельских аккордов :)))
А часики действительно зачетные, и популярные. может даже лучшие из классических четырех знаковых в русском интернете. Но усложнять их дальше не стоит, пусть остаются как есть. А все хотелки (и свои и форумчан) воплотить в новом проекте, где сразу заложить мегу побольше да поногастей.

Кстати в проекте есть один момент на который вначале обращали внимание, а потом как то все смирились. Это нечеткое срабатывание кнопок. Не думал в чем причина такого срабатывания?? А что если попробовать просто расширить диапазон АЦП который соответствует нажатой кнопке например вот так (для 5 кнопок)? Может виноват разброс параметров резисторов... у меня например очень плохо срабатывает кнопка SET, а остальные более-менее сносно.

Код: Выделить всё

   if                      (key_adc <=   3)  return KEY_PLUS;  // = 0 
   if ((key_adc >= 100) && (key_adc <= 148)) return KEY_MINUS; // = 1/2 от 255
   if ((key_adc >= 150) && (key_adc <= 178)) return KEY_SEC;   // = 2/3 от 255
   if ((key_adc >= 180) && (key_adc <= 198)) return KEY_SET;   // = 3/4 от 255
   if ((key_adc >= 200) && (key_adc <= 248)) return KEY_K;     // = 4/5 от 255
Аватара пользователя
odesasha
Прорезались зубы
Сообщения: 237
Зарегистрирован: Пт фев 12, 2010 14:02:22
Откуда: Одесса

Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)

Сообщение odesasha »

У меня та же проблема с кнопками , я поставил кондер на 1нф на землю со входа АЦП - стало намного лучше .
На датчики сделал паразитное питание по схеме см. вложение .
Вложения
20052010(002).jpg
Схема паразитного питание на DS18B20
(168.24 КБ) 1096 скачиваний
Аватара пользователя
odesasha
Прорезались зубы
Сообщения: 237
Зарегистрирован: Пт фев 12, 2010 14:02:22
Откуда: Одесса

Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)

Сообщение odesasha »

ВНН писал(а):Danko я только за новый проект а (Mega8+DS1307+DS18B20+4LED) как на hard так и soft уровнях можно считать законченым .Проект получился на уровне.Спасибо еще раз и не один.
1 atmega168
2 LED 6шт
3 IR
4 Градусы (?давление ?влажность)хотя цены кусают bmp085,sht10-15
Пора заводить новую тему

с атмегой 168 (28 грн.) будут те же проблемы с 28-ю ногами -их скоро может не хватить .
Мне кажется , что большую перспективу дает применение Меги 32 (40 грн ), или дешевой Меги 16 (28 грн.) . Кроме того можно
использовать второй генератор и Jtag не забирая основных выводов .
Р.S В скобкак самые низкие розничные цены в UAh ( гривня ) .
Аватара пользователя
ВНН
Потрогал лапой паяльник
Сообщения: 347
Зарегистрирован: Сб дек 13, 2008 09:03:43
Откуда: г.Советская Гавань

Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)

Сообщение ВНН »

Уже столько написано про работу Клавиатуры при помощи АЦП.
1 Подбор Rx не более 1% (ненравится , замеряем значения перещитываем вносим изменения компилим)
2 Подбор самих кнопок (часто встречаются сопротивление в замкнутом состоянии 100 и более ОМ)
Мной собрано 4 варианта часов и кнопки везде работают нормально (просто нужно следовать правилам)
При данных весовых резисторах коэфициенты у DANKO оптимальны.

По поводу нехватки ног у М168 и использовании М16 М32 несогласен один из вариантов 595 регистры + ключи или вообще
LED драйвера хоть статика хоть динамика .Кроме того количество прерываний у М168 поболе (как вариант IR выносные датчик(и) через RF канал(ы) )вариаций много.
Кроме того в некоторых регионах исчезают М8 думается это ждет и М16 и М32
Как только DANKO откроет новую тему ТАМ и обсудим ЧТО ЗАЧЕМ и ПОЧЕМ
Удачи
Я тоже белый и пушистый и также как и Вы ловлю мышей.
С уважением ВНН.
Аватара пользователя
odesasha
Прорезались зубы
Сообщения: 237
Зарегистрирован: Пт фев 12, 2010 14:02:22
Откуда: Одесса

Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)

Сообщение odesasha »

Можно , в принципе , разбить все на 2 блока , связав их по UART . Один (внизу ) -основной с часами , кнопками ,
контрольным LCD дисплейчиком и т.д. А второй- индикаторный , датчики и т.п. -какой кому надо . Связь по 3-м проводам c UART раз в секунду с упреждением по времени в случае сбоя и повтора . Так , примерно , делают , или надо делать, в уличных часах .
Можно ,вообще сделать связь по кабелю питания типа 1-ware или с поднесущей как в RC-5 . Тоже идея!
Аватара пользователя
kip96
Держит паяльник хвостом
Сообщения: 965
Зарегистрирован: Ср авг 26, 2009 08:24:50
Откуда: 1300км от Пупа

Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)

Сообщение kip96 »

С кнопками у меня тоже проблема проявляется. И ощущение "дребезга" на кнопке"set". Бывает проскакивает режимы, и приходится Всё по кругу. Ещё вопрос- как точно выставить время, по "шестому сигналу" так сказать?
Все делают ошибки, только мудрецы - новые, а дураки - старые.
Аватара пользователя
odesasha
Прорезались зубы
Сообщения: 237
Зарегистрирован: Пт фев 12, 2010 14:02:22
Откуда: Одесса

Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)

Сообщение odesasha »

kip96 писал(а):С кнопками у меня тоже проблема проявляется. И ощущение "дребезга" на кнопке"set". Бывает проскакивает режимы, и приходится Всё по кругу. Ещё вопрос- как точно выставить время, по "шестому сигналу" так сказать?

Кондер 0,5-1нф на землю со входа АЦП улучшает , но не устраняет -делает терпимо .
Аватара пользователя
odesasha
Прорезались зубы
Сообщения: 237
Зарегистрирован: Пт фев 12, 2010 14:02:22
Откуда: Одесса

Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)

Сообщение odesasha »

neon-f писал(а):Danko ну тебе и надавали дембельских аккордов :)))
А часики действительно зачетные, и популярные. может даже лучшие из классических четырех знаковых в русском интернете. Но усложнять их дальше не стоит, пусть остаются как есть. А все хотелки (и свои и форумчан) воплотить в новом проекте, где сразу заложить мегу побольше да поногастей.

Кстати в проекте есть один момент на который вначале обращали внимание, а потом как то все смирились. Это нечеткое срабатывание кнопок. Не думал в чем причина такого срабатывания?? А что если попробовать просто расширить диапазон АЦП который соответствует нажатой кнопке например вот так (для 5 кнопок)? Может виноват разброс параметров резисторов... у меня например очень плохо срабатывает кнопка SET, а остальные более-менее сносно.

Код: Выделить всё

   if                      (key_adc <=   3)  return KEY_PLUS;  // = 0 
   if ((key_adc >= 100) && (key_adc <= 148)) return KEY_MINUS; // = 1/2 от 255
   if ((key_adc >= 150) && (key_adc <= 178)) return KEY_SEC;   // = 2/3 от 255
   if ((key_adc >= 180) && (key_adc <= 198)) return KEY_SET;   // = 3/4 от 255
   if ((key_adc >= 200) && (key_adc <= 248)) return KEY_K;     // = 4/5 от 255



Чтобы было правильно с АЦП , если я не ошибаюсь , надо делать ТИХОЕ ПРЕОБРАЗОВАНИЕ несколько раз ,а потом
усреднять результат - тогда уж тотно будет более-менее правильный результат однозначно .
Аватара пользователя
Danko
Сверлит текстолит когтями
Сообщения: 1287
Зарегистрирован: Пн окт 13, 2008 11:45:54
Откуда: РФ, Крым, г.Бахчисарай
Контактная информация:

Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)

Сообщение Danko »

Во первых: всем большое спасибо за участие в проекте и за поддержку. Без Ваших вопросов и предложений часы так и остались бы в первоначальной редакции.

Во вторых: закрытие проекта не означает закрытие ветки. Не будет новых функций, как в програмной, так и в аппаратной части часов, но исправление ошибок и улучшение работы некоторых функций будет.

Что касается кнопок: мне самому не нравится работа кнопок. В этой части работа над проектом не прекратится.

Что касается нового проекта: нужно найти компромисс между большим "старым" МК (мега16 и мега32) и маленьким и перспективным (мега88/168).

Лично я больше склоняюсь к мега88/168 + регистр т.к. большое количество ног у МК не дает большого преимущества, а добавление новых функций можно с легкостью произвести добавлением еще одного регистра. Например базовая конфигурация 4 разряда, но добавив регистр получаем еще несколько разрядов при этом програма одна на оба варианта.

sergo123, добавлять таймер в часы я буду, но наше с Вами личное общение посредством ЛС не закрывается.
Первое, что привлекает в программировании, объяснить просто: ты говоришь компьютеру что то сделать, и он это делает. Безошибочно. Всегда. Без возражений.
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
Ответить

Вернуться в «AVR»