Страница 101 из 148

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

Добавлено: Сб дек 28, 2013 09:42:27
saskin
Батарейка конечно стоит обвязка по схеме тютелька в тютельку я ж говорил секунды мигают в такт как и положено кварц я думаю не причем.Можно ли проверить генерацию с 7 ноги у дски тестером на подобие 176ие18(12) стрелка должна отклонятся в такт секунде при 1 Гц не помню уже на какой ноге.кнопки тоже как то реагируют неправильно

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

Добавлено: Сб дек 28, 2013 10:10:14
saskin
подскажите еще м41т56 можно поставить вместо дски вроде бы аналог мне главное календарь в часах

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

Добавлено: Сб дек 28, 2013 10:57:50
Martin76
Это функциональный аналог , c отличиями , требующими изменений в программе, полный аналог у DS1307 - VS1307.

saskin писал(а):кнопки тоже как то реагируют неправильно
Скорее всего нужно c монтажом сначала разобраться, потом попробовать перепрошить мегу с полным стиранием, потом только на мс грешить.
С шиной I2C все нормально, не замкнуто, не оборвано, резисторы подтяжки подключены?

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

Добавлено: Сб дек 28, 2013 15:39:57
Valek
На днях было так же как у saskin
Точка мигает, часы не идут, глючат.
Поменял все, кварц и 1307 по три раза, атмегу один раз поменял, меняется, но не идут. В последний раз горела надпись FND0 c мигающей точкой.
Еще раз прошил в Ponyprog только все три памяти, заработало.

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

Добавлено: Вс дек 29, 2013 08:10:02
saskin
Вчера купил новую дску поставил огорчился заплакал выкинул опять таже ерунда в добавок будильник начал сам устанавливатся пишет 13А1 и поехало 14 15 16 итд.
Еще раз прошил в Ponyprog только все три памяти, заработало
что это значит можно по подробнее как стереть и почему три памяти eeproma для меги вроде нет файла, дску я понял батарейку вытащил и она обнулилася, мегу тоже вроде понятно снял галочку стер и поставил а третью это чё

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

Добавлено: Вс дек 29, 2013 09:54:12
Valek
В понипрог три кнопки прошить, прошить флеш, прошить епром. На всякий случай прошил с помощью всех трех. Заработало. Видимо без файла обнуляется.

Амегу, которую первый раз менял, рабочая оказалась, на новую плату поставил, прошил, работает.
Остальное, что менял, надо будет тоже проверить, чтоб на будущее знать, из-за чего такие глюки.

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

Добавлено: Пн дек 30, 2013 07:43:53
saskin
Подскажите как выставить что б прошить usbaspом в пони прог он ведь только для LTP или я ошибаюсь

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

Добавлено: Вт дек 31, 2013 22:37:48
Le_Fleurs
ВСЕХ с наступающим новым годом подскажите как реализовать вот такую вот функцию хочу по нажатию на кнопку + принудительно показывать дату в исходнике прописываю

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

реакция на нажатие кнопок
 if (key == KEY_PLUS) {
                        indicate = IND_DATE;
                        zpt_BLINK=0;
                        dot_ON();
                }


Но пишет ошибка в indicate = IND_DATE;

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

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

Добавлено: Ср янв 01, 2014 09:11:19
loop
Le_Fleurs писал(а):Но пишет ошибка в indicate = IND_DATE;

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

В исходнике на конце indicate = IND_DATA;

Попробуйте вот так:

if (key == KEY_PLUS) {
zpt_BLINK=0;
view_date();
indicate = IND_DATA;
}


Сначала тушите точку, потом вызываете дату.

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

Добавлено: Ср янв 01, 2014 18:44:11
Le_Fleurs
loop писал(а):Попробуйте вот так:

if (key == KEY_PLUS) {
zpt_BLINK=0;
view_date();
indicate = IND_DATA;
}


Сначала тушите точку, потом вызываете дату.


