Например TDA7294

Форум РадиоКот • Просмотр темы - Часы на Atmega8515 и ds1307
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Вт апр 16, 2024 20:29:36

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 50 ]  1, ,  
Автор Сообщение
Не в сети
 Заголовок сообщения: Часы на Atmega8515 и ds1307
СообщениеДобавлено: Вт янв 16, 2018 12:25:15 
Потрогал лапой паяльник
Аватар пользователя

Карма: 3
Рейтинг сообщений: 49
Зарегистрирован: Чт ноя 21, 2013 14:05:26
Сообщений: 342
Откуда: Україна
Рейтинг сообщения: 0
Собрал часики на Atmega 8515 и ds1307, отладил в протеусе, все хорошо и гладко. Часы идут, лампочки мигают, реле щелкает, только это все в протеусе. А вот в железе все не так... :(
Дело в том, что с программным I2C, я никогда не работал. Использую чужие библиотеки найдены на просторах.
На реальной плате, они тоже идут. Только вот когда я записываю время, а потом считываю, получаю абракадабру.
К примеру : Запишу 12: 25, после перезагрузки получается 00:12. Хотя протеус, таких чудес не показывает.
Опытным путем выяснил, для того чтобы после перезагрузки, получить те же 12:25 , надо записать 12 в года, то есть 2012й год. А 25 в часы, но в часы 25 не запишешь, ведь их только 24. Но это же бред и т.д и тп....

Прошу помощи

Выкладываю Проект в Atmel Studio и Протеус.
Проекты не оптимизированы не смейтесь. :)))


Вложения:
clock_2018.rar [130.43 KiB]
Скачиваний: 350
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Часы на Atmega8515 и ds1307
СообщениеДобавлено: Вт янв 16, 2018 13:18:22 
Друг Кота

Карма: 60
Рейтинг сообщений: 67
Зарегистрирован: Ср янв 02, 2013 08:37:35
Сообщений: 3342
Рейтинг сообщения: 0
Опытным путем выяснил, для того чтобы после перезагрузки, получить те же 12:25 , надо записать 12 в года, то есть 2012й год. А 25 в часы, но в часы 25 не запишешь, ведь их только 24. Но это же бред и т.д и тп....

Не правда… чудес не бывает.
Регистры RTC разделены на младшие и старшие… значение времени 12:25:00 будут иметь в регистрах RTC такие вот значения: Регистр #h00 = #h00; регистр #h01 = #h25; регистр #h02 = #h12.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Часы на Atmega8515 и ds1307
СообщениеДобавлено: Ср янв 17, 2018 07:59:50 
Потрогал лапой паяльник
Аватар пользователя

Карма: 3
Рейтинг сообщений: 49
Зарегистрирован: Чт ноя 21, 2013 14:05:26
Сообщений: 342
Откуда: Україна
Рейтинг сообщения: 0
Разве я не так записываю данные?? По моему идентично...


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: Часы на Atmega8515 и ds1307
СообщениеДобавлено: Ср янв 17, 2018 08:36:15 
Мудрый кот

Карма: 20
Рейтинг сообщений: 145
Зарегистрирован: Вс дек 25, 2016 08:34:54
Сообщений: 1849
Рейтинг сообщения: 0
Обратите внимание на функции rtc_get_time и rtc_get_date, что то уж слишком много старт-стоп.


Вернуться наверх
 
Организация питания на основе надежных литиевых аккумуляторов EVE и микросхем азиатского производства

Качественное и безопасное устройство, работающее от аккумулятора, должно учитывать его физические и химические свойства, профили заряда и разряда, их изменение во времени и под влиянием различных условий, таких как температура и ток нагрузки. Мы расскажем о литий-ионных аккумуляторных батареях EVE и нескольких решениях от различных китайских компаний, рекомендуемых для разработок приложений с использованием этих АКБ. Представленные в статье китайские аналоги помогут заменить продукцию западных брендов с оптимизацией цены без потери качества.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Часы на Atmega8515 и ds1307
СообщениеДобавлено: Ср янв 17, 2018 11:30:50 
Родился

Карма: 1
Рейтинг сообщений: 8
Зарегистрирован: Сб янв 22, 2011 00:38:02
Сообщений: 13
Рейтинг сообщения: 0
у меня такое было при севшей батарейке.


Вернуться наверх
 
Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Часы на Atmega8515 и ds1307
СообщениеДобавлено: Ср янв 17, 2018 21:45:30 
Потрогал лапой паяльник
Аватар пользователя

