Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)
Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)
не , после запайки батарейки , прошил мегу....
батарейка не сьемная, с лепестками под пайку
батарейка не сьемная, с лепестками под пайку
- Ant-RG
- Вымогатель припоя
- Сообщения: 541
- Зарегистрирован: Ср май 05, 2010 20:47:56
- Откуда: Украина
- Контактная информация:
Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)
И что непомогло? прошивку другую заливали?
I'am a Rock N' Roll-Aholic
- pirog-ss-ov
- Встал на лапы
- Сообщения: 83
- Зарегистрирован: Вс янв 15, 2012 20:07:50
- Откуда: ДОМОДЕДОВО
Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)
прошивать надо без батарейки 

[url=https://nick-name.ru/nickname/id1291360/][img]https://nick-name.ru/forum2t0/PIROG-SS-OV.gif[/img][/url]
- Danko
- Сверлит текстолит когтями
- Сообщения: 1287
- Зарегистрирован: Пн окт 13, 2008 11:45:54
- Откуда: РФ, Крым, г.Бахчисарай
- Контактная информация:
Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)
А вот как раз нет.
В коде программы есть проверка на первый запуск программы и соответственно если производится первый запуск часов то программа записывает в память RTC так называемые "заводские" настройки.
Этот кусок кода есть и в часах на LED и на LCD на мега168.
Похоже стоит добавить другой код в программу для принудительной установки первоначальных настроек. При замене батарейки в памяти RTC появится "мусор" и единственным выходом будет перепрошивка EEPROM.
В коде программы есть проверка на первый запуск программы и соответственно если производится первый запуск часов то программа записывает в память RTC так называемые "заводские" настройки.
Этот кусок кода есть и в часах на LED и на LCD на мега168.
Похоже стоит добавить другой код в программу для принудительной установки первоначальных настроек. При замене батарейки в памяти RTC появится "мусор" и единственным выходом будет перепрошивка EEPROM.
Первое, что привлекает в программировании, объяснить просто: ты говоришь компьютеру что то сделать, и он это делает. Безошибочно. Всегда. Без возражений.
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
- Ant-RG
- Вымогатель припоя
- Сообщения: 541
- Зарегистрирован: Ср май 05, 2010 20:47:56
- Откуда: Украина
- Контактная информация:
Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)
Ну за то что затереть ЕЕпром надо я тоже писал 
I'am a Rock N' Roll-Aholic
- xorkrus
- Нашел транзистор. Понюхал.
- Сообщения: 151
- Зарегистрирован: Сб ноя 19, 2011 20:13:47
- Откуда: Тамбов
- Контактная информация:
Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)
Ant-RG писал(а):Перешейтесь затерев ЕЕпром, после прошивки отключите питание, вытащите батарейку секунд на 10 потом вставте назад и включайте часы.
Прошивку лучше скачайте заново.
Собрал часы на плате. Вместо C945, поставил PN2222. Засвет все равно остался, но пока не критичен...
Время после прошивки с очисткой еепрома... отлично!
выключил питание часов, подключил датчик температуры, включил... С000!
Как бороться с этой ерундой? Каждый раз шить не вариант же...
Демократии нет и не будет!
Государство - это я!
Государство - это я!
- Ant-RG
- Вымогатель припоя
- Сообщения: 541
- Зарегистрирован: Ср май 05, 2010 20:47:56
- Откуда: Украина
- Контактная информация:
Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)
DS1307 менять пробовали?
I'am a Rock N' Roll-Aholic
- Danko
- Сверлит текстолит когтями
- Сообщения: 1287
- Зарегистрирован: Пн окт 13, 2008 11:45:54
- Откуда: РФ, Крым, г.Бахчисарай
- Контактная информация:
Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)
xorkrus писал(а):Как бороться с этой ерундой? Каждый раз шить не вариант же...
У меня было что то подобное с первыми часами. После грозы слетела прошивка. За два года пару раз. Все вылечилось заменой МК.
Но не всегда МК виноват. Нужно проверить питание МК. У Вас электролит по питанию сильно большой стоит? Есть возможность проверить насколько плавно нарастает питание МК при включении?
BOD активирован?
Внешнюю систему сброса МК не подключали?
Первое, что привлекает в программировании, объяснить просто: ты говоришь компьютеру что то сделать, и он это делает. Безошибочно. Всегда. Без возражений.
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
- Nusik1975
- Электрический кот
- Сообщения: 1023
- Зарегистрирован: Чт мар 04, 2010 13:48:56
- Откуда: Недалеко от Тулы
Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)
На основе данных часов делаю сейчас часы в машину. Выглядеть они будут так:

