Навигация
Рекомендуемые статьи
Статистика
96653 (+0)
Всего пользователей
Всего пользователей
0
Сейчас на сайте
Сейчас на сайте
85 (+0)
Всего статей
Всего статей
1633 (+0)
Всего комментариев
Всего комментариев
Реклама
Проект подключения часов реального времени DS1307 к апаратной платформе Arduino
В статье вы найдете код программы для Arduino, схему и печатную плату для DS1307 а также фото рабочего проекта.
По деталям DS1307 прийдеться купить, кварц можно выдрать с убитой материнки, 3 резистора не кретичны от 4,7к до 20к тоже найдете на материнке.
Исходный код для ардуино:
Внимание листинг программы под версию arduino-0022
/*Подключаем библиотеки*/
#include <WProgram.h>
#include <Wire.h>
#include <DS1307.h>
#include <LiquidCrystal.h>
/*Выводы дисплея*/
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
/*Инициализация*/
void setup(){
lcd.begin(16, 2); //Дисплей 16Х2
lcd.setCursor(3, 0); //Установить 3 символ 0 строки
lcd.print("ARDUINO-RTC"); // выводим надпись завтавки ARDUINO-RTC
lcd.setCursor(5, 1); //Установить 5 символ 1 строки
lcd.print("DS-1307"); // выводим надпись завтавки DS-1307
delay(5000); // удерживаем заставку 5 секунд
lcd.clear(); // Очищаем дисплей
/*
// Тут выставляем время внутри DS1307, первый раз разкоментируем, выставляем время
// а после коментим опять и часы идут уже внутри DS1307, пока батарейку не выдернем с нее
// после того как прошили время опять каментим данный код и прошиваем еще раз
// чтоб выключить режим програмирования ds1307
RTC.stop();
RTC.set(DS1307_SEC,50); //Установить секунды
RTC.set(DS1307_MIN,18); //Установить минуты
RTC.set(DS1307_HR,02); //Установить часы
RTC.set(DS1307_DOW,07); //Установить день недели
RTC.set(DS1307_DATE,22); //Установить дату
RTC.set(DS1307_MTH,04); //Установить месяц
RTC.set(DS1307_YR,12); //Установить год
RTC.start();
*/
}
void loop()
{
lcd.setCursor(0, 0);
lcd.print(RTC.get(DS1307_HR,true)); //read the hour and also update all the values by pushing in true
lcd.print(":");
lcd.print(RTC.get(DS1307_MIN,false));//read minutes without update (false)
lcd.print(":");
lcd.print(RTC.get(DS1307_SEC,false));//read seconds
lcd.print(" "); // some space for a more happy life
lcd.setCursor(0, 1);
lcd.print(RTC.get(DS1307_DATE,false));//read date
lcd.print("/");
lcd.print(RTC.get(DS1307_MTH,false));//read month
lcd.print("/");
lcd.print(RTC.get(DS1307_YR,false)); //read year
lcd.print(" Day-");
lcd.print(RTC.get(DS1307_DOW,false));
}
Библиотека для DS1307, файл печатной платы в lay, схема и прочие файлы можно скачать здесь
Внимание! У Вас нет прав для просмотра скрытого текста.
фото платы с DS1307
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.