Карма: 3
Рейтинг сообщений: 49
Зарегистрирован: Чт ноя 21, 2013 14:05:26
Сообщений: 342
Откуда: Україна
Рейтинг сообщения: 0
Батарейка = 2.8, вроде по даташиту, нормально.

Кстати, это китайский модуль, с памятью на борту. Его я перепаял слегка, убрав цепь заряда батареи.

Добавлено after 15 minutes 30 seconds:
много старт-стоп.


Попробовал удалить все, оставив старт вначале и стоп в конце. Еще хуже... :facepalm:

Добавлено after 1 hour 32 minutes 6 seconds:
Поиграв с асками в функции rtc_get_time, удалось записать часы и минуты как положено. Но часы на микросхеме так и не идут. Хотя генератор работает, ведь такты отслеживаются контроллером.

Добавлено after 20 minutes 59 seconds:
:cry: Такое ощущение, что часы идут, но пишу и читаю я не те ячейки. Соответственно я и не могу заметить прибавление минут. :kill: Неделю убил над этим мусором. Проще было бы плату вытравить на какую ни будь тини 2313 с аппаратным интерфейсом :facepalm:


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Часы на Atmega8515 и ds1307
СообщениеДобавлено: Ср янв 17, 2018 22:07:14 
Друг Кота

Карма: 60
Рейтинг сообщений: 67
Зарегистрирован: Ср янв 02, 2013 08:37:35
Сообщений: 3342
Рейтинг сообщения: 0
Лучше написать свою библиотеку или пользоваться заведомо проверенной. Если хочешь, могу на словах расписать пошагово, алгоритм обмена для понимания.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Часы на Atmega8515 и ds1307
СообщениеДобавлено: Ср янв 17, 2018 22:27:43 
Потрогал лапой паяльник
Аватар пользователя

Карма: 3
Рейтинг сообщений: 49
Зарегистрирован: Чт ноя 21, 2013 14:05:26
Сообщений: 342
Откуда: Україна
Рейтинг сообщения: 0
Я бы написал свою, если бы понимал как это все работает. Кучу форумов протаранил. А чтобы понимать, надо прочесть реально рабочий код. Я даже видео смотрел. Да, вроде все понимаешь, но когда берешься за код, как натупишь...

Недавно разобрался с программным СПИ, и все ногодрыгом сделал. А тут завал


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Часы на Atmega8515 и ds1307
СообщениеДобавлено: Ср янв 17, 2018 22:32:24 
Друг Кота

Карма: 60
Рейтинг сообщений: 67
Зарегистрирован: Ср янв 02, 2013 08:37:35
Сообщений: 3342
Рейтинг сообщения: 0
нет там ничего сложного – всё просто… завтра опишу на словах.
Надеюсь как «выглядит» передача и приём байта, а так же СТОП и СТАРТ это для тебя понятно. Или и это расписывать?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Часы на Atmega8515 и ds1307
СообщениеДобавлено: Чт янв 18, 2018 00:06:22 
Потрогал лапой паяльник
Аватар пользователя

Карма: 3
Рейтинг сообщений: 49
Зарегистрирован: Чт ноя 21, 2013 14:05:26
Сообщений: 342
Откуда: Україна
Рейтинг сообщения: 0
Угу... Каша такая себе.

Добавлено after 1 hour 26 minutes 24 seconds:
Наткнулся на рабочий код и подсунул его в свой проект. В протеусе не работает. Чуть не удалил проект, но потом взял и прошил контроллер, работает.

Спасибо всем, кто откликнулся.

Вот все что получилось...


Вложения:
soft_i2c_ds1307.rar [97.96 KiB]
Скачиваний: 292
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Часы на Atmega8515 и ds1307
СообщениеДобавлено: Чт янв 18, 2018 14:23:29 
Друг Кота

Карма: 60
Рейтинг сообщений: 67
Зарегистрирован: Ср янв 02, 2013 08:37:35
Сообщений: 3342
Рейтинг сообщения: 2
Напоминалочка (немного общей теории):

SDA – Линия данных.
SCL – Линия тактового сигнала.
Интерфейс позволяет объединить до 128 различных устройств. Шинные формирователи всех устройств выполнены по схеме с открытым коллектором (или стоком). Высокий логический уровень формируется за счёт подтягивающих резисторов к плюсу питания.

