#1 2017-02-06 12:15:12

VaDoSiQ
Учасник
З Ukraine
Зареєстрований: 2017-02-06
Повідомлень: 6

Помогите с запросом.

Здравствуйте. Есть скетч отправки данных на сервер с платы ENC28J60.
Собственно скетч работает и отправляет данные, которые я ему задаю.
Вот сам скетч:
#include <EtherCard.h>
static byte mymac[] = { 0x74,0x69,0x69,0x2D,0x30,0x31 };

byte Ethernet::buffer[700];
static uint32_t timer;

const char website[] PROGMEM = "example.com";

static void my_callback (byte status, word off, word len) {
  Serial.println("----------------------");
  Ethernet::buffer[off+300] = 0;
  Serial.print((const char*) Ethernet::buffer + off);
  Serial.println();
  Serial.println("----------------------");
}

void setup () {
  Serial.begin(9600);
  Serial.println("[Arduino Client]");

  if (ether.begin(sizeof Ethernet::buffer, mymac) == 0)
    Serial.println( "Failed to access Ethernet controller.");
  if (!ether.dhcpSetup())
    Serial.println("Failed DHCP.");

  ether.printIp("IP:  ", ether.myip);
  ether.printIp("GATEWAY:  ", ether.gwip); 
  ether.printIp("DNS: ", ether.dnsip); 

  if (!ether.dnsLookup(website))
    Serial.println("Failed DNS.");
   
  ether.printIp("SERVER: ", ether.hisip);
}

void loop () {
  ether.packetLoop(ether.packetReceive());
  if (millis() > timer) {
    timer = millis() + 60000;
    ether.browseUrl(PSTR("/arduino.php?value=54321"), "bar", website, my_callback);
  }
}
Как видите, в функции
ether.browseUrl(PSTR("/arduino.php?value=54321"), "bar", website, my_callback);
После /arduino.php?value= идут мои значения.
Но у меня есть самодельный термистор, сделанный из обычной термопары и есть к нему функция, с помощью которой Arduino получает данные о температуре.
Вопрос: Как мне в отправке данных, записать значения переменной, после вот этого кода: /arduino.php?value=$var
Скетч термистора:
#include <math.h> //Библиотека для выполнения математических операций.
float Thermometer(float RawADC) {
  float Temperature;  // Переменная для экономии места.
  Temperature = 1.25*(480 - RawADC); //Формула вычисления реальной температуры.
  return Temperature;
}
void setup() {
  Serial.begin(9600); //Открываем порт на скорости 9600 бит/c.
}
void loop() {
  float Temperature;
  Temperature = Thermometer(analogRead(5));
  Serial.print("Temperature: ");
  Serial.println(Temperature,0);
  Serial.println(analogRead(5));
 
  delay(1000);
}
Использую библиотеку EtherCard.
Буду благодарен за наглядный пример в моём коде. Так как я в ардуинке, пока полный ноль (:

Неактивний

#2 2017-02-09 12:17:28

Panzerfunker
Учасник
Зареєстрований: 2016-10-28
Повідомлень: 13

Re: Помогите с запросом.

отправить то легко ..вам нужно будет потом на сервере обработчик приема кода тоже доделать чтобы читал и второе значение.

Неактивний

Швидке повідомлення

Введіть повідомлення і натисніть Надіслати

Підвал форуму