11-03-2016, 01:52
(Ten post był ostatnio modyfikowany: 11-03-2016, 11:28 przez CEO.
Powód edycji: W razie czego lepiej kod trzymać u nas na forum, za jakiś czas linki mogą zrobić się nieaktywne i nici z wątku. :)
)
Dobrywieczór ktoś może wie jak w bibliotece RTClib do TinyRTC(DS1307) ustawić liczby na dwucyfrowe? teraz np. godzina 21:03 to 21:3. ponizej kawałek kodu
Kod:
#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#include "RTClib.h"
RTC_DS1307 RTC;
#define OLED_RESET 4
Adafruit_SSD1306 display(OLED_RESET);
#define NUMFLAKES 10
#define XPOS 0
#define YPOS 1
#define DELTAY 2
void setup() {
Serial.begin(9600);
// by default, we'll generate the high voltage from the 3.3v line internally! (neat!)
display.begin(SSD1306_SWITCHCAPVCC, 0x3C); // initialize with the I2C addr 0x3D (for the 128x64)
display.display();
// Clear the buffer.
display.clearDisplay();
Wire.begin();
RTC.begin();
//RTC.adjust(DateTime(__DATE__, __TIME__));
}
void loop() {
display.clearDisplay();
DateTime now = RTC.now();// Pobranie daty i czasu i zapisanie do obiektu DateTime
int rok = now.year();
String rok2 = String(rok);
int miesiac = now.month();
String miesiac2 = String(miesiac);
int dzien = now.day();
String dzien2 = String(dzien);
int godzina = now.hour();
String godzina2 = String(godzina);
int minuta = now.minute();
String minuta2 = String(minuta);
//int temp = '24';
//int wilgotnosc = '47';
// text display
display.setTextSize(1);
display.setTextColor(WHITE);
display.setCursor(0,0);
display.println("Temperatura: ");
display.setCursor(0,11);
display.println("Wilgotnosc: ");
display.setCursor(0,23);
display.println(dzien2 + '/' + miesiac2 + '/' + rok2 + " - " + godzina2 + ':' + minuta2);
display.display();
delay(1000);
}