Поскольку шина является последовательной, все данные передаются по линии SDA поразрядно (старший бит первым). Каждый передаваемый разряд сопровождается импульсом на линии тактового сигнала SCL. Причем сигнал на линии SDA должен быть стабильным всё то время, пока на шине SCL присутствует сигнал лог. 1. Единственным исключением из этого правила являются два особых состояния шины СТАРТ и СТОП.

Состояния СТАРТ и СТОП формируются ведущим в начале и в конце передачи данных соответственно. Между этими состояниями шина считается занятой, и другие ведущие не должны пытаться управлять ею. Если ведущий хочет начать передачу нового блока данных без потери/восстановления контроля над шиной, он может сформировать состояние СТАРТ до формирования состояния СТОП. Формируемое таким образом состояние называется «повторный СТАРТ» (ПОВСТАРТ), а шина считается занятой до последующего формирования состояния СТОП. Поскольку такое поведение ничем не отличается от поведения после формирования состояния СТАРТ, в дальнейшем оба эти состояния (СТАРТ и ПОВСТАРТ) будут обозначаться как СТАРТ, кроме тех случаев, где их необходимо различать.
Состояния СТАРТ и СТОП формируются путем изменения уровня сигнала на линии SDA при ВЫСОКОМ уровне на линии SCL. Состоянию СТАРТ соответствует смена уровня с «1» на «0», а состоянию СТОП наоборот, с «0» на «1».

Так как устройство по сути формирует логический ноль путём прижатия линий к «земле», то управление данным действием производится с помощью регистра DDRn.N порта МК. В твоём конкретном случае линия SDA это DDRD.1; SCL это DDRD.0.
В дальнейшем (в примерах) необходимо помнить, что устанавливая лог. 0 в регистр SDA_N (DDRD.1), на линии SDA формируется лог 1. А если устанавливаем лог. 1 в регистр SDA_N, то на линии SDA формируется лог 0. Это так же относится и к линии SCL (SCL_N).
Создаём переменную «Loop», переменную «Data» в SRAM или в рабочих регистрах.

Мой пример будет описывать алгоритм для шины 100 кГц, без реализации проверки занятости SCL (для медленных устройств), а так же отсутствует арбитраж для систем MultiMaster.
СпойлерПодпрограмма (СТАРТ):
1. Устанавливаем в SDA_N лог 0 //На линии лог 1;
2. Устанавливаем в SCL_N лог 0 //На линии лог 1;
3. Пауза (12 мкс);
4. Устанавливаем в SDA_N лог 1 //На линии лог 0;
5. Пауза (12 мкс);
6. Устанавливаем в SCL_N лог 1 //На линии лог 0;
7. Пауза (8 мкс);
8. Выход.


Подпрограмма (СТОП):
1. Устанавливаем в SDA_N лог 1 //На линии лог 0;
2. Пауза (8 мкс);
3. Устанавливаем в SCL_N лог 0 //На линии лог 1;
4. Пауза (12 мкс);
5. Устанавливаем в SDA_N лог 0 //На линии лог 1;
6. Пауза (12 мкс);
7. Выход.


Подпрограмма отправки байта (SEND_BYTE):
1. Обнуляем бит «Т» регистра SREG;
2. Записываем значение $08 в переменную «Loop»;
3. Сдвигаем «Data» в лево с переносом (<<Data<);
4. Устанавливаем в SDA_N лог 0 //На линии лог 1;
5. Проверяем состояние бита «С» регистра SREG;
6. Если бит «С» равен лог 0 то устанавливаем в SDA_N лог 1 //На линии лог 0; Если бит «С» равен лог 0 то просто переходим к следующему пункту;
7. Пауза (8 мкс);
8. Устанавливаем в SCL_N лог 0 //На линии лог 1;
9. Пауза (12 мкс);
10. Устанавливаем в SCL_N лог 1 //На линии лог 0;
11. Пауза (8 мкс);
12. Вычитаем единицу из переменной «Loop» и проверяем не равна ли она нулю. Если не равна, то переходим к пункту 3. Если переменная «Loop» равно нулю, то переходим к пункту 13.
13. Устанавливаем в SDA_N лог 0 //На линии лог 1;
14. Пауза (8 мкс);
15. Устанавливаем в SCL_N лог 0 //На линии лог 1;
16. Пауза (8 мкс);
17. Проверяем сигнал подтверждения от принимающего… оно заключается в проверке состояния линии SDA, а именно проверки регистра PinD.1: Если линия SDA прижата к «земле» (лог 0) значит есть подтверждение – переходим к пункту 18. Если на линия SDA лог 1, то в бит «Т» регистра SREG записываем лог 1 и после этого переходим к пункту 18.
18. Пауза (8 мкс);
19. Устанавливаем в SCL_N лог 1 //На линии лог 0;
20. Пауза (12 мкс);
21. Устанавливаем в SDA_N лог 1 //На линии лог 0;
22. Сдвигаем «Data» в лево с переносом (<<Data<);
23. Выход.


