a100f
December 4, 2023, 10:48pm
1
Hola, buenas tardes, requiero de su asesoramiento, estoy trabajando con arduino mega 2560 y pantalla Nextion, cuando subo los archivos solo me lee la temperatura en digitos y no me lee la temperaturaen el Gauge, les comparto el archivo para que me muestren cual es el error. muchas gracias.
#include <OneWire.h>
#include <DallasTemperature.h>
#include "Nextion.h"
#define pot A0
#define ONE_WIRE_BUS_1 3
#define ONE_WIRE_BUS_2 5
OneWire oneWire_amb(ONE_WIRE_BUS_1);
OneWire oneWire_cont(ONE_WIRE_BUS_2);
DallasTemperature TempAmb(&oneWire_amb);
DallasTemperature TempCont(&oneWire_cont);
//crear un objeto del componente
NexNumber Tempcontroller = NexNumber(7, 3, "Tempcontroller");
NexGauge gaugecont = NexGauge(7, 2, "gaugecont");
void setup() {
nexInit();
TempAmb.begin();
TempCont.begin();
}
void loop() {
int tempcont = 0;
TempCont.requestTemperatures();
tempcont = TempCont.getTempCByIndex(1); //obtener temperatura Controlador
Tempcontroller.setValue(tempcont);
gaugecont.setValue(map(tempcont,0,1023,0,180));
}
Do not duplicate topics, it is against the forum rules.
In the category you posted the language is English.
Buenas tardes, estoy usando Arduino Mega 2560 y una pantalla Nextion, el detalle que implemente el codigo al subirlo me marca temperatura de la lectura digital pero no asi de la lectura del gauge, que estara mal? Alguien que me pueda asesorar, muchas gracias les comparto el codigo
#include <OneWire.h>
#include <DallasTemperature.h>
#include "Nextion.h"
#define pot A0
#define ONE_WIRE_BUS_1 3
#define ONE_WIRE_BUS_2 5
OneWire oneWire_amb(ONE_WIRE_BUS_1);
OneWire oneWire_cont(ONE_WIRE…
a100f
December 5, 2023, 1:05am
3
Sorry, I had missed the first post, but it was already solved with the following modification to the code.
#include <OneWire.h>
#include <DallasTemperature.h>
#include "Nextion.h"
#define ONE_WIRE_BUS_1 3
#define ONE_WIRE_BUS_2 5
OneWire oneWire_amb(ONE_WIRE_BUS_1);
OneWire oneWire_cont(ONE_WIRE_BUS_2);
DallasTemperature TempAmb(&oneWire_amb);
DallasTemperature TempCont(&oneWire_cont);
//crear un objeto del componente
NexNumber Tempcontroller = NexNumber(7, 3, "Tempcontroller");
NexGauge gaugecont = NexGauge(7, 2, "gaugecont");
void setup() {
nexInit();
TempAmb.begin();
TempCont.begin();
}
void loop() {
int tempcont = 0;
// TempCont.requestTemperatures();
// tempcont = TempCont.getTempCByIndex(1); //obtener temperatura Controlador
// Tempcontroller.setValue(tempcont);
// gaugecont.setValue(map(tempcont,0,1023,0,180));
TempCont.requestTemperatures();
tempcont = TempCont.getTempCByIndex(1); //obtener temperatura Controlador
Tempcontroller.setValue(tempcont);
gaugecont.setValue(tempcont);
//gaugecont.setValue(map(tempcont,0,1023,0,180));
}
pert
December 5, 2023, 2:05am
4
He trasladado su tema de una categoría de idioma inglés del foro a la categoría International > Español @a100f .
En adelante por favor usar la categoría apropiada a la lengua en que queráis publicar. Esto es importante para el uso responsable del foro, y esta explicado aquí la guía "How to get the best out of this forum " .
Este guía contiene mucha información útil. Por favor leer.
De antemano, muchas gracias por cooperar.
a100f:
void loop() {
int tempcont = 0;
TempCont.requestTemperatures();
tempcont = TempCont.getTempCByIndex(1); //obtener temperatura Controlador
Tempcontroller.setValue(tempcont);
gaugecont.setValue(map(tempcont,0,1023,0,180));
}
Ya estas en el foro en español asi que no vuelvas a escribir en inglés
tempcont = TempCont.getTempCByIndex(1); //obtener temperatura Controlador
Lee el valor en °C, de hecho muesetras 28 °C, que pena porque el sensor DS1820 es de 12 bits y con buena precisión te podria mostrar 1 decimal.
a100f
December 7, 2023, 12:25am
6
Gracias, me interesa solo enteros.