попробовал написал вот так

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

  if (key == KEY_PLUS) {
                        zpt_BLINK=0;
                        view_date();
                         indicate = IND_DATE;
                } 


Если пишу DATA или DATE ошибка при компиляции L671: undefined symbol "IND_DATA" Что же не так делаю.

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

Добавлено: Ср янв 01, 2014 19:45:08
loop
Работают двое часов с такой прошивкой, плюсом вызывается температура первого датчика, минусом дата на 5 секунд. Правил исходник с первой страницы, а вы какой? У вас пишет не определено значение IND_DATA. В исходнике в середине файла term_mega8_88.h есть определение #define IND_DATA. Если закоментить эту строку получается ошибка как у вас undefined symbol "IND_DATA"

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

Добавлено: Ср янв 01, 2014 21:44:25
Le_Fleurs
loop писал(а):Работают двое часов с такой прошивкой, плюсом вызывается температура первого датчика, минусом дата на 5 секунд. Правил исходник с первой страницы, а вы какой? У вас пишет не определено значение IND_DATA. В исходнике в середине файла term_mega8_88.h есть определение #define IND_DATA. Если закоментить эту строку получается ошибка как у вас undefined symbol "IND_DATA"

Исходник с 1-й странички, и действительно открыл файл term_mega8_88.h и там не было IND_DATA добавил, отображение получилось при нажатии но спустя 5 сек на время не возвращается, а остается на дате. Хотя с Температурой получилось точно так еж и спустя 5 сек возвращается на время.

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

Добавлено: Чт янв 02, 2014 08:32:15
loop
Извиняйте, что выдаю информацию кусочками, просто было это очень давно, и я не помню всё что правил, теперь разобрался, так что давайте заново:
1. В файле term_mega8_88.h создаём определение #define IND_DATA
2. На кнопку + пишем:
if (key == KEY_PLUS) {
zpt_BLINK=0;
view_date();
indicate = IND_DATA;
}

3. Далее по исходнику есть вот такое:
// принудительная индикация температуры кнопками "+"(датчик 1 ) и "-"(датчик 2)
if ((devices >= 1) && (indicate == IND_TERM)) {
temperature=ds18x20_temperature(&rom_code[num_DS][0]);
if (temperature!=-9999){ view_term(); delay_ms_read_time(5000); }
indicate = IND_CLOCK;
}

После этого пишем:
// принудительная индикация даты кнопкой "+"
if (indicate == IND_DATA) {
zpt_4=0b00000010;
delay_ms_read_time(5000);
indicate = IND_CLOCK;
}

Теперь точно всё.

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

Добавлено: Чт янв 02, 2014 13:40:21
Le_Fleurs
loop писал(а):Теперь точно всё.


Спасибо да теперь действительно все. Все что хотел, получилось и в Proteus заработало. Огромное вам спасибо за помощь.

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

Добавлено: Сб янв 04, 2014 21:50:58
Le_Fleurs
А есть виде как работают часы, со всеми параметрами. Мне вот не особо понятны параметры
5 - регулятор яркости (фоторезистор)
8 - режим индикации состояния ADC (0 - кнопки, 1 - фоторезистор, F - откл.)
а - максимальный уровень яркости (от 40 до 200) индикация в десятках т.е. на индикаторе от 4 до 20

и ещё какой фоторезистор использовать?
А так же интересует если у меня маленькие индикаторы могу ли я убрать из схемы ULN

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

Добавлено: Вс янв 05, 2014 10:27:58
loop
A что тут не понятного:
5 - регулятор яркости (фоторезистор). Подключаете фоторезистор как на схеме, активируете эту функцию и наблюдаете, в темноте, когда минимальная освещённость в комнате индикатор светится, тускло, не напрягая глаза. А днем когда освещённость максимальная, индикатор светится на всю как дурной. Всего в прошивке сделаны три ступеньки яркости. То есть тускло, по ярче и совсем ярко.
На стр. 23 форума есть фотка фоторезистора и где его можно добыть, а также примерные его параметры.
а - максимальный уровень яркости (от 40 до 200) индикация в десятках т.е. на индикаторе от 4 до 20.
На стр. 51 форума:
Danko писал(а):в ячейку в EEPROM №9 (скрытые настройки) заносите значение от 50 до 200 с шагом 10 (на индикаторе от 5 до 20 с шагом 1).

