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

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

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

holland.9 писал(а):от такого включения все кнопки могут плавать, т.е. в зависимости от освещенности кнопка "sec" может стать "-" или "set"...
имхо фоторезистор, фотодиод или т.п. вешать на другой порт, благо их еще достаточно :)
Вы не правы. Кнопки подключены до фоторезистора, и замыкаются на землю, поэтому при их нажатии логика работы вообще не меняются. Единственно надо подправить в программе, чтоб она различала не 7 уровней а 8.
А по поводу свободный портов - я плохо разбираюсь в микроконтроллерах, но помойку все выводы цифровые, а аналоговый только один. Или я не прав?
holland.9 писал(а):только как это программно реализовать? вводить псевдоиндикацию (с пустым экраном)?
Это то как раз самое простое. уменьшить длительность импульсов на выводах 2-5 микроконтроллера.

Для настройки порога срабатывания можно добавить подстроечный резистор.

Изображение
Последний раз редактировалось neon-f Вс янв 24, 2010 12:24:10, всего редактировалось 1 раз.
Реклама
Аватара пользователя
Danko
Сверлит текстолит когтями
Сообщения: 1287
Зарегистрирован: Пн окт 13, 2008 11:45:54
Откуда: РФ, Крым, г.Бахчисарай
Контактная информация:

Сообщение Danko »

в меге АЦП один но там есть мультиплексор (своего рода галетный переключатель).
в функции:

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

read_adc(unsigned char adc_input)
adc_input задает номер входа (от 0 до 5) ноги 23,24...28

В схеме есть свободные три ноги для АЦП. Памяти свободной хватает. Ноги свободные есть т.е. есть место для расширения функций часов.

Единственное что может помешать это привязка к определенному типу фоторезистора (др. датчика света (освещенности)).

Т.е. для каждого типа фотодатчика нужно подбирать свои номиналы обвязки либо вешать подстроечники.

Програмно регулировать будет не очень удобно: подцепил фоторезистор, а на экране пусто как при этом выставлять параметры.


По приведенной свыше схеме могу сказать одно: в программе обработки кнопок главное не напряжение, а соотношение напряжений т.е первая кнопка садит вход на землю, вторая рубит напряжение пополам, третья 2/3 напряжения, 3/4, 4/5 и т.д. Ненажатая кнопка это 100 напряжения, а по приведенной схеме это сколько будет?

Да кстати сопротивление фоторезистора сколько Ом ?
Первое, что привлекает в программировании, объяснить просто: ты говоришь компьютеру что то сделать, и он это делает. Безошибочно. Всегда. Без возражений.
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
Реклама
Аватара пользователя
Barbudas
Встал на лапы
Сообщения: 100
Зарегистрирован: Ср дек 23, 2009 10:52:30
Откуда: Средний Урал

Сообщение Barbudas »

Danko, посмотри в личку. Как у тебя запитаны индикаторы в часах на Меге16? У них ведь разное колличество светодиодов в сегментах и точках.
Мне казалось, я бегу полем
На не чующих травы лапах…
yurijI
Открыл глаза
Сообщения: 76
Зарегистрирован: Пт фев 23, 2007 11:48:36

Сообщение yurijI »

Danko писал(а):
neon-f писал(а):наверное точку данко тоже выводит в динамике, и привязал её ко второму разряду.
Не наверное, а совершенно верно.

Только вот из даташника не совсем понятно: точки в разрядах нарисованы, а к какой ножке подпаяны ?

Вывод для UC и LC есть, а для остальных точек?
Доброго здравия Danko
А точек там и нет, там только UC и LC на 3 пине....
Реклама
Эиком - электронные компоненты и радиодетали
neon-f
Потрогал лапой паяльник
Сообщения: 392
Зарегистрирован: Сб дек 12, 2009 02:15:45

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

