Hallo zusammen,
vorab ich bin etwas neu mit Arduino und Nextion
Ich möchte das auf mein Nextion Display der aktuelle Temp. Wert anzeigt ohne Nextion.lib.
Leider bekomme ich das nicht hin, auch habe ich viele Foren durchgemacht und versucht und getan, doch leider ohne Erfolg.
Hardware:
Arduino Uno:
Nextion 3,5 Zoll
Tempfühler Tp36
Arduin IDE Code:
#include <Wire.h>
#include "pixel.h"
int tmp36 = A0;
int sensorwert;
int temperatur = 0;
String daten_display = "";
int ledrot = 0;
int ledgrun = 0;
int radio = 0;
int radioonoff = 2;
int farben = 0;
void setup() {
Serial.begin(9600);
strip.begin();
strip.show();
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
pinMode(10, OUTPUT);
pinMode(11, OUTPUT);
digitalWrite(8, LOW);
digitalWrite(9, LOW);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
}
void loop() {
sensorwert=analogRead(tmp36);
temperatur = map(sensorwert,0, 410, -50, 150);
float tempar = temperatur;
char outstr[15];
// String command = "temp.txt=\""+String(temperatur)+"\""; ***Alter Versuch
Serial.println(daten_display);
if(Serial.available() > 0)
{
daten_display += char (Serial.read());
}
if (daten_display == "tempa"){
dtostrf(tempar, 1, 1, outstr);
Serial.print(F("Home.temp.txt=\""));
Serial.print(outstr);
Serial.write('"');
Serial.write(0xFF);
Serial.write(0xFF);
Serial.write(0xFF);
daten_display="";
}
if (daten_display == "pixan"){
ledrot = 1;
Serial.write(0xFF);
Serial.write(0xFF);
Serial.write(0xFF);
daten_display="";
}
if (daten_display == "pixaus"){
ledrot = 0;
Serial.write(0xFF);
Serial.write(0xFF);
Serial.write(0xFF);
daten_display="";
}
if (daten_display == "lichtan"){
ledgrun = 1;
Serial.write(0xFF);
Serial.write(0xFF);
Serial.write(0xFF);
daten_display="";
}
if (daten_display == "lichtaus"){
ledgrun = 0;
Serial.write(0xFF);
Serial.write(0xFF);
Serial.write(0xFF);
daten_display="";
}
if (daten_display == "radioan" && radioonoff == 2){
radioonoff = 1;
steuerung();
Serial.write(0xFF);
Serial.write(0xFF);
Serial.write(0xFF);
daten_display="";
}
if (daten_display == "radioan" && radioonoff == 1){
radioonoff = 1;
steuerung();
Serial.write(0xFF);
Serial.write(0xFF);
Serial.write(0xFF);
daten_display="";
}
if (daten_display == "radioaus" && radioonoff == 1){
radioonoff = 2;
steuerung();
Serial.write(0xFF);
Serial.write(0xFF);
Serial.write(0xFF);
daten_display="";
}
if (daten_display == "radioaus" && radioonoff == 2){
Serial.write(0xFF);
Serial.write(0xFF);
Serial.write(0xFF);
daten_display="";
}
if (ledrot == 0){
digitalWrite(8, LOW);
Fire(0,0,0);
}
if (ledrot == 1){
digitalWrite(8, HIGH);
Fire(55,120,15);
}
if (ledgrun == 0){
digitalWrite(9, LOW);
}
if (ledgrun == 1){
digitalWrite(9, HIGH);
}
}
void steuerung(){
switch (radioonoff){
case 0: {
digitalWrite(10, LOW);
break;
}
case 1: {
digitalWrite(10, HIGH);
delay(200);
digitalWrite(10, LOW);
break;
}
case 2: {
digitalWrite(10, HIGH);
delay(1500);
digitalWrite(10, LOW);
break;
}
}
}
Nextion Bild
Kann mir vielleicht einer Helfen ?
Vll bin ich einfach zu blöd und übersehe was
Danke und liebe Grüße
Wanhen