• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Wyswietlacz 7 segmentowy + db18b20
#45
Szukam wsadu zegar z temperaturą na DS1307 z  wyświetlaczemTM1637. Wiem archaik, ale lepiej w nocy widać cyfry starszym. Próbowałem sam zrobić, ale nie wychodzi. Słabo programowanie mi wychodzi. Wiek nie ten. Ale lubię dłubać w elektronice od lat. W dodatku początkuję z Arduino. Jakby ktoś podrzucił, byłbym wdzięczny. A tu skecz, jak by ktoś spojrzał co naknociłem:
Zegar:
#define DS1307_ADDRESS 0x68                          //adres zegara
#include <Wire.h>
#include <DS1307.h>
#include <TM1637Display.h>
//#define CLK 2
//#define DIO 3
TM1637Display display(2,3);
DS1307 clock;
RTCDateTime dt;
//Ustawienie pętli czasu zamiast delay
unsigned long aktualnyCzas = 0;
unsigned long zapamietanyCzasZegar = 0;

void setup()
{
  Serial.begin(9600);
        clock.begin();
//Ustawienie czasu - atumatyczne
//clock.setDateTime(__DATE__, __TIME__);
display.setBrightness(7); // Jasność wyświetlacza
        // odblokowaniwe 1Hz
  /*clock.setOutput(DS1307_1HZ);

  switch (clock.getOutput())
  {
    case DS1307_LOW:    Serial.println("SQW = LOW"); break;
    case DS1307_HIGH:    Serial.println("SQW = HIGH"); break;
    case DS1307_1HZ:    Serial.println("SQW = 1Hz"); break;
    case DS1307_4096HZ:  Serial.println("SQW = 4096Hz"); break;
    case DS1307_8192HZ:  Serial.println("SQW = 8192Hz"); break;
    case DS1307_32768HZ: Serial.println("SQW = 32768Hz"); break;
    default: Serial.println("SQW = Unknown"); break;
    }*/
}
void loop()
{
                                           
  aktualnyCzas = millis(); //Pobierz liczbe milisekund od startu, zamiast delay
  if (aktualnyCzas - zapamietanyCzasZegar >= 1000UL) {    //Jeśli różnica wynosi ponad 1 sekundę, zamiast delay
    zapamietanyCzasZegar = aktualnyCzas;                //Zapamietaj aktualny czas, zamiast deay
                                                        //wyświetlanie czasu
      dt = clock.getDateTime();
              display.clear();   
              display.showNumberDec(dt.hour,false,2,0);
              display.showNumberDec(dt.minute,false,2,3);
}
}

Temperatura która działa.:
#include <OneWire.h>
#include <DallasTemperature.h>
#include <TM1637Display.h>

#define ONE_WIRE_BUS 8 //Digital Pin to connect the DS18B20 Sensor
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
DeviceAddress sensor1;
TM1637Display display(2,3);
const uint8_t DEGREES[] = {
  0x0, 0x0,
  SEG_A | SEG_B | SEG_G | SEG_F,    // Degree Symbol
  SEG_A | SEG_F | SEG_E | SEG_D,    // C
  };
unsigned int temperature = 0;
byte PreviousValue = 0;

void setup()
{
      sensors.begin();
      display.setBrightness(7);      // set display to maximum brightness

      if (!sensors.getAddress(sensor1, 0))
      {               
        Serial.println("Sensor not found!");
      }
}

void loop()
{
        //Zażądaj danych czujnika
        sensors.requestTemperatures();
        int tempC = sensors.getTempC(sensor1); //Read temperature of DS18B20 Sensor
           
            if(tempC != PreviousValue)
            {
              PreviousValue = tempC;
              display.setSegments(DEGREES); //Display the Variable value
              display.showNumberDec(tempC,false,2,0);
              delay(2000);
            }                     
}
 
Odpowiedź
  


Wiadomości w tym wątku
Wyswietlacz 7 segmentowy + db18b20 - przez hazi18 - 02-12-2017, 18:52
RE: Wyswietlacz 7 segmentowy + db18b20 - przez adix - 02-12-2017, 23:27
RE: Wyswietlacz 7 segmentowy + db18b20 - przez krn78 - 04-12-2017, 10:28
RE: Wyswietlacz 7 segmentowy + db18b20 - przez krn78 - 05-12-2017, 11:28
RE: Wyswietlacz 7 segmentowy + db18b20 - przez krn78 - 06-12-2017, 21:08
RE: Wyswietlacz 7 segmentowy + db18b20 - przez krn78 - 20-12-2017, 13:17
RE: Wyswietlacz 7 segmentowy + db18b20 - przez ANT - 22-12-2017, 20:36
RE: Wyswietlacz 7 segmentowy + db18b20 - przez ANT - 28-12-2017, 17:36
RE: Wyswietlacz 7 segmentowy + db18b20 - przez ANT - 28-12-2017, 22:31
RE: Wyswietlacz 7 segmentowy + db18b20 - przez ANT - 29-12-2017, 21:18
RE: Wyswietlacz 7 segmentowy + db18b20 - przez ANT - 30-12-2017, 16:34
RE: Wyswietlacz 7 segmentowy + db18b20 - przez krn78 - 15-01-2018, 13:35
RE: Wyswietlacz 7 segmentowy + db18b20 - przez es2 - 10-04-2018, 23:04
RE: Wyswietlacz 7 segmentowy + db18b20 - przez ANT - 31-12-2017, 18:06
RE: Wyswietlacz 7 segmentowy + db18b20 - przez es2 - 10-05-2018, 10:32
RE: Wyswietlacz 7 segmentowy + db18b20 - przez es2 - 10-05-2018, 15:10
RE: Wyswietlacz 7 segmentowy + db18b20 - przez kula35 - 23-02-2020, 21:16

Skocz do:


Przeglądający: 4 gości