Подпрограмма чтения байта (READ_BYTE):
1. Очищаем переменную «Data»;
2. Записываем значение $08 в переменную «Loop»;
3. Устанавливаем в SDA_N лог 0 //На линии лог 1;
4. Пауза (8 мкс);
5. Устанавливаем в SCL_N лог 0 //На линии лог 1;
6. Пауза (8 мкс);
7. Обнуляем бит «С» регистра SREG;
8. Проверяем состояние линии SDA (PinD.1): Если на линии лог. 0, то переходим к пункту 9. Если на линии лог. 1, то записываем лог. 1 в бит «С» регистра SREG и уже затем переходим к пункту 9.
9. Устанавливаем в SCL_N лог 1 //На линии лог 0;
10. Сдвигаем «Data» в лево с переносом (<<Data<);
11. Вычитаем единицу из переменной «Loop» и проверяем не равна ли она нулю. Если не равна, то переходим к пункту 4. Если переменная «Loop» равно нулю, то переходим к пункту 12.
12. Выход.


Подпрограмма отправки подтверждения (SEND_ACK):
1. Устанавливаем в SDA_N лог 1 //На линии лог 0;
2. Пауза (8 мкс);
3. Устанавливаем в SCL_N лог 0 //На линии лог 1;
4. Пауза (12 мкс);
5. Устанавливаем в SCL_N лог 1 //На линии лог 0;
6. Пауза (8 мкс);
7. Устанавливаем в SDA_N лог 0 //На линии лог 1;
8. Выход.


Подпрограмма отправки не подтверждения (SEND_NO_ACK):
1. Устанавливаем в SDA_N лог 0 //На линии лог 1;
2. Переход к пункту 2 подпрограммы подтверждения (SEND_ACK);
3. Выход.


