0 голосов
Прошу помочь решить проблему по передаче значения сигнала с  датчика температуры d18b20 в базу MySQL.
Используется плата Arduino Uno c датчиком температуры и Ethernet Shield. Датчик измеряет и показывает значение температуры, присвоена переменная t_home. Развернута БД MySQL, Arduino коннектится к серверу, но передает значение в таблицу БД равное ноль.
ниже привожу фрагмент кода проблемного места:

    Serial.print("t_home=");
    Serial.println (t_home);
{
  Serial.println("Recording data.");
  char INSERT_SQL[] = "INSERT INTO homeheat.ds18b20 (t_home) VALUES ('t_home')";
  MySQL_Cursor *cur_mem = new MySQL_Cursor(&conn);  
  cur_mem->execute(INSERT_SQL);                             
  delete cur_mem;
}

Прошу подсказать, что сделано не так и где  посмотреть, как это можно сделать правильно. Интернет весь перерыл, нашел вот здесь объяснение (https://translated.turbopages.org/proxy_u/en-ru.ru.6476ce73-67d70216-cb9a32d9-74722d776562/https/stackoverflow.com/questions/35414530/insert-arduino-variable-value-into-mysql-table), но сделав через "query" не помогло, Arduino зависает и не передает данные, и не коннектится к БД.
Пробовал законектитьcя  через phpmyadmin, писал другой код, но не соединяется с локалхост по http. В итоге остановился на прямом подключение по порту 3306 к БД. В чем причина, я так и не понял, бредмауэр на локалхосте был отключен. Вообщем, коннект происходит только напрямую. Поэтому нужно решение, как значение переменной t_home передать через INSERT в БД.
(2 баллов) 1

Пожалуйста, войдите или зарегистрируйтесь чтобы ответить на этот вопрос.

Добро пожаловать на Бредборд! Сайт вопросов и ответов на тему Arduino, Raspberry Pi и хоббийной электроники в целом. Цель Бредборда — быть максимально полезным. Поэтому мы строго следим за соблюдением правил, боремся с холиворами и оффтопиком.
  1. KrSV

    20 балл(ов)

  2. BUM

    8 балл(ов)

  3. Reednik

    6 балл(ов)

  4. Egor4ikov

    4 балл(ов)

  5. Blue_Kod

    4 балл(ов)

  6. Dimchik_767

    4 балл(ов)

...