Часики будут слева. Справа у меня уже сделан вольтметр.
Схема собрана на ключах-биполярниках (КТ361) и полевичках. В архиве, если кому нужно, схема часов с такими ключами. Плата почти целиком на SMD-компонентах. Если к внешнему виду корпуса у меня нет особых требований (как в данном случае-сама схема часов находится за приборной панелью машины), то я использую кабель-канал (короб) шириной 40 и высотой 25мм. Очень удобно-корпус готовится за 10 минут.
А сами индикаторы я смонтировал в свободном месте приборной панели, предварительно разобрав ее. Индикатор взял с общим анодом.
Печатная плата получилась размером 38х72 мм. Справа на печатной плате контактные площадки и отверстия под разъемы, которые мне попались под руку. Там можно переделать под то, что есть у вас, все подписано. Ведь индикатор будет подключаться к основной схеме при помощи жгута.
Часики будут слева. Справа у меня уже сделан вольтметр.
Схема собрана на ключах-биполярниках (КТ361) и полевичках. В архиве, если кому нужно, схема часов с такими ключами. Плата почти целиком на SMD-компонентах. Если к внешнему виду корпуса у меня нет особых требований (как в данном случае-сама схема часов находится за приборной панелью машины), то я использую кабель-канал (короб) шириной 40 и высотой 25мм. Очень удобно-корпус готовится за 10 минут.
А сами индикаторы я смонтировал в свободном месте приборной панели, предварительно разобрав ее. Индикатор взял с общим анодом.
Печатная плата получилась размером 38х72 мм. Справа на печатной плате контактные площадки и отверстия под разъемы, которые мне попались под руку. Там можно переделать под то, что есть у вас, все подписано. Ведь индикатор будет подключаться к основной схеме при помощи жгута.
- Вложения
-
- Desktop.rar
- (104.85 КБ) 278 скачиваний
-
- Вид 2.JPG
- (37.72 КБ) 2014 скачиваний
- xorkrus
- Нашел транзистор. Понюхал.
- Сообщения: 151
- Зарегистрирован: Сб ноя 19, 2011 20:13:47
- Откуда: Тамбов
- Контактная информация:
Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)
Danko писал(а):У меня было что то подобное с первыми часами. После грозы слетела прошивка. За два года пару раз. Все вылечилось заменой МК.
Но не всегда МК виноват. Нужно проверить питание МК. У Вас электролит по питанию сильно большой стоит? Есть возможность проверить насколько плавно нарастает питание МК при включении?
BOD активирован?
Внешнюю систему сброса МК не подключали?
Менял МК. Тоже грешил на него - не помогло.
Электролиты все стоят по схеме + керамики налепил на ЛМках. Возможности проверить плавность - нету. Питается (пока) от ЛБП, со стабилизированным выходом.
BOD - это что? И про внешнюю систему сброса МК, тоже не знаю ничего.
Единственное, сразу не поставил индуктивность. Сегодня поставил и глюков пока не наблюдаю. (да и проверять некогда сейчас, работы много).
Ant-RG писал(а):DS1307 менять пробовали?
Нет. Эта вроде как должна быть рабочей.
Демократии нет и не будет!
Государство - это я!
Государство - это я!
- Nusik1975
- Электрический кот
- Сообщения: 1023
- Зарегистрирован: Чт мар 04, 2010 13:48:56
- Откуда: Недалеко от Тулы
Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)
BOD- это BODLEVEL. Если шить прямо из CodeVision, то там автором уже установлены фьюзы, и этот фьюз установлен.
- xorkrus
- Нашел транзистор. Понюхал.
- Сообщения: 151
- Зарегистрирован: Сб ноя 19, 2011 20:13:47
- Откуда: Тамбов
- Контактная информация:
Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)
Вопросик автору: не могли бы Вы, добавить аппаратную кнопку сброса EEPROM?
Задолбался шить %)
Задолбался шить %)
Демократии нет и не будет!
Государство - это я!
Государство - это я!
- Danko
- Сверлит текстолит когтями
- Сообщения: 1287
- Зарегистрирован: Пн окт 13, 2008 11:45:54
- Откуда: РФ, Крым, г.Бахчисарай
- Контактная информация:
Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)
Можно.
Только проверить в железе не могу.
xorkrus, как у Вас обстоят дела с компилятором?
Только проверить в железе не могу.
xorkrus, как у Вас обстоят дела с компилятором?
Первое, что привлекает в программировании, объяснить просто: ты говоришь компьютеру что то сделать, и он это делает. Безошибочно. Всегда. Без возражений.
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
- xorkrus
- Нашел транзистор. Понюхал.
- Сообщения: 151
- Зарегистрирован: Сб ноя 19, 2011 20:13:47
- Откуда: Тамбов
- Контактная информация:
Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)
Danko писал(а):Можно.
Только проверить в железе не могу.
xorkrus, как у Вас обстоят дела с компилятором?
Нету. Но поставить не проблема
Демократии нет и не будет!
Государство - это я!
Государство - это я!
- Danko
- Сверлит текстолит когтями
- Сообщения: 1287
- Зарегистрирован: Пн окт 13, 2008 11:45:54
- Откуда: РФ, Крым, г.Бахчисарай
- Контактная информация:
Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)
Делать принудительный сброс не правильно. Если есть пробелы c EEPROM, я думаю вы легко найдете эти строки:
Добавьте пару строк к вышеуказанному блоку и Вы сможете принудительно устанавливать значения которые прописаны в EEPROM.
для установки активного лог.1 нужно соответствующую строку закомментировать.
Код: Выделить всё
//------ для обкатки в Протеусе снять комент с нужного поля -------
// hour0 = 0;
// rushechki = 0;
// fotorez = 0;
// dubldot = 0;
// plusminus = 0;
// des = 0;
// etest_adc = 0;
// etest_adc = 1;
//----------
Добавьте пару строк к вышеуказанному блоку и Вы сможете принудительно устанавливать значения которые прописаны в EEPROM.
Код: Выделить всё
led_s = 0; // активный лог.0 для сегментов
led_r = 0; // активный лог.0 для разрядов
Первое, что привлекает в программировании, объяснить просто: ты говоришь компьютеру что то сделать, и он это делает. Безошибочно. Всегда. Без возражений.
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
- xorkrus
- Нашел транзистор. Понюхал.
- Сообщения: 151
- Зарегистрирован: Сб ноя 19, 2011 20:13:47
- Откуда: Тамбов
- Контактная информация:
Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)
xorkrus писал(а):Добавьте пару строк к вышеуказанному блоку
Гм. Вероятно не так написал. В коде я не силен совершенно.
И к тому же, добавив\установив поля из первого блока... это разве будет устанавливаться ни при каждом включении часов?
Демократии нет и не будет!
Государство - это я!
Государство - это я!
- Danko
- Сверлит текстолит когтями
- Сообщения: 1287
- Зарегистрирован: Пн окт 13, 2008 11:45:54
- Откуда: РФ, Крым, г.Бахчисарай
- Контактная информация:
Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)
эти строки стоят после строк чтения значений из EEPROM.
Код: Выделить всё
//------ для обкатки в Протеусе снять комент с нужного поля -------Тогда скажите: какие функции EEPROM Вы активизируете и какие активные уровни для разрядов и для сегментов?В коде я не силен совершенно.
Первое, что привлекает в программировании, объяснить просто: ты говоришь компьютеру что то сделать, и он это делает. Безошибочно. Всегда. Без возражений.
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
- xorkrus
- Нашел транзистор. Понюхал.
- Сообщения: 151
- Зарегистрирован: Сб ноя 19, 2011 20:13:47
- Откуда: Тамбов
- Контактная информация:
Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)
Danko писал(а):эти строки стоят после строк чтения значений из EEPROM.
Тогда скажите: какие функции EEPROM Вы активизируете и какие активные уровни для разрядов и для сегментов?
Не судите строго %)
первая часть предложения == какие настройки я выставляю? Тогда в спойлере ниже:
Спойлер
номера ячеек EEPROM и их значение (на индикаторе номер ячейка Е2 - Е8 и ее значение):2 - 1
3 - 1
4 - 0
5 - 1
6 - 1
7 - 1
8 - F
9 - 0
а - 200
t1 = 15
t2 = 0
t3 = 5
А вторая - вообще непонятна (про уровни)
Заметил, что забыл сказать такую вещь: когда на дисплее С0:00, вместо 0:00, в настройках тоже хлам. т.е например t1 = Ft; t2 = FF; t3 = CC.
Также нет возможности установить настройки EEPROM ибо доступны только три с непонятными адресами\значениями.
Демократии нет и не будет!
Государство - это я!
Государство - это я!
- Danko
- Сверлит текстолит когтями
- Сообщения: 1287
- Зарегистрирован: Пн окт 13, 2008 11:45:54
- Откуда: РФ, Крым, г.Бахчисарай
- Контактная информация:
Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)
настройки t1, t2 ... хранятся в памяти DS1307, а не в EEPROM.
Ищите, что мешает нормальному чтению данных из DS1307.
Ну и записи тоже.
Ищите, что мешает нормальному чтению данных из DS1307.
Ну и записи тоже.
Первое, что привлекает в программировании, объяснить просто: ты говоришь компьютеру что то сделать, и он это делает. Безошибочно. Всегда. Без возражений.
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
---------------------
Линус Торвальдс. "Just for fun. Рассказ нечаянного революционера"
Re: Часы-календарь-термометр (Mega8+DS1307+DS18B20+4LED)
xorkrus Все же мы так и не узнали про фьюз BOD активирован он у тебя , или нет, вполне возможно что из за медленного нарастания / спада напряжения при вкл / выкл мега пишет "мусор" в DS. Может DS ка сама больная 