Подпрограмма чтения значений с DS1307:
1. Сброс флага «Неисправность часов»;
2. Записываем в переменную «Data» адрес устройства и бит направления (#b11010000);
3. «СТАРТ»;
4. «SEND_BYTE» //Передаём в часы байт адреса и бит направления;
5. Проверяем состояния бита «Т» регистра SREG: Если бит «Т» равен лог. 1, то переходим к пункту 7. Если бит «Т» равен лог. 0, то переходим к пункту 6.
6. Поднимаем флаг «Неисправность часов» и переходим к пункту 20;
7. Помещаем в переменную «Data» адрес регистра с которого начнём считать данные;
8. «SEND_BYTE» //Передаём в часы байт адреса регистра;
9. Проверяем состояния бита «Т» регистра SREG: Если бит «Т» равен лог. 1, то переходим к пункту 10. Если бит «Т» равен лог. 0, то переходим к пункту 6.
10. Записываем в переменную «Data» адрес устройства и бит направления (#b11010001);
11. «СТАРТ» - Повтор команды СТАРТ;
12. «SEND_BYTE» //Передаём в часы байт адреса и бит направления;
13. Проверяем состояния бита «Т» регистра SREG: Если бит «Т» равен лог. 1, то переходим к пункту 14. Если бит «Т» равен лог. 0, то переходим к пункту 6.
14. «READ_BYTE» //Читаем первый байт данных (допустим минуты);
15. Сохраняем принятый байт, копируя его из переменной «Data» в необходимую переменную;
16. «SEND_ACK» //Подтверждаем принятый байт;
17. «READ_BYTE» //Читаем следующий байт данных (часы);
18. Сохраняем принятый байт, копируя его из переменной «Data» в необходимую переменную;
19. «SEND_NO_ACK» //Отправляем команду не подтверждение;
20. «СТОП» ;
21. Выход.


Подпрограмма записи значений в DS1307:
1. Сброс флага «Неисправность часов»;
2. Записываем в переменную «Data» адрес устройства и бит направления (#b11010000);
3. «СТАРТ»;
4. «SEND_BYTE» //Передаём в часы байт адреса и бит направления;
5. Проверяем состояния бита «Т» регистра SREG: Если бит «Т» равен лог. 1, то переходим к пункту 7. Если бит «Т» равен лог. 0, то переходим к пункту 6.
6. Поднимаем флаг «Неисправность часов» и переходим к пункту 16;
7. Помещаем в переменную «Data» адрес регистра в который начнём записывать данные;
8. «SEND_BYTE» //Передаём в часы байт адреса регистра;
9. Проверяем состояния бита «Т» регистра SREG: Если бит «Т» равен лог. 1, то переходим к пункту 10. Если бит «Т» равен лог. 0, то переходим к пункту 6.
10. Записываем в переменную «Data» значение для передачи (допустим значение минут);
11. «SEND_BYTE» //Передаём в часы байт данных;
12. Проверяем состояния бита «Т» регистра SREG: Если бит «Т» равен лог. 1, то переходим к пункту 13. Если бит «Т» равен лог. 0, то переходим к пункту 6.
13. Записываем в переменную «Data» значение для передачи (допустим значение часов);
14. «SEND_BYTE» //Передаём в часы байт данных;
15. Проверяем состояния бита «Т» регистра SREG: Если бит «Т» равен лог. 1, то переходим к пункту 16. Если бит «Т» равен лог. 0, то переходим к пункту 6.
16. «СТОП»
17. Выход.


Передача (SEND_BYTE) и чтения (READ_BYTE) байта недолжны прерываться какими либо прерываниями.
Вообще подпрограмму записи значений в DS1307 и подпрограмму чтения значений с DS1307 лучше выполнять в среде какого либо прерывания или запрещать глобальные прерывания при их выполнении.


Да чуть не забыл… вовремя запуска МК необходимо проверять работу тактирования DS1307 и если она остановлена (по разным причинам), то переходить к подпрограмме установке начальной конфигурации и запуска.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Часы на Atmega8515 и ds1307
СообщениеДобавлено: Чт янв 18, 2018 18:03:25 
Мудрый кот

Карма: 20
Рейтинг сообщений: 145
Зарегистрирован: Вс дек 25, 2016 08:34:54
Сообщений: 1849
Рейтинг сообщения: 0
Наткнулся на рабочий код и подсунул его в свой проект. В протеусе не работает. Чуть не удалил проект, но потом взял и прошил контроллер, работает.
Все нормально в протеусе работает.
Вам не кажется, что слишком часто опрашиваете ds1307?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Часы на Atmega8515 и ds1307
СообщениеДобавлено: Чт янв 18, 2018 19:51:44 
Потрогал лапой паяльник
Аватар пользователя

Карма: 3
Рейтинг сообщений: 49
Зарегистрирован: Чт ноя 21, 2013 14:05:26
Сообщений: 342
Откуда: Україна
Рейтинг сообщения: 0
Сегодня, весь день занимаюсь оптимизацией и сборкой проекта. Почти полностью перелопатил свой г..но код. Добавились еще три реле, и всякие там мелочи. В некоторых местах показывалась лишняя информация и глюки. В общем, вот...
СпойлерИзображение Изображение


Знаете что это? Это микроклимат курятника :)))
Включает и выключает свет, в нужное время, тем самым прибавляя количество яиц в холодильнике. :))

Добавлено after 37 minutes 56 seconds:
Напоминалочка (немного общей теории):


Я признателен вашим трудам. :) Расжевывать и раскладывать по полкам, это не легкий труд. Спасибо огромное. :beer:
Я думаю, еще не раз загляну в вашу напоминалку.

Добавлено after 4 minutes 36 seconds:
[uquote="DJZEM",url="/forum/viewtopic.php?p=3285978#p3285978"]
Вам не кажется?


Надо как то сделать опрос раз в секунду,
Типа - Дотикали до секунды, опрос и сброс счетчика. И так по кругу.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Часы на Atmega8515 и ds1307
СообщениеДобавлено: Пт янв 19, 2018 10:47:37 
Мудрый кот

