Я работаю над проектом с Arduino UNO. Моя задача - получить данные от Arduino и сохранить их в базе данных с помощью PHP (во-первых, я пытаюсь получить данные в php-коде, сохранение в базу данных довольно просто).Извлечение данных из Arduino UNO через USB COM PORT
Я использую операционную систему Windows. Использование WAMP, версия php: 5.5.12
Проблема заключается в следующем: я не могу понять, как правильно читать данные через COM-порт.
Arduino Пример кода:
float temp;
int tempPin = 0;
void setup()
{
Serial.begin(9600);
temp = analogRead(tempPin);
temp = temp * 0.48828125;
Serial.print(temp);
}
void loop()
{
}
PHP код позади (Arduino использует COM3):
<?php
exec("MODE COM3: BAUD=9600 PARITY=N DATA=8 STOP=1");
$portAddress = 'COM3:';
// Open connection on port
$port = fopen($portAddress, 'rb+');
stream_set_timeout($port, 0, 100);
stream_set_blocking($port,0);
// Necessary when the Arduino reset after the connection
sleep(2);
$msg = fread($port, 1);
// Close connection
fclose($port);
echo $msg;
?>
проблема заключается в том, что когда я первый запустить код PHP, похоже, что он зациклился не останавливаться и не открывать соединение. Если я попытаюсь обновить страницу, я получу
Я попытался найти другие вопросы на форуме, но я не смог найти подобную ситуацию. Может ли кто-нибудь привести меня к решению о принятии значения в php-коде?
Я попробую сегодня вечером и дам вам мои результаты. – Deividas
Написал код в цикл. Althou not Serial.write, но Serial.println. Ран, как администратор, но не повезло. Еще одна проблема – Deividas