我的服务器上有一个PHP代码,准备将数据发送到Arduino,就在这里
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "myelecdb";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "SELECT reading FROM elecdata";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
$backdata = $row["reading"];
}
} else {
echo "0 results";
}
$conn->close();
echo $backdata;
?>
这是应该从PHP文件获取数据的Arduino代码
#include <ESP8266HTTPClient.h>
#include <ESP8266WiFi.h>
#include <WiFiClient.h>
#include <ESP8266WebServer.h>
#include <ESP8266mDNS.h>
#define PULSE_PIN D2 //gpio4
float totalreading;
char ssid[] = "MYWIFI";
char pass[] = "12345678USK";
int status = WL_IDLE_STATUS;
void setup() {
Serial.begin(9600);
while (status != WL_CONNECTED) {
Serial.print("Attempting to connect to Network named: ");
Serial.println(ssid);
status = WiFi.begin(ssid, pass);
delay(10000);
}
pinMode(PULSE_PIN, INPUT);
}
void loop() {
digitalWrite(PULSE_PIN, HIGH);
delay(totalreading);
digitalWrite(PULSE_PIN, LOW);
delay(totalreading);
}
并且当arduino开机时,我需要将$ backdata变量数据分配给arduino中的totalreading变量。 arduino上电时,该操作只能运行一次。因此,我认为此过程应在arduino代码的设置功能内完成。有帮助吗?
这正是我要正确执行的操作。我观看了本教程系列,它帮助我配置了网页和数据库。但是我在arduino方面遇到了一个错误,因此,如果您能解决它,我相信它会起作用。我得到的错误:Arduino Iot Project parseObject() failed