Forums
come usare pulsanti - Printable Version

+- Forums (http://www.miupanel.com/forum)
+-- Forum: μPanel (http://www.miupanel.com/forum/forumdisplay.php?fid=1)
+--- Forum: ITA - Domande e discussioni sul sistema μPanel (http://www.miupanel.com/forum/forumdisplay.php?fid=13)
+--- Thread: come usare pulsanti (/showthread.php?tid=295)



come usare pulsanti - Andrea - 07-22-2019

Ciao tutti , sto creando un panello  con i vari pulsanti, ma non riesco a capire come posso mettere un immagine e usarla come pulsante, mi date una dritta? 
Questa è la stringa : {I7.38%18B1;T#0F0*18fi: Aux2;}    
 B1 mi sembra di capire che vada messo per identificare il pulsante, ho sbaglio? nel simulatore non mi da errore mentre se accedo sul panello mi da errore " Error at column 131: invalid character :;
grazie mille

Andrea


RE: come usare pulsanti - migreco - 07-23-2019

(07-22-2019, 06:37 PM)Andrea Wrote: Ciao tutti , sto creando un panello  con i vari pulsanti, ma non riesco a capire come posso mettere un immagine e usarla come pulsante, mi date una dritta? 
Questa è la stringa : {I7.38%18B1;T#0F0*18fi: Aux2;}    
 B1 mi sembra di capire che vada messo per identificare il pulsante, ho sbaglio? nel simulatore non mi da errore mentre se accedo sul panello mi da errore " Error at column 131: invalid character :;
grazie mille

Andrea

Prova ad allegare il codice... comunque si....devi testare #B10 o #B11 se acceso o spento


RE: come usare pulsanti - Technomaker - 07-25-2019

Ciao,
se ti va bene usare un "interruttore" (il cui stato cambia in automatico appena ci clicchi sopra), puoi usare l'OGGETTO SWITCH versione "custom" (cioè la "sintassi n. 2" spiegata nella pagina dell'oggetto switch).
Se uso l'ID 1 per lo switch, ho:

{W1M:1:7.36,7.38;T#0F0*18fi: Aux2;}


Se invece vuoi usare un "pulsante" (il cui stato devi aggirnarlo tu), puoi usare un oggetto LED Custom (cioè la "sintassi n. 2" spiegata nella pagina dell'oggetto LED) a cui però vai a definire un EVENTO di "click" (spiegato nella pagina "design principles") definito col simbolo "."
Se quindi, per esempio assegno l'ID 5 all'evento:

{{.5L1M*18:1:7.36,7.38;}|{T#0F0*18fi: Aux2;}}

Appena clicchi sul led, il modulo ti invia la stringa: "#.EVT:5:1" e tu dovrai andare quindi a modificare lo stato del led. Per esempio, se il nuovo stato è '1', allora invii un messaggio del tipo: #L11;

Ti ricordo che puoi usare il monitor seriale integrato nell'app per vedere i messaggi che il modulo trasmette verso il tuo micro.



RE: come usare pulsanti - Andrea - 07-25-2019

ciao e grazie a tutti domani provo e vi aggiorno


RE: come usare pulsanti - Andrea - 08-04-2019

perfetto ci sono riuscito, bene ora mi trovo con un altra difficoltà, come posso dire al panello upanel che se premo un pulsante da un quadro fisico mi dia il led spento o acceso, perche posso accendere  e spegnere il led sia da upanel che panello fisico


RE: come usare pulsanti - Dok - 08-06-2019

il pusante deve essere messo a monte del relè-interruttore, cioè collegato direttamente ad arduino che si occuperà di controllare l'uscita del pin specifico che accende o spegne il led.


RE: come usare pulsanti - franti - 04-26-2020

ho iniziato da poco a "maneggiare" il MiuPanel, ma mi sono bloccato sulla gestione dei pulsanti.

in particolare non riesco a gestire l'evento sulla pressione/click di un semplice button.

come si può vedere nel semplice sketch arduino allegato imposto un led a 7 segmenti ed un pulsante.

Ad inviare il cambio di stato sul led non risulta un problema,
ma nella ricezione del msg (evento) dal pulsante non riesco a capire dove sbaglio, potete aiutarmi . Grazie.

void setup() {
// Initialize Serial Port
Serial.begin(57600);
// Let's uPanel start
delay(3000);
// Discharge old partial messages
Serial.println("");
// Enable real-time response
Serial.println("$PING 200");
// Send Panel (Single Green LED, 150% size on new line with text Blinking)
Serial.println("$P:L15:0;/*40B1fb:+;");
}
void loop() {
String Msg;
int contatore=0;
int c;
while ((c = Serial.read()) > '\n') Msg += (char) c; // Read incoming chars, if any, until new line
if (c == '\n') // is message complete?
{
if (Msg.equals("#B1P")) // has Button 1 been pushed?
{
contatore=contatore+1;
int d1=contatore %10;
Serial.print("#L1"); // Update message 1 text:
Serial.println(d1,DEC); // send the counter value
}
Msg = "";
}
}


RE: come usare pulsanti - Technomaker - 04-26-2020

Ciao franti,
le seguenti variabili:

String Msg;
int contatore=0;

vanno definite fuori dal loop(), in altri termini devi definirle come variabili globali. Altrimenti il contatore viene azzerato continuamente.
Ciao