Объединить 2 кода RTC 1307 и семисегментный индикатор
- Войдите на сайт для отправки комментариев
Сб, 21/02/2015 - 03:20
Всем привет. В общем есть рабочий полностью код:
#include "OasisLED.h"
#include <Arduino.h>
uint8_t clockPin = 3;
uint8_t strobePin = 2;
uint8_t dataPin = 4;
OasisLED ledDisplay = OasisLED(clockPin, strobePin, dataPin);
void setup() {
ledDisplay.initialize();
}
void loop() { for (int i = 30; i >= 0; i--) {
ledDisplay.toggleColon();
ledDisplay.setValue(i);
delay(500);
ledDisplay.toggleColon();
delay(500);
}
ledDisplay.reset();
delay(2000);
}
Помогите на основе него вывести показания часов с модуля реального времени. Модуль подключен по i2c и успешно работает.
Может фото и ссылки приложишь о чем ты.я не про часы
Вот такую штуку пользую http://arduino.ru/forum/apparatnye-voprosy/spi-i-pt6961
а ты рассчитывал все угадали о чем ты сразу?
Да забыл ссылку указать. Но в общем к дисплею подпаялся и при помощи бибилотеки вывожу цмфры - если указать в коде вместо
inti = 30inti = 1999, то полностью это число будет выведено. Дак как можно вывести часы использую к примеру такой код// Date and time functions using a DS1307 RTC connected via I2C and Wire lib #include <Wire.h> #include "RTClib.h" RTC_DS1307 RTC; void setup () { Serial.begin(57600); Wire.begin(); RTC.begin(); if (! RTC.isrunning()) { Serial.println("RTC is NOT running!"); // following line sets the RTC to the date & time this sketch was compiled RTC.adjust(DateTime(__DATE__, __TIME__)); } } void loop () { DateTime now = RTC.now(); Serial.print(now.year(), DEC); Serial.print('/'); Serial.print(now.month(), DEC); Serial.print('/'); Serial.print(now.day(), DEC); Serial.print(' '); Serial.print(now.hour(), DEC); Serial.print(':'); Serial.print(now.minute(), DEC); Serial.print(':'); Serial.print(now.second(), DEC); Serial.println(); Serial.print(" since midnight 1/1/1970 = "); Serial.print(now.unixtime()); Serial.print("s = "); Serial.print(now.unixtime() / 86400L); Serial.println("d"); // calculate a date which is 7 days and 30 seconds into the future DateTime future (now.unixtime() + 7 * 86400L + 30); Serial.print(" now + 7d + 30s: "); Serial.print(future.year(), DEC); Serial.print('/'); Serial.print(future.month(), DEC); Serial.print('/'); Serial.print(future.day(), DEC); Serial.print(' '); Serial.print(future.hour(), DEC); Serial.print(':'); Serial.print(future.minute(), DEC); Serial.print(':'); Serial.print(future.second(), DEC); Serial.println(); Serial.println(); delay(3000); }Может есть код для i2c часов другой так сказать подходящий для таких дислпеев??
да нормальный код для часов
выводить просто/ например так. делаем переменную. а еще выводить ты можешь
#include <Wire.h> #include "RTClib.h" int time; RTC_DS1307 RTC; void setup () { Serial.begin(57600); Wire.begin(); RTC.begin(); if (! RTC.isrunning()) { Serial.println("RTC is NOT running!"); // following line sets the RTC to the date & time this sketch was compiled RTC.adjust(DateTime(__DATE__, __TIME__)); } } void loop () { DateTime now = RTC.now(); time=now.hour()*100+now.hourminute(); //и выводи чисто из time }.
.
https://github.com/buzzdavidson/OasisLED библиотека OasisLED