Ciao a tutti, chi mi sa dire perchè l'invio dati sul monito seriale mi escono delle righe sbagliate ?
devo correggere o modificare qualcosa per avere i dati giusti ?
questo è quello che mi compare
ON/OFFScale6
6
ON/OFFScale
6
6
6
ON/OFFDisimpegnoSu
6
6
6ON/OFFDisimpegnoSu
6
8
8
6
8
8ON/OFFDisimpegnoSu
6
8
ON/OFFScale8
Avvolte si inseriscono i numeri sulle descrizioni.
questo è lo sketch sono semplici condizioni iff.
//GESTIONE ILLUMINAZIONE PIANO SUPERIORE
#define rele1 2 // relè 1 scale collegato sul pin digitale 2
#define rele2 3 // relè 2 disimpegno collegato sul pin digitale 3
#define rele3 4 // relè 3 camera Davide collegato sul pin digitale 4
#define rele4 5 // relè 4 camera Silvia/Gianluca collegato sul pin digitale 5
#define rele5 6 // relè 5 Bagno collegato sul pin digitale 6
#define rele6 7 // relè 6 Camera Carlo collegato sul pin digitale 7
int pulsante8 = 8; // pulsante scale collegato sul pin digitale 8
int pulsante9 = 9; // pulsante disimpegno collegato sul pin digitale 9
//#define pulsante 10 // pulsante Camera Davide collegato sul pin digitale 10
//#define pulsante 11 // pulsante Camera Silvia/Gianluca collegato sul pin digitale 11
//#define pulsante 12 // pulsante Bagno collegato sul pin digitale 12
//#define pulsante 13 // pulsante Camera Carlo collegato sul pin digitale 13
boolean statoPulsante8 = false; // si userà valPulsante per conservare lo stato del pin di input pulsante scale
boolean statoPulsante9 = false; // si userà valPulsante per conservare lo stato del pin di input pulsante disimpegno
//int valPulsante10 = 0; // si userà valPulsante per conservare lo stato del pin di input pulsante Camera Davide
//int valPulsante11 = 0; // si userà valPulsante per conservare lo stato del pin di input pulsante Camera Silvia/Gianluca
//int valPulsante12 = 0; // si userà valPulsante per conservare lo stato del pin di input pulsante Bagno
//int valPulsante13 = 0; // si userà valPulsante per conservare lo stato del pin di input pulsante Camera Carlo
nto, stato = 1 Rele acceso
String readString;
void setup() {
Serial.begin(9600);
// IMPOSTAI VARI PIN IN OUTPUT
pinMode(rele1, OUTPUT);
pinMode(rele2, OUTPUT);
pinMode(rele3, OUTPUT);
pinMode(rele4, OUTPUT);
pinMode(rele5, OUTPUT);
pinMode(rele6, OUTPUT);
digitalWrite(rele1, HIGH);
digitalWrite(rele2, HIGH);
digitalWrite(rele3, HIGH);
digitalWrite(rele4, HIGH);
digitalWrite(rele5, HIGH);
digitalWrite(rele6, HIGH);
pinMode(pulsante8, INPUT); // imposta il pin 8 pulsante Scale come input
pinMode(pulsante9, INPUT); // imposta il pin 9 pulsante Disimpegno come input
// pinMode(pulsante10, INPUT); // imposta il pin 10 pulsante Camera Davide come input
// pinMode(pulsante11, INPUT); // imposta il pin 11 pulsante Camera Silvia/Gianuca come input
// pinMode(pulsante12, INPUT); // imposta il pin 12 pulsante Bagno come input
// pinMode(pulsante13, INPUT); // imposta il pin 13 pulsante Camera Carlo come input
}
void loop() {
// Verifica se la luce Scale è ON o OFF e aggiorna lo stato del pulsante sul tablet in ON o OFF
int valPulsante8 = digitalRead(pulsante8); // controlla se il pulsante 8 Scale è LOW o HIGH
if (valPulsante8 == LOW){
if (statoPulsante8 == false){
Serial.println("5");// ON Scale
delay(1000);
//Serial.println("ONScale");
statoPulsante8 = true;
delay(1000);
}}
if (valPulsante8 == HIGH) {
statoPulsante8 = false;
Serial.println("6");// OFF Scale
delay(1000);
}
// Verifica se la luce Disimpegno è ON o OFF e aggiorna lo stato del pulsante sul tablet in ON o OFF
int valPulsante9 = digitalRead(pulsante9); // controlla se il pulsante 9 Disimpegno è LOW o HIGH
if (valPulsante9 == LOW){
if (statoPulsante9 == false){
Serial.println("7");// ON Scale
delay(1000);
//Serial.println("ONScale");
statoPulsante9 = true;
delay(1000);
}}
if (valPulsante9 == HIGH) {
statoPulsante9 = false;
Serial.println("8");// OFF Scale
delay(1000);
}
while (Serial.available()) {
delay(3);
char c = Serial.read();
readString += c;
}
// Controlla Se è stato inviato il dato dal tablet per attivare il relè corrispondente "Scale"
if (readString.length() >0) {
Serial.println(readString);
if (readString == "ON/OFFScale")
{
digitalWrite(rele1, LOW);
delay(400);//400
digitalWrite(rele1, HIGH);
delay(500);
}
if (readString == "ON/OFFDisimpegnoSu")
{
digitalWrite(rele2, LOW);
delay(400);//400
digitalWrite(rele2, HIGH);
}
if (readString == "ON/OFFCamDav")
{
digitalWrite(rele3, LOW);
delay(400);//400
digitalWrite(rele3, HIGH);
}
if (readString == "ON/OFFCamSG")
{
digitalWrite(rele4, LOW);
delay(400);//400
digitalWrite(rele4, HIGH);
}
if (readString == "ON/OFFBagnoSu")
{
digitalWrite(rele5, LOW);
delay(400);//400
digitalWrite(rele5, HIGH);
}
if (readString == "ON/OFFCamCar")
{
digitalWrite(rele6, LOW);
delay(400);//400
digitalWrite(rele6, HIGH);
}
readString="";
}
}