Следом:
empic писал(а):Протестировал. Освещение в комнате до 65. В ячейке №9 выставил значение 60. Результат интервалы яркости: x>60 30<x<60 x<30
То что хотел :music:
Минимальное значение ячейки можно уменьшить до 40.

8 - режим индикации состояния ADC (0 - кнопки, 1 - фоторезистор, F - откл.)
Этот параметр используется исключительно для настройки часов. Его вы можете включить в Proteus и поиграться с ним. Включаем 0, тыкаем по кнопочкам, наблюдаем циферки соответствующие нажатой кнопки. Я чтобы не подбирать точно сопротивления в делители на кнопках, при первом включении часов включил этот режим тыкнул на все кнопочки записал значения, подставил их в исходник, скомпилировал, прошил микроконтроллер заново и проблем с нажатием кнопок нет.
Включаем 1, и с подключенным фоторезистором определяем максимальную освещённость в комнате, о чём писалось выше, и заносим это значение в ячейку EEPROM №9.

Да, индикаторы до 0,56 дюймов можно включать без ULN, на форуме об этом много писалось пролистайте первые страниц 20, хотя бы по диагонали.

P.S.:На стр. 57
Kazemir писал(а):Собрал в разное время две конструкции данного девайса, сразу заработали без проблем, как говориться Plug&Play, за что автору большой респект. Но в обоих часах мне не понравился один момент, связанный с регулировкой яркости свечения индикатора с помощью фоторезистора. Дело в том, что при определенной освещенности фоторезистора, соответствующей граничному положению между двумя областями (в функции set_yarkost их три),
яркость свечения индикатора начинает дергаться, попадая то в одну, то в другую область. И это продолжается до тех пор, пока освещенность фоторезистора не изменится и мы конкретно не окажемся в той или иной области.
Исправить этот момент удалось. Таймер/Счетчик2 я использовал в режиме Fast PWM (Быстрый ШИМ) и при этом в указанной выше функции убрал три "области". В итоге регулировка яркости индикатора получилась плавная, а не ступенчатая.
Нижний порог яркости индикатора устанавливается подбором резистора, включаемого параллельно фоторезистору, у меня получилось 200ком.

Это дёрганье реально бесит. Поэтому я тоже правил прошивку под плавное регулирование яркости в следствии чего отказался от ячейки EEPROM №9. Вот только хорошего фоторезистора тогда не было и что получилось не опробывал, теперь фоторезистор добыл, но попробовать никак руки не доходят.

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

Добавлено: Пт янв 24, 2014 12:04:25
Dmi3x
У кого нить есть печатная плата в лоуте под статику (дип корпуса). Заранее спасибо!

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

Добавлено: Ср янв 29, 2014 13:59:54
дядушка зуэ
вот чьято из ветки лично не проверялась мне больше та что Ant-RG нравится хотя там смд

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

Добавлено: Чт янв 30, 2014 10:35:17
yurii-bo
Подскажите,кто нибудь,уличный датчик показывает меньшую температуру от градусника.Виноват датчик,или что то в схеме?

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

Добавлено: Чт янв 30, 2014 13:58:07
Mazzz
Здравствуйте!! Проект конечно отличный, но есть вопрос. Может ли кто помочь, переделайте пожалуйста прошивку что бы светодиод Led1 Al был на индикаторе. Включил будильник загорелась разделительная точка в четвертом разряде. Второй будильник вообще не интересует. И еще по поводу регулировки яркости от фоторезистора, так и осталось три уровня или сейчас яркость изменяется по средствам ШИМ? Заранее спасибо, с Уважением Кот.