Все еще не знаю, о чем ваш вопрос ... Тег "arduino" позволяет мне думать, что вы спрашиваете о коде Arduino, но комментарии ниже заставляют меня сомневаться в том, что вы спрашиваете о вещах .NET. Вот предварительный ответ на вопрос, как управлять вещами на стороне Arduino.
Способ 1: использование последовательной связи и прокси
На Arduino я бы просто выводил SQL-запросы через последовательный порт, например:
Serial.begin(115200);
Serial.println("INSERT INTO table_name VALUES (value1, value2, value3,...);");
На стороне сервера (или на стороне компьютера, который вы используете для доступа в Интернет) я написал бы простой скрипт, который открывает соединение с БД и направляет запрос к нему. Это может быть достигнуто либо с помощью команд CLI , либо путем открытия сетевого соединения на заданном порту. Я не использую Windows / .NET и т. Д., Но на платформе GNU / Linux, используя python и mysql, код проверки концепции, который я написал бы, выглядел бы примерно так (BEWARE: UNTESTED!):
import os, serial
self.ser = serial.Serial("/dev/ttyUSB0", 115200)
query = self.ser.readline().strip()
return os.popen("mysql -u<my_usr> -hlocalhost -p<my_pass> -e" + query)
Способ 2: использование сетевого экрана или непосредственно сетевой платы Arduino
Последнее будет отправлено иногда в ближайшее время (см. эту презентацию , если вам интересно об этом). Первый уже доступен . Написание кода для него должно быть очень простым (см. docs здесь). Результат должен быть чем-то вроде (НЕПРОВЕРЕНО):
Serial.begin(<speed>);
Ethernet.begin(<mac_number>, <ip>);
Client client(<server>, <port>);
client.println("GET <path> HTTP/1.0");
while (client.available()) {
char c = client.read();
Serial.print(c);
}
НТН!