Iskramini подружить с ethernet w5500

Тема в разделе "Arduino & Shields", создана пользователем Фархад, 29 авг 2021.

  1. Фархад

    Фархад Нерд

    Привет всем! Чет не получается у меня никак, есть модуль Ethernet, одеваю его на ArduinoUno все работает. Снимаю его, подключаю по проводам к Iskra Mini:
    +5В Mini = +5В шилда,
    Gnd Mini = Gnd шилда
    SPI:
    10 (SS) Mini = CS шилда,
    11 (MOSI) = MOSI шилда,
    12 (MISO) = MISO шилда,
    13 (SCK) = SCK шилда.
    Запускаю проект - не работает... Синий светодиод питания горит. А Mini не слышит шилду... Что не так?
     
  2. b707

    b707 Гуру

    вот это вот:
    - точно?

    CS шилда совсем необязательно должен быть на SS пине, он может быть на любом другом.
    Найдите схему шилда и посмотрите сами или дайте ссылку сюда
    И еще дайте ссылку на библиотеку и код
     
  3. parovoZZ

    parovoZZ Гуру

    Куда подключается Chip Select - прописано в коде. В общем случае - на абсолютно любой пин.
     
  4. Фархад

    Фархад Нерд

  5. SergeiL

    SergeiL Оракул Модератор

    А зачем искра мини?
    Есть же Ethernet шилды под мини, а для Амперковского проще на искру поставить. Нет?
     
  6. parovoZZ

    parovoZZ Гуру

    Это значит к любому пину.

    он и управляется из кода. AVR старых версий не умеют аппаратно управлять пином CS в режиме мастера SPI. Пин SS - это для перевода АППАРАТНО ПРИНУДИТЕЛЬНО блока SPI в режим SLAVE. Поэтому пин SS необходимо или переводить на выход и так с ним и работать, или на вход, но обязательно с подтяжкой к плюсовой шине и не трогать его.
     
  7. Фархад

    Фархад Нерд

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

    Мне нравится этот вариант - перевести на выход и так с ним и работать )) Я правильно понимаю, что 10ю ногу на Мини я перевожу на выход и подключаю ее к SS на модуле?
    Понимаю, что SPI позволяет работать с несколькими устройствами, как раз выбирая ногой с кем сейчас общаться будет. В моем проекте такое устройство одно - эта шилда. Нога Reset шилды в этом процессе нигде не задействована же?

    На SS контакт шилды подаю 5В, это заставит аппаратно работать шилду в режиме slave, верно понимаю?
     
    Последнее редактирование: 1 сен 2021
  8. parovoZZ

    parovoZZ Гуру

    Не надо путать SS - Slave Select с CS - Chip Select. Первый переводит SPI в режим слейва и есть только у устройств, способных работать как мастер. Второй говорит подчиненному устройству, что сейчас с ним будут общаться.
     
  9. Unixon

    Unixon Оракул Модератор

    Фото всей штуки в сборе покажите.
     
  10. Фархад

    Фархад Нерд

    Это я пытаюсь повторить все контакты, которые не пины IO, чтобы потом отключением проверять какой он еще пин просит. Задействовал ISP колодку, + всю колодку Power, и продублировал еще пины с 10 по 13... Не хочет никак стартовать...
    [​IMG]
    https://ibb.co/s1Z421j

    А так он работает нормально https://ibb.co/HCF6qLr
    [​IMG]
     
    Последнее редактирование: 2 сен 2021
  11. SergeiL

    SergeiL Оракул Модератор

    А на IOREF шилда вы подали +5В?
     
  12. Фархад

    Фархад Нерд

    Не, до IOREF не добрался, ща попробовал, пока тишина
    https://ibb.co/njSqmgR
    Возможно еще какие-то пины пропускаю? от ISP колодки что-то требуется подключать? или достаточны с 10 по 13 пин взять? И еще +3.3В нужны ли ей?
     
  13. SergeiL

    SergeiL Оракул Модератор

    Вы подключаете 11,12,13 на шилде, а я не уверен, что они соединены с разъемом ICSP шилда.
    По схеме этого нет. Подключайте Искру к ICSP разъему шилда.
     
    Последнее редактирование: 2 сен 2021
  14. Фархад

    Фархад Нерд

    Действительно, пощупал 11-13 ноги и они висящие, ни к чему не разведены. Подключил через ICSP, добавил ioref, reset, 3.3B, 5B, GND, 10pin. И никак не хочет стартануть... прям какая-то мистика...
     
  15. Фархад

    Фархад Нерд

    Я уже стал сомневаться, может в коде что-то не так делаю... Код висит на строке Ethernet.begin(mac), если ее пропустить и задать явно IP
    Ethernet.begin(mac, ip, myDns, myGw, mySubNet); то при чтении полученного адреса в ответ приходит 0.0.0.0. Все таки шилда не хочет работать?

    Код (C++):
    #include <Ethernet2.h>

    byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xEE };

    // Set the static IP address to use if the DHCP fails to assign
    IPAddress ip(192, 168, 0, 9);
    IPAddress myGw(192, 168, 0, 1);
    IPAddress mySubNet(255, 255, 255, 0);
    IPAddress myDns(192, 168, 0, 1);
    EthernetClient client;

    void setup() {
      Serial.begin(9600);

      // Отладка - ждать пока Порт откроется
      while (!Serial) {
        ; // wait for serial port to connect. Needed for Leonardo only
      }

      Serial.println("Start");
      delay(1000);

      Serial.println("DHCP Search");
      // start the Ethernet connection:

      if (Ethernet.begin(mac) == 0) {
        Serial.println("Failed to configure Ethernet using DHCP");
        Ethernet.begin(mac, ip, myDns, myGw, mySubNet);
        delay(3000);
      }

      Serial.print("My IP address: ");
      int idx = 0;
      //Перебираем 3 байта. Каждый байт значение 255
      for (byte thisByte = 0; thisByte < 4; thisByte++) {
        idx = idx + 4;
        Serial.print(Ethernet.localIP()[thisByte], DEC);
        Serial.print(".");
      }
      delay(1000);
    }

    void loop() {
      // put your main code here, to run repeatedly:
      Serial.println("Begin prog");
      delay(1000);
    }
    И все таки шилда... одел опять на контроллер - работает. Получила IP от DHCP
     
    Последнее редактирование: 5 сен 2021
  16. SergeiL

    SergeiL Оракул Модератор

    Точно с ICSP не перепутаны подключения на ардуино?
    Прозвоните по Уно на какие пины заходят, может зеркально подключено?
     
  17. Un_ka

    Un_ka Гуру

    Как-то не правильно у вас фото вставляется. Я выбрал BB-код полноразмерного со ссылкой.
    [​IMG]
     
  18. Фархад

    Фархад Нерд

    Может есть какое-то ограничение в длине/сечении проводов для ISP ? У меня уже просто мысли закончились, я уже все что можно зацепил проводами с колодок на колодки, не работает... Только когда она одета на контроллер - работает... Ну бред какой-то же
     
  19. Фархад

    Фархад Нерд

    О! Вставилась ) Я уже отцеплял и снова прицеплял провода, каждый раз проверяя последовательность и цвет, тож была мысль может в зеркале дело.. Но нет, одну над другой располагаю и проверяю что все контакты идут верно[​IMG]
     
  20. Un_ka

    Un_ka Гуру

    Прозвоните проводки в отдельности и как соединения в сборе. У меня в своё время синие провода из стартового набора не имели контакта.