Карма: 20
Рейтинг сообщений: 145
Зарегистрирован: Вс дек 25, 2016 08:34:54
Сообщений: 1849
Рейтинг сообщения: 0
DJZEM писал(а):
Знаете что это? Это микроклимат курятника :)))
Включает и выключает свет, в нужное время, тем самым прибавляя количество яиц в холодильнике. :))
Да, на что горазд ум человека. Китайскую лампочку (теплый свет) на 10Вт включил и забыл.
DJZEM писал(а):
Надо как то сделать опрос раз в секунду,
Типа - Дотикали до секунды, опрос и сброс счетчика. И так по кругу.
За чем раз в секунду? В первоначальном варианте у вас лучше было, свои часы на таймере. А с ds1307 синхронизировать раз там в 1 час.
По моему чем меньше ds1307 дергаешь тем точнее она идет.
У самого такой китайский модуль имеется, сразу кварц с материнки впаял, иначе убегали не знаю на сколько. И с кварцем от материнки бегут, за 411 часов на 123 секунды убежали. Вот здесь игрался с таким модулем.

Проектом потом не забудьте поделиться.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Часы на Atmega8515 и ds1307
СообщениеДобавлено: Пт янв 19, 2018 19:45:28 
Потрогал лапой паяльник
Аватар пользователя

Карма: 3
Рейтинг сообщений: 49
Зарегистрирован: Чт ноя 21, 2013 14:05:26
Сообщений: 342
Откуда: Україна
Рейтинг сообщения: 0
Китайскую лампочку


Но ведь, я же не ради экономии. Сама суть то в приближении к летнему времени. Именно такой себе микро при микро климат.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Часы на Atmega8515 и ds1307
СообщениеДобавлено: Пт янв 19, 2018 21:18:29 
Друг Кота
Аватар пользователя

Карма: 46
Рейтинг сообщений: 2030
Зарегистрирован: Пт ноя 11, 2016 05:48:09
Сообщений: 6618
Откуда: Сердце Пармы
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Dimon456 писал(а):
По моему чем меньше ds1307 дергаешь тем точнее она идет.
Dimon456 писал(а):
бегут, за 411 часов на 123 секунды убежали.
Нафига такой микросхема? пойду лучше ещё тинек под часы нашью :)) :)) :))

_________________
Просто не учи физику в школе, и вся твоя жизнь будет наполнена чудесами и волшебством :)
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Часы на Atmega8515 и ds1307
СообщениеДобавлено: Пт янв 19, 2018 23:32:44 
Друг Кота

Карма: 60
Рейтинг сообщений: 67
Зарегистрирован: Ср янв 02, 2013 08:37:35
Сообщений: 3342
Рейтинг сообщения: 0
[quote="Dimon456"]Нафига такой микросхема?

Не, сама микра хорошая… :) кварц нужно с умом выбирать и всего лишь. А если с этим трудности, то советую лучше использовать DS3231… это почти аналог только с плюшками… у неё кварц встроен внутри… там же имеется термометр значение которого можно юзать… но в основном он используется для коррекции частоты в зависимости от температуры… в данной микре есть ещё и два аппаратных будильника… в общим тикают значительно точнее чем DS1307. :)


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Часы на Atmega8515 и ds1307
СообщениеДобавлено: Пт янв 19, 2018 23:53:45 
Потрогал лапой паяльник
Аватар пользователя

Карма: 3
Рейтинг сообщений: 49
Зарегистрирован: Чт ноя 21, 2013 14:05:26
Сообщений: 342
Откуда: Україна
Рейтинг сообщения: 0
DS3234 еще круче, и к тому же SPI проще TWI, но...

Но я его лепил из того что был.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Часы на Atmega8515 и ds1307
СообщениеДобавлено: Сб янв 20, 2018 09:24:32 
Друг Кота

Карма: 60
Рейтинг сообщений: 67
Зарегистрирован: Ср янв 02, 2013 08:37:35
Сообщений: 3342
Рейтинг сообщения: 0
и к тому же SPI проще TWI

:))
Оба интерфейса просты когда знаешь как они работают!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Часы на Atmega8515 и ds1307
СообщениеДобавлено: Сб янв 20, 2018 14:15:06 
Мудрый кот

Карма: 20
Рейтинг сообщений: 145
Зарегистрирован: Вс дек 25, 2016 08:34:54
Сообщений: 1849
Рейтинг сообщения: 0
Ivanoff-iv писал(а):
Нафига такой микросхема? пойду лучше ещё тинек под часы нашью :)) :)) :))
Не все тинки имеют RTC. Наверное можно присобачить к меги 3В батарейку, детектор пропадания питания, перевести в какой нибудь повер-довн режим для снижения энергопотребления от батареи, чтоб таймер RTC только работал. Предложи решение, довольно интересно.


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 50 ]  1, ,  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 25


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y