Arduino Mega проблема при прошивке

Тема в разделе "Arduino & Shields", создана пользователем LoKeR995, 6 дек 2019.

  1. LoKeR995

    LoKeR995 Нуб

    Добрый день. Написал скетч для мега. Имеется эзернет шилд w5100. Прошиваю работает, после переключения питания перестает просто моргает 13 пин.
     
  2. LoKeR995

    LoKeR995 Нуб

    Код (C++):
    #include <DallasTemperature.h>
    #include <OneWire.h>
    #include <SPI.h>
    #include <Ethernet.h>

    #define ONE_WIRE_BUS 7
    #define TRIG_odver  2
    #define TRIG_tdver  4
    #define ECHO_odver  3
    #define ECHO_tdver  5

    byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
    IPAddress ip(192, 168, 1, 10);
    IPAddress myDns(192, 168, 1, 1);
    IPAddress gateway(192, 168, 1, 1);
    IPAddress subnet(255, 255, 255, 0);

    // telnet defaults to port 23
    EthernetServer server(23);
    bool alreadyConnected = false; // whether or not the client was connected previously

    int dver1 = 0, dver2 = 0, dotvet1 = 0, dotvet2 = 0;

    OneWire oneWire(ONE_WIRE_BUS);
    DallasTemperature sensors(&oneWire);

    void setup(void) {
    Serial.begin(9600);
      //  инициируем как выход TRIG пин
      pinMode(TRIG_odver, OUTPUT);
      pinMode(TRIG_tdver, OUTPUT);
      // инициируем как вход ECHO пин
      pinMode(ECHO_odver, INPUT);
      pinMode(ECHO_tdver, INPUT);

      /********************************************************************************************/
      // initialize the ethernet device
      Ethernet.begin(mac, ip, myDns, gateway, subnet);
      // Check for Ethernet hardware present
      if (Ethernet.hardwareStatus() == EthernetNoHardware) {
        Serial.println("Ethernet shield was not found.  Sorry, can't run without hardware. :(");
        while (true) {
          delay(1); // do nothing, no point running without Ethernet hardware
        }
      }
      if (Ethernet.linkStatus() == LinkOFF) {
        Serial.println("Ethernet cable is not connected.");
      }
      // start listening for clients
      server.begin();
      Serial.print("Chat server address:");
      Serial.println(Ethernet.localIP());
      /*******************************************************************************************/
      sensors.begin();
    }
    void loop(void) {
      // wait for a new client:
      EthernetClient client = server.available();
      if (client) {
        if (!alreadyConnected) {
          client.flush();
          Serial.println("We have a new client");
          alreadyConnected = true;
        }
        if (client.available() > 0) {
          char thisChar = client.read();
          int val1 = random(1, 99), val2 = random(1, 99), val3 = random(1, 99), val4 = random(1, 99), val5 = random(1, 99), val6 = random(1, 99);
          int val7 = random(1, 99), val8 = random(1, 99), val9 = random(1, 99), val10 = random(1, 99), val11 = random(1, 99), val12 = random(1, 99);
          String text = String(val1) + 't' + String(val2) + 't' + String(val3) + 't' + String(val4) + 't' + String(val5) + 't' + String(val6) + 't' + String(val7) + 't' +
                        String(val8) + 't' + String(val9) + 't' + String(val10) + 't' + String(val11) + 't' + String(val2) + 't';
          server.print(text);
        }
      }
    }