#include "SevSeg.h"
#include "Wire.h"
#include <OneWire.h>
#include <DallasTemperature.h>
SevSeg sevseg; //Initiate a seven segment controller object
#define ONE_WIRE_BUS 2
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
int temp = 0;
int total = 0;
int ledState = LOW; // ledState used to set the LED
const int ledPin = 13;
unsigned long previousMillis = 0; // will store last time LED was updated
const long interval = 700; // interval at which to blink (milliseconds)
void setup()
{
pinMode(ledPin , OUTPUT); //definir pin como salida
digitalWrite(ledPin , HIGH);
byte numDigits = 5;
byte digitPins[] = {0, 9, 10, 11, 12};
byte segmentPins[] = {1, 3, 4, 5, 6, 7, 8};
bool resistorsOnSegments = false; // 'false' means resistors are on digit pins
bool updateWithDelays = false; // Default. Recommended
bool leadingZeros = false; // Use 'true' if you'd like to keep the lead
sevseg.begin(COMMON_ANODE, numDigits, digitPins, segmentPins, resistorsOnSegments, updateWithDelays, leadingZeros);
sevseg.setBrightness(90);
sevseg.setNumber(8888);
sevseg.refreshDisplay();
delay(900);
sevseg.blank();
sevseg.refreshDisplay();
}
void loop()
{
unsigned long currentMillis = millis();
sensors.requestTemperatures(); // Send the command to get temperature readings
//temp =((int)(sensors.getTempCByIndex(0)));
temp = 118; // ------------------------------------------------------------- B O R R A R --------------------------------------------------------------------
total = (temp * 10)+9;
if (temp > 109)
{
if (currentMillis - previousMillis >= interval)
{
// save the last time you blinked the LED
previousMillis = currentMillis;
// if the LED is off turn it on and vice-versa:
if (ledState == LOW)
{
ledState = HIGH;
}
else
{
ledState = LOW;
}
}
digitalWrite(ledPin, ledState);
sevseg.setNumber(total);
sevseg.refreshDisplay();
}
else
{
sevseg.setBrightness(90);
sevseg.setNumber(total);
sevseg.refreshDisplay(); // Must run repeatedly
}
}