PHP Serial e comunicazione con Arduino
salve tutti,
sto lavorando ad un progetto per la scuola con arduino uno, il quale si interfaccia con un sito in php (tutto questo in locale).
il tutto funziona correttamente se il codice php invia un singolo carattere o cifra (es.: 1, 2, 3... oppure a, b, c...) ad arduino e mi fa accendere/spegnere il led correttamente.
il problema viene quando voglio inviare una stringa o un numero intero ad arduino, ovviamente imposto sia lo sketch che il codice in php con la stessa variabile, esempio: "100".
il monitor seriale di arduino mi restituisce seguenti valori (che è il codice ascii): 49 48 48
invece di "led accesso"
vi posto il codice della pagina in php:
e il codice di arduino:
questo è il codice che dovrebbe funzionare ma arduino riconosce un carattere alla volta.
spero possiate aiutarmi presto,
grazie anticipatamente!
(spero di aver messo tutto ciò che vi serve per capire il mio problema)
sto lavorando ad un progetto per la scuola con arduino uno, il quale si interfaccia con un sito in php (tutto questo in locale).
il tutto funziona correttamente se il codice php invia un singolo carattere o cifra (es.: 1, 2, 3... oppure a, b, c...) ad arduino e mi fa accendere/spegnere il led correttamente.
il problema viene quando voglio inviare una stringa o un numero intero ad arduino, ovviamente imposto sia lo sketch che il codice in php con la stessa variabile, esempio: "100".
il monitor seriale di arduino mi restituisce seguenti valori (che è il codice ascii): 49 48 48
invece di "led accesso"
vi posto il codice della pagina in php:
code: [select]
<?php
error_reporting(e_all);
ini_set("display_errors", 1);
define("port","/dev/ttyacm0");
if (isset($_get['action'])) {
include "phpserial.php";
$serial = new phpserial;
$serial->deviceset(port);
$serial->confbaudrate(9600);
$serial->confparity("none");
$serial->confcharacterlength(8);
$serial->confstopbits(1);
$serial->confflowcontrol("none");
$serial->deviceopen();
if ($_get['action'] == "on") {
$serial->sendmessage('100');
} else if ($_get['action'] == "off") {
$serial->sendmessage('101');
}
$read = $serial->readport();
print $read;
$serial->deviceclose();
}
?>
<!doctype html public "-//w3c//dtd html 4.01 transitional//en"
"http://www.w3.org/tr/html4/loose.dtd">
<html>
<head>
<meta charset="utf-8">
<title>test arduino</title>
</head>
<body>
<br>
<h1>test arduino</h1>
<a href="<?=$_server['php_self'] . "?action=on" ?>">
<button style="width:100px""><h1>on</h1></button></a>
<a href="<?=$_server['php_self'] . "?action=off" ?>">
<button style="width:100px""><h1>off</h1></button></a>
</body>
</html>
e il codice di arduino:
code: [select]
int led = 13;
int val;
void setup() {
pinmode(led,output);
serial.begin(9600);
}
void loop () {
if (serial.available() > 0) {
val = serial.read();
if (val == '100') {
serial.print(val);
digitalwrite(led,high);
serial.println("led acceso");
}
else if (val == '101) {
digitalwrite(led,low);
serial.println("led spento");
}
else {
serial.println(val, dec);
}
}
}
questo è il codice che dovrebbe funzionare ma arduino riconosce un carattere alla volta.
spero possiate aiutarmi presto,
grazie anticipatamente!
(spero di aver messo tutto ciò che vi serve per capire il mio problema)
ti invitiamo presentarti qui: http://forum.arduino.cc/index.php?topic=113640.0
e leggere il regolamento: http://forum.arduino.cc/index.php?topic=149082.0
- qui una serie di schede xxxpighi per collegamenti elettronici vari: http://forum.arduino.cc/index.php?topic=146152.0
- qui le pinout delle varie schede xxxpighi: http://forum.arduino.cc/index.php?topic=151646.0
- qui una serie di link utili: http://forum.arduino.cc/index.php?topic=126861.0
e leggere il regolamento: http://forum.arduino.cc/index.php?topic=149082.0
- qui una serie di schede xxxpighi per collegamenti elettronici vari: http://forum.arduino.cc/index.php?topic=146152.0
- qui le pinout delle varie schede xxxpighi: http://forum.arduino.cc/index.php?topic=151646.0
- qui una serie di link utili: http://forum.arduino.cc/index.php?topic=126861.0
Arduino Forum > International > Italiano > Software (Moderator: leo72) > PHP Serial e comunicazione con Arduino
arduino
Comments
Post a Comment