Класс Udp переименован в EthernetUdp

Тема в разделе "Arduino & Shields", создана пользователем OkKonstantin, 9 окт 2016.

  1. OkKonstantin

    OkKonstantin Нуб

    Добрый вечер!
    Собираю цветомузыку. При компиляции скетча выскакивает: класс Udp переименован в EthernetUdp.
    Подскажите, как решить вопрос?
    Скетч:

    Код (C++):
    #include <SPI.h>        
    #include <Ethernet.h>
    #include <Udp.h>        
    byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
    byte ip[] = { 192,168,1,177 }; //IP ардуины
    unsigned int localPort = 53412;      // локальный порт
    byte remoteIp[4];
    unsigned int remotePort;
    // буфер для приёма/отправки данных
    char packetBuffer[UDP_TX_PACKET_MAX_SIZE]; //буфер для получения данных по сети
    void setup() {
      Ethernet.begin(mac,ip);
      Udp.begin(localPort);
      for (int i=0; i<10; i++)
      {
        pinMode(i,OUTPUT);
        digitalWrite(i, LOW);
      }
    }
    void loop() {
      // читаем пакеты данных при наличии
      int packetSize = Udp.available();
      if(packetSize)
      {
        memset(packetBuffer, 0, sizeof(packetBuffer)); //обнуляем буфер
        packetSize = packetSize - 8;      // subtract the 8 byte header
        Udp.readPacket(packetBuffer,UDP_TX_PACKET_MAX_SIZE, remoteIp, remotePort);
        for (int i=0; i<10; i++)
        {
          if (packetBuffer[i]=='1')
          {
            digitalWrite(i,HIGH);
          }
          else
          {
            digitalWrite(i,LOW);
          }
        }
      } //if(packetSize)
    }
     
     
    Последнее редактирование: 9 окт 2016
  2. rkit

    rkit Гуру

    Скетч надо выкладывать.
     
  3. OkKonstantin

    OkKonstantin Нуб

    Добавил.
     
  4. rkit

    rkit Гуру

    Это какой-то очень устаревший скетч. Лучше поискать другой.
     
  5. OkKonstantin

    OkKonstantin Нуб

    На "современный" лад его переписать не получится?
     
  6. rkit

    rkit Гуру

    Получится, почему нет. Только я так понимаю, что это часть какого-то обучения. а учиться лучше по современным материалам, не усложняя себе задачу.
     
  7. fogary

    fogary Гик

    Библиотека "Ethernet" содержит класс "EthernetUdp". Попробуйте поменять "#include <Ethernet.h>" и "#include <Udp.h>" местами, может поможет.
    На крайний случай, замените "Udp.h" на "EthernetUdp.h". Пример использования можно глянуть в "UDPSendReceiveString.ino"