Danko писал(а):в меге АЦП один но там есть мультиплексор (своего рода галетный переключатель).
Так это здорово. Я думал ацп жёстко привязан к одной ноге.
Danko писал(а):Единственное что может помешать это привязка к определенному типу фоторезистора (др. датчика света (освещенности)). Т.е. для каждого типа фото датчика нужно подбирать свои номиналы обвязки либо вешать подстроечники.
Схема получается простая. берем фоторезистор любой доступный, вешаем его на свободную ногу меги и землю, берем подстроечник номиналом равным темновому сопротивлению фоторезистора, и вешаем его на плюс питания и туже ногу меги. Пишем программу которая при напряжении на этой ноге > 50% уменьшает скважность импульсов на выводах 2-5 микроконтроллера.
Настройка фото датчика такая - при освещении, (при котором мы хочим чтоб уменьшалась яркость), крутим подстроечник, до срабатывания фотодатчика( падения яркости табло).
Все. Никакой привязки, можно применять ОБСАЛЮТНО любые фоторезисторы.
Danko писал(а):Програмно регулировать будет не очень удобно: подцепил фоторезистор, а на экране пусто как при этом выставлять параметры.
Так до нуля и не нужно. В большинстве случаев достаточно даже двух уровней - 100% и 50% например.
Danko писал(а):Да кстати сопротивление фоторезистора сколько Ом ?
Пробежался по интернету, сопротивление фоторезисторов - от 37 Ком до 100 Мом(в полной темноте). У освещенных в несколько раз меньше. У некоторых моделей на несколько порядков меньше.
Реклама
Аватара пользователя
headshotbacs
Вымогатель припоя
Сообщения: 641
Зарегистрирован: Пт ноя 28, 2008 20:34:39
Откуда: Краматорск

Сообщение headshotbacs »

Вот такой вот удобный блок питания для этих часиков
Вложения
Power.gif
Блок питания
(5.82 КБ) 1992 скачивания
Последний раз редактировалось headshotbacs Чт янв 07, 2010 21:56:27, всего редактировалось 1 раз.
Реклама
Аватара пользователя
Секретный кот
Поставщик валерьянки для Кота
Сообщения: 2106
Зарегистрирован: Ср сен 17, 2008 14:32:15
Откуда: Старые Васюки
Контактная информация:

Сообщение Секретный кот »

Какой же он двуполярный? :lol:
Даже остановленные часы два раза в сутки показывают правильное время.
Аватара пользователя
headshotbacs
Вымогатель припоя
Сообщения: 641
Зарегистрирован: Пт ноя 28, 2008 20:34:39
Откуда: Краматорск

Сообщение headshotbacs »

Да уж это точно, но зато к часам он идеально подходит.
Аватара пользователя
tipoya
Открыл глаза
Сообщения: 79
Зарегистрирован: Ср дек 30, 2009 18:36:00
Откуда: БЕЛАРУСЬ

Сообщение tipoya »

headshotbacs писал(а):Вот такой вот удобный блок питания для этих часиков
А не страшно без развязки?
Аватара пользователя
Danko
Сверлит текстолит когтями
Сообщения: 1287
Зарегистрирован: Пн окт 13, 2008 11:45:54
Откуда: РФ, Крым, г.Бахчисарай
Контактная информация:

Сообщение Danko »

Если корпус и все остальное диэлектрики то для человека не страшно.

Лично я использую блок питания для часов: блок питания антены типа "сушилка" у нас на рынке стоит 17 гривен. Внутри транс, диодн.мост, пара кандёров и 78L12 на выходе.

Как говорится "Дешево и сердито".
Первое, что привлекает в программировании, объяснить просто: ты говоришь компьютеру что то сделать, и он это делает. Безошибочно. Всегда. Без возражений.
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
Ilnur
Встал на лапы
Сообщения: 128
Зарегистрирован: Вс мар 22, 2009 15:10:13

Сообщение Ilnur »

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

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

Народ, у кого датчик температуры подключен длинными проводами, расскажите как у вас с помехоустойчивостью. не было ли случаев пробоя контролера от наводок, и статического напряжения???
У меня 3 метра по улице+метрв помещения. Хочется сделать понадежней, а не менять контролер после грозы например. Полазил по инету, нашел два способа "защищенного" подключения датчика(см вложение). Как думаете, надо ли, и если надо, то какой вариант лучьше?
вариант со стабилитронами наверное поинтересней?
Вложения
.JPG
(100.2 КБ) 1715 скачиваний
Rv
Встал на лапы
Сообщения: 82
Зарегистрирован: Чт ноя 29, 2007 13:23:32

Сообщение Rv »

У меня сделан первый вариант с диодами.Работает шесть лет,комната-чердак-улица на 8м.кабель 2Х0,12 в экране проблем небыло
kolobok0
Грызет канифоль
Сообщения: 296
Зарегистрирован: Ср дек 30, 2009 09:55:39

Сообщение kolobok0 »

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

http://www.elin.ru/1-Wire/?topic=components8

по поводу помех.
При правильном сканировании датчика, дальность как правило составляет несколько десятков-сотен метров по пром зоне (сильные электромагнитные помехи - пусковые рэле, электродвигатели и иже) с обычной телефонной лапшой. Т.е. первая рекомендация - правильность работы с протоколом. Вторая - если уж сильно невмоготу - читаем даташит и внимательно смотрим на схемы где указан нагрузочный резистор. В некоторых даташитах видим что он стоит _после_линии_ около датчика. Именно так и ставим, чисто по даташиту. Такое включение убирает помехи на ура.
третье - проверять по контрольной сумме сами данные (ну почти все датчики это позволяют делать ;) )
четвёртая - увеличивать помехозащищённость кабеля (можно ставить сетевой и т.п.)

пробоев не наблюдалось (партия за 4 года около 4-5 тысяч изделий. кол-во датчиков в изделиях от 3 до 6).
а вот сбои и подыхание самих датчиков - хотелось бы пореже :)
симпотматика:
биения температуры в однородной среде, более чем на 2-3 градуса.
полностью уход в себя после несколько суток работы.


удачи вам
(круглый)
neon-f
Потрогал лапой паяльник
Сообщения: 392
Зарегистрирован: Сб дек 12, 2009 02:15:45

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

Спасибо большое. Т.е. опасность накопления статического электричества - надумана? можно просто включить по типовой схеме (один подтягивающий резистор 4,7к на +5, около самого датчика) и все?
И еще. датчики в ваших изделиях проходят по улице, или только в закрытых помещениях. У меня есть несколько компов на обслуживании, которые подключены к интернету по телефонной линии имеющей небольшой участок по воздуху. Так вот, после грозы, очень часто приходится менять модемы.
kolobok0
Грызет канифоль
Сообщения: 296
Зарегистрирован: Ср дек 30, 2009 09:55:39

Сообщение kolobok0 »

neon-f писал(а):.. можно просто включить по типовой схеме (один подтягивающий резистор 4,7к на +5, около самого датчика) и все?.. датчики в ваших изделиях проходят по улице, или только в закрытых помещениях....
если пройти по ссылке, то там есть описание ds9503. его и надо ставить как буффер между датчиком и схемой.

датчики стоят в изделиях. корпус - металл. сами изделия могут и на улице - пофигу. если линия до датчика по улице - то думаю ещё нужно копнуть защиту воздушных низковольтных линий. Думаю стандартные рекомендации для таких линий - тут будут уместны.

вообще описанное включение прошло сертификацию по европейскому стандарту защиты. Насколько будет жить в грозу - хз.

удачи Вам
(круглый)
ЗЫ
Возможно, как альтернатива - у датчика(ов) свои мозги локально + RS485 для связи с основным блоком. Как следствие - легко маштабируемое решение (если необходимо более чем один подключить) - меньше проводов.
Аватара пользователя
Barbudas
Встал на лапы
Сообщения: 100
Зарегистрирован: Ср дек 23, 2009 10:52:30
Откуда: Средний Урал

Часы на Mega16

Сообщение Barbudas »

Уважаемые коты, хелпа прошу. Привязка портов в прошивке (hex) не соответствует схеме часов. На индикаторах белиберда полная. В листинге с прошивкой не могу сообразить где привязка портов к сегментам индикатора. Если бы было на ассемблере, то может быть и допёр. Подскажите как привести всё в порядок.
При сборке выяснились следующие проблемы:
1. Число светодиодов в сегментах 2,3" и 1" индикаторов, что я применил, разное. У 2,3" в сегментах по 4 последовательно включенных диода и по два в точках, а у 1" по два последовательно включенных в сегментах и по одному в точке. Поэтому питать их надо от разной напруги. Большие от 12, малые от 9 вольт(хотя и от пяти 1" неплохо работают).
2. Большие индикаторы напрочь отказываются светиться от меги напрямую. Светятся только точки и не зажигаются сегменты. Может кто подскажет причину. Danko советует те и другие индикаторы подключать через ULN2803.
Исходя из вышенаписаного, плата была перекроена (добавлены две ULN2803 и два стабилизатора на 9 и 5V) и изготовлена заново. Если кого заинтересует могу выложить. Платки индикаторов остались без изменений. Теперь всё тормозится только прошивкой. Danko поправить собирался, да видно со временем туго. Жаль, если выходные пройдут впустую. :cry:
Мне казалось, я бегу полем
На не чующих травы лапах…
neon-f
Потрогал лапой паяльник
Сообщения: 392
Зарегистрирован: Сб дек 12, 2009 02:15:45

Re: Часы на Mega16

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

Barbudas писал(а):Уважаемые коты, хелпа прошу. Привязка портов в прошивке (hex) не соответствует схеме часов. На индикаторах белиберда полная. В листинге с прошивкой не могу сообразить где привязка портов к сегментам индикатора. Если бы было на ассемблере, то может быть и допёр. Подскажите как привести всё в порядок.
Про какую прошивку и схему вы говорите? если про ту что в первом сообщении, то её повторили раз 100 в железе. Я например ничего не понимаю в программировании, но двое часов изготовленных мной завелись с первого раза. Ищите проблему у себя. "Полная билиберда" кстати будет когда вместо индикатора с ОА ставишь с ОК
Barbudas писал(а): При сборке выяснились следующие проблемы:
1. Число светодиодов в сегментах 2,3" и 1" индикаторов, что я применил, разное. У 2,3" в сегментах по 4 последовательно включенных диода и по два в точках, а у 1" по два последовательно включенных в сегментах и по одному в точке. Поэтому питать их надо от разной напруги. Большие от 12, малые от 9 вольт(хотя и от пяти 1" неплохо работают).
Запитывать индикаторы можете от любого удобного вам напряжения, главное выставить ток правильный. В вашем случае целесообразно 2,3" питать 9-12вольт, 1" от 5 вольт.
Barbudas писал(а):2. Большие индикаторы напрочь отказываются светиться от меги напрямую. Светятся только точки и не зажигаются сегменты. Может кто подскажет причину. Danko советует те и другие индикаторы подключать через ULN2803.
а с какой радости у вас должны светится 4 последовательно включонных светодиода, да еще наверное и с ограничительным резистором от 5 вольт???
Barbudas писал(а):Исходя из вышенаписаного, плата была перекроена (добавлены две ULN2803 и два стабилизатора на 9 и 5V) и изготовлена заново. Если кого заинтересует могу выложить. Платки индикаторов остались без изменений. Теперь всё тормозится только прошивкой. Danko поправить собирался, да видно со временем туго. Жаль, если выходные пройдут впустую. :cry:
Вот тут наверное и кроется ваша основная ошибка. Вы взяли 2(!) ULN2803, вторую я так понимаю поставили вместо транзисторов на управление разрядами. А ULN2803 - инвертирует сигнал!!! замените её на отдельные транзисторы, и все заработает
Аватара пользователя
Barbudas
Встал на лапы
Сообщения: 100
Зарегистрирован: Ср дек 23, 2009 10:52:30
Откуда: Средний Урал

Сообщение Barbudas »

Я говорю о часах на Меге16. Здесь, на форуме, выложена только одна прошивка на этот проект. Я не читал, чтобы кто-либо их тут повторил.
Индикаторы 2,3" Запитывал от 12V, светятся только точки. Сами индикаторы исправны, проверено.
Я взял две ULN2803, входы запараллелил, а на выходы подключил - на одну 4 индикатора 2,3" запитанных от 12V, на другую 2х3 1" индикатора запитанных от 9V. В чём тут ошибка? Ключи управляющие индикаторами (10 транзисторов) я не трогал.
У меня, к сожалению нет симулятора, чтобы залить в него прошивку и поизголяться, пардон..
Мне казалось, я бегу полем
На не чующих травы лапах…
Аватара пользователя
headshotbacs
Вымогатель припоя
Сообщения: 641
Зарегистрирован: Пт ноя 28, 2008 20:34:39
Откуда: Краматорск

Сообщение headshotbacs »

Hichkok писал(а):Danko Результат работы вашей программы и моей реализации в железе.
Спасибо за труд и с наступающим НОВЫМ ГОДОМ !!!
Скинь фотки в качестве. Хочу на твоей печатке повторить часы. И схемку выложи по которой печаточку делал. Какого типоразмера СМД? Спасибо.
Ответить

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