Ethernet for the microchips W5500 and ENC28J60. MQTT

Поділитися
Вставка
  • Опубліковано 4 бер 2017
  • Group VK: electronics_in_camera
    Instagram: / electronics_in_focus
    Links to products:
    1) Ethernet module on WIZnet W5500: goo.gl/nQUvm0
    2) Ethernet module on the Microchip ENC28J60: goo.gl/idCXhy
    The project's source code for AVR + W5500 (IAR): bitbucket.org/nadyrshin_ryu/w...
    Source code for STM32 + W5500 (IAR): bitbucket.org/nadyrshin_ryu/w...
    The source for the project for AVR + ENC28J60 (IAR): bitbucket.org/nadyrshin_ryu/e...
    Source code for STM32 + ENC28J60 (IAR): bitbucket.org/nadyrshin_ryu/e...
    Licenses for music:
    Copyright Owner (Created by): "Awards Media Group Limited Partnership" www.dewolfemusic.com/trackdeta...
  • Наука та технологія

КОМЕНТАРІ • 123

  • @infinitykzn4193
    @infinitykzn4193 7 років тому +15

    Обзор супер. Давно пытаюсь сделать корректную связку AVR + ENC28J60 + MQTT. А когда в приложении увидел еще и связку с STM32 радости не было предела:)) Огромное СПАСИБО за такие уроки!!!

  • @JooSphp
    @JooSphp 7 років тому +49

    Лучшее видео, в котором чётко и ясно представлена модель сетевых уровней, спасибо за проделанную работу !
    Однозначно лайк и подписка, с нетерпением жду другие толковые видео по теме связи МК с внешним миром.
    P.S. видео про Wi-Fi модули уже смотрел, хорошие. )

    • @thevitas1
      @thevitas1 7 років тому

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

    • @JooSphp
      @JooSphp 7 років тому +7

      Ты сейчас говоришь о среде передачи данных )
      Не путай это с сетевыми уровнями )

  • @OkBitru
    @OkBitru 7 років тому +1

    Как всегда, очень подробно и хорошо объяснено. Но даже для меня, с утра тяжело :)

  • @user-tm6dy6wt8t
    @user-tm6dy6wt8t 4 роки тому +3

    шикарно объяснил про сетевой стек уровней, как всегда качественный контент!)

  • @Andruhass
    @Andruhass 4 роки тому +1

    Жирнющий лайк за качественное объяснение с графикой. Вот так бы все давали всеобъемлющую и простую к пониманию информацию 👍

  • @Cathodd
    @Cathodd 7 років тому +2

    Хороший обзор я даже не знал про маленькую версию ethernet порта, спасибо)

  • @TheMESSAF
    @TheMESSAF 7 років тому

    Спасибо Руслан, очень доходчиво разъяснил!

  • @Valeriy7D0
    @Valeriy7D0 3 роки тому

    Отличный материал, большое спасибо!

  • @user-bo9cf4em2f
    @user-bo9cf4em2f 6 років тому +1

    Спасибо! Познавательное видео. Помог разобраться с распиновкой enc28j60.

  • @ZachemVoina
    @ZachemVoina Рік тому +1

    Нашел отличия ENC28J60 от W5500 в интернете, но было приятно еще раз послушать различия и вспомнить уровни сетевой модели...
    Спасибо автору. В топ.

  • @kl45gp
    @kl45gp 7 років тому

    как всегда, отличное видео! спасибо.

  • @egorisaenkov3561
    @egorisaenkov3561 2 роки тому

    Автор ты крут. Хорошо подготовился. Лучший видосик

  • @sledleo
    @sledleo 2 роки тому +1

    Топ контент! Детальнее и нагляднее бы по библиотекам

  • @AlexLink-rb5by
    @AlexLink-rb5by 5 років тому

    Спасибо, доступно)))

  • @alexeibelousov3279
    @alexeibelousov3279 6 років тому

    Отличный обзор, заказал себе такие на w5500, правда выглядят по другому

  • @polz0vatele
    @polz0vatele 7 років тому

    спасибо, очень интересные видео

  • @cyberianoid
    @cyberianoid 2 роки тому +1

    00:01:18 *Учась в универе мы эту тему со стеками протоколов проходили только очень поверхностно*
    А изучал я ее по RFC стандартам (rfc791, rfc1180, rfc1122) еще за долго до того как поступил в универ.
    Вот такое у нас образование)) Сам не научишся - никто тебя не научит!

  • @user-ne4zk6xh3s
    @user-ne4zk6xh3s 2 роки тому

    Спасибо за проделанную работу единственный вопрос. Получается транспортный и сетевые протоколы придётся реализовать самому программно (на примере enc28j60 чипа)? Или как понял микрочип предоставляет свою реализацию tcp/ip которой надо пользоваться?

  • @viktormussuri1910
    @viktormussuri1910 7 років тому

    Отлично! Спасибо.

  • @None-sh9sw
    @None-sh9sw 5 років тому +1

    11:39 - Есть еще почему-то не упомянутое решение от Wiznet - W7100 - встроенное PHY+8051 ядро, W7500 и W7500P - Cortex-M0 без и с внешним PHY(P), когда-то был еще W7200 - скрещенный еж с ужем для получения колючей проволоки из STM32F103CB и W5200, соединенных между собой по SPI внутри одного корпуса.

  • @BalabayUA
    @BalabayUA 3 роки тому

    Спс за информацию. Стоит задача данные принятые STM32 по LORA передать в систему умного дома. Буду пробовать вариант с MQTT + W5500

  • @user-cf4pl4yl5l
    @user-cf4pl4yl5l 5 років тому +1

    а на видео какая STM32? по плате видно что STM32f103 48pin. в проекте указана STM32F103VB и размер файла для пошивки лошадиный в С8 версию не влазит

  • @ailcat
    @ailcat Рік тому

    в чипе W5500 стоит ядро Cortex-M0.
    А еще через него нельзя передавать большие пакеты (стандартной длины без проблем) из-за особенностей распределения памяти.

  • @user-md1jl3nv8z
    @user-md1jl3nv8z Рік тому

    Приветствую! Подскажите, Вы писали программы для пк. Для взаимодействие с аппаратной частью пк к примеру RS232, Ethernet, USB, чтобы взаимодействовать с микроконтроллером?

  • @parennasubaru
    @parennasubaru 3 роки тому +1

    На w5500 Получение данных из буфера инициализируются по SPI , или они автоматически уходят и могут быть не приняты при загрузке внешнего устройства ?

  • @namatiev14
    @namatiev14 4 роки тому

    10+10
    спасибо - всё понятно

  • @alexs3057
    @alexs3057 5 років тому

    В описании чипа w5500 однако написано, ядро RTOS с поддержкой TCP/IP

  • @tupoy_ytub_uberi_psevdonim
    @tupoy_ytub_uberi_psevdonim Рік тому

    а на какой версии ИАР созданы проекты? При попытке открыть сыпет ошибками, конечно это не сильно существенная проблема, расковыряю по файлам и пересоберу в кубе.

  • @tehniksit
    @tehniksit 6 років тому

    Спасибо за код. Все работает. Только вот не могу понять как хандлить сообщения? Как использовать функцию которая есть в коде- handle_message()?

  • @pavelb7747
    @pavelb7747 3 роки тому

    Материал примерно 3го курса вуза. Спасибо!

  • @fjkldhakljf
    @fjkldhakljf 6 місяців тому

    Sir your channel is a wealth of info, thank you for adding english subtitles

    • @rnadyrshin
      @rnadyrshin  6 місяців тому

      Thank you. You are welcome

  • @AlexLink-rb5by
    @AlexLink-rb5by 5 років тому

    Я из-за ошибок так и не запустил модуль enc28j60, благо были другие модули(без стабилизатора)

  • @RomanDvoryadkin
    @RomanDvoryadkin 6 років тому

    Несколько лет назад пробовал к уже готовому и отлаженному устройству прикрутить W5100 для опроса по SNMP, но сам модуль зависал 2-3 раза в неделю, решение по-быстрому не нашлось и прицепил RasPi (тогда ещё 1-й только вышел). Учитывая что устройство существовало в единственном экземпляре, разница в цене была несущественна, а удобство и возможности в разы выше. Интересно, а как у W5500 со стабильностью работы?

    • @MrKosukhin
      @MrKosukhin 6 років тому +1

      W5100 Надо периодически сбрасывать. Лучше это делать по каким то признакам. У меня он в очень активной сети, зависает буквально за несколько минут. W5500 у меня есть, но пока не проверял.

  • @Gameplayer55055
    @Gameplayer55055 5 років тому +2

    8p8c вообще-то. Интересует вопрос: можно ли соединить такой с esp8266 и сделать вай-фай роутер типа

    • @rnadyrshin
      @rnadyrshin  5 років тому +1

      тормозной - можно

  • @user-nl1jt9pg5s
    @user-nl1jt9pg5s 4 роки тому

    Есть что нибудь копеечное с Али с rs485 на ethernet ?

  • @asylmurat1
    @asylmurat1 6 років тому

    А что озночаеть в разьеме 15/10?

  • @dmitryradchenko7458
    @dmitryradchenko7458 7 років тому

    где это можно использовать?

  • @hikistewart4040
    @hikistewart4040 5 років тому

    Жаль автор не использовал HAL на stm32. Кто нить собирал?

  • @oxfordelectronics8313
    @oxfordelectronics8313 3 роки тому

    Хотелось бы узнать скорость передачи еще. Например 500кб на компьютер за сколько мс прилетит на комп. Нужно быстрое решение, есть мысли что посоветовать?

    • @gordonfreeman1894
      @gordonfreeman1894 2 роки тому

      Зависит от того, как вы реализуете операции с SPI. Если задействуете DMA, то возможно это поможет в достижении требуемых скоростей. На сайте Wiznet даже страница сравнения типов реализаций была.

  • @ShiloXyZ
    @ShiloXyZ 7 років тому

    Ох, это бы видео да пол годика назад, я бы не стал городить MAC прямо в FPGA и сделал бы через SPI мост.

  • @vts6545
    @vts6545 4 роки тому +1

    А как реализовать Modbus TCP server с использованием W5500? Нужна специальная прошивка для W5500 или все реализуемо просто внешним МК через SPI?

    • @rnadyrshin
      @rnadyrshin  4 роки тому +1

      W5500 будет просто управлять TCP-соединениями, всё Modbus-наполнение потока ляжет на внешний МК

  • @ivan_kipelov
    @ivan_kipelov 7 років тому +3

    Отказался от таких устройств в пользу emc 8266. Нет кучи проводов, все передается-принимается по воздуху. И самый очевидный плюс - встроенный контроллер, с 4 Мб памяти, что позволяет использовать его как автономное устройство. Да и цена всего 200 рублей. Но лайкнул однозначно! :)

    • @ilyabredov6567
      @ilyabredov6567 6 років тому +1

      +Иван Кипелов, надёжно работает?

  • @poweredbysergey
    @poweredbysergey 7 років тому

    Cool

  • @carlosdiaz4535
    @carlosdiaz4535 7 років тому +2

    Excelent explanation!.

    • @rnadyrshin
      @rnadyrshin  7 років тому

      Thanks)

    • @carlosdiaz4535
      @carlosdiaz4535 7 років тому +1

      Will you put english subtitles on the new videos you release? I tried to saw some from last year and they had no subs. Thanks for the efford and time expended on adding the subs tho.

    • @rnadyrshin
      @rnadyrshin  7 років тому +6

      English subtitles will be in new videos, but not in all. Subtitle preparation is very time consuming, but I'll try.
      English subtitles are an experiment for me, I do not know how many English-speaking viewers on my channel.

    • @carlosdiaz4535
      @carlosdiaz4535 7 років тому

      Great to know, thanks for trying to add subs to some videos, i understand is very time consuming. I haven't saw much comments on English but i guess i can't be the only one.

  • @kovach9036
    @kovach9036 6 років тому +1

    респект что без ардуино

  • @Elettronica-xt7nm
    @Elettronica-xt7nm 5 років тому +2

    Your video is very interesting. I've been experimenting with my stm32 Blue Pill for a month. I was able to connect via the Ethernet ENC28j60 but I can not control the outputs via the Blynk App application. to manage relays. I program it with Arduino Ide. By chance you could give me a hand in my relay management project because I just can not get the outputs going. Thank you very much for the attention .

  • @andreynesterov7462
    @andreynesterov7462 7 років тому

    Молодец! Все отлично изложил!

  • @night_gryphon
    @night_gryphon 3 роки тому

    пожалуйста помогите как перенести/собрать этот проект в полноценной официальной бесплатной CubeIDE вместо триального огрызка IAR?

  • @CatEggsMouth
    @CatEggsMouth Рік тому

    подскажите пожалуйста эти модули могут работать самостоятельно, то есть залить в него прошивку чтоб он мог получать адрес от дхцп и все.. т.е. чтоб роутер на него реагировал, выдавал адрес и думал что к нему подключено полноценное сетевое устройство?

    • @rnadyrshin
      @rnadyrshin  Рік тому

      Нет, они так не могут. Только под управлением отдельного микроконтроллера

  • @Silver92595
    @Silver92595 7 років тому

    На счет глюка с ENC28. У меня так же было, но мне удалось решить ето заменою питания от внешнего стабилизатора на 3.3V

    • @rnadyrshin
      @rnadyrshin  7 років тому

      У меня при тестировании использовался тот стабилизатор 1117 3.3В, который стоит на плате модуля. А у вас какой использовался?

    • @Silver92595
      @Silver92595 7 років тому

      Электроника в объективе на ардуино такой же, но тем не менее проблемы с зависанием есть. Использовал такой же 1117 стабилизатор. Чтобы увидеть что проблема в питании можно добавить нагрузку на несколько ножек МК, тогда зависания будут чаще

  • @RuslanKerimov
    @RuslanKerimov 7 років тому +1

    Подскажи, пожалуйста, есть ли готовые платы с микроконтроллером и ethernet-интерфейсом, питанием по тому же ethernet и небольшого размера? Хочу разместить такую плату в подрозетнике.

    • @rnadyrshin
      @rnadyrshin  7 років тому

      Я не встречал такие

    • @ko_ale
      @ko_ale 5 років тому +1

      Вот:
      www.aliexpress.com/store/product/Leonardo-ETH-V2-with-ATmega32U4-W5500-Ethernet/1950989_32906566843.html
      И вот еще:
      www.aliexpress.com/item/Keyestudio-W5500-ETHERNET-DEVELOPMENT-BOARD-For-Arduino-Project-WITHOUT-POE/32849752167.html

  • @alexaxndrlyakhov8363
    @alexaxndrlyakhov8363 7 років тому +3

    Как вы делали свою презентацию и эти цветные квадратики поверх поверх даташита? очень красиво и аккуратно - мне понравилось.

    • @vladi_g
      @vladi_g 7 років тому

      В любом видеоредакторе типа sony vegas. Но, что-то мне кажется, что именно тут не вегас.

    • @rnadyrshin
      @rnadyrshin  7 років тому +2

      Да, это обычный MS PowerPoint

    • @user-fg8em6kh2m
      @user-fg8em6kh2m 5 років тому

      какая разница, что напоминает? В итоге приятно смотреть и слушать, спасибо автору!

  • @strelok7589
    @strelok7589 7 років тому

    Для более больших и стабильных проектов стоит брать w5500,
    а для маленьких проектов enc28j60,но лучше поставить к нему хотя бы 30мм кулер

    • @ilyabredov6567
      @ilyabredov6567 6 років тому

      Тогда уж просто радиатор налепить, тише и надёжнее.

    • @888banka1
      @888banka1 6 років тому +1

      Согласен, не понятно почему ENC греется как скотина.

    • @GeorgeMajorUA
      @GeorgeMajorUA 5 років тому

      w5500 пока не пробовал.но enc28j60 достаточно медлителен. использовал библиотеку UIPEthernet.h, слишком долго устанавливает соединение с web-сервером - уходит не менее 500 мс. на исполнение строчки client.connect(server, 80). причем часто это время превышает 1 секунду или соединение совсем не устанавливается.
      жаль что нельзя один раз установить соединение, и потом передавать/принимать данные произвольное количество раз
      заказал w5500, надеюсь пошустрее будет.

  • @nikshibud
    @nikshibud 5 років тому

    В чем делаете такие схемы? Какая-то специальная программа или фотошоп

    • @rnadyrshin
      @rnadyrshin  5 років тому +1

      В программах для создания презентаций. MS PowerPoint, Google Презентации и т.д.

  • @kovach9036
    @kovach9036 6 років тому

    а есть чисто wifi модуль,без програмирование ну как ethernet модуль?

    • @rnadyrshin
      @rnadyrshin  6 років тому

      Ну да, все модули на базе esp8266 с заводской прошивкой

  • @IgorOrlov
    @IgorOrlov 7 років тому +1

    Отличное видео, но порог вхождения понимания высокий конечно. Есть много китайских решений на одной плате клон ардуино нано+Ethernet модуль. Что можете сказать если сравнить все эти решения? Ещё я не понял зачем вы в своей демке используете 2 роутера? Неужели MQQTT, нельзя было подключить к тому же роутеру? Так же непонятно зачем вы ваши Ethernet-модули подключаете в микроконроллерам STM32 и ATmega? Разве на самих Ethernet-модулях нет своего микроконтроллера, который как раз и может обрабатывать что кто приходит в порт? Возможно вопросы поставлены некоректно, я нуб в этом деле пока ещё, но всё же надеюсь на ответы, спасибо.

    • @rnadyrshin
      @rnadyrshin  7 років тому +1

      Второй (старый) роутер я использовал просто как обычный switch, чтобы не тянуть от обоих устройств кабели к основному роутеру. На ethernet-модулях из видео никаких микроконтроллеров нет, поэтому и пришлось подключать их к отдельным микроконтроллерам.
      По поводу сравнения решений для ethernet - ну видео как раз и посвящено этому.
      Из представленных я бы выбрал первое (с вынесенным PHY) - если обмен достаточно активный.
      Если при этом ещё и нужна максимальная интеграция и минимальное количество микросхем - то лучше посмотреть на 4 вариант.
      Если обмен не активный, то - enc28j60 либо w5500. Лучше w5500, особенно если обмен планируется протоколами поверх UDP или TCP.
      Lantronix XPort - для случая когда надо прокинуть по сети удаленный COM-порт до устройства, у которого нет ресурсов на сетевой обмен, а обмен через UART уже реализован и UART порт свободен.

    • @IgorOrlov
      @IgorOrlov 7 років тому

      Спасибо за развёрнутый ответ. Подскажите ещё, что бы вы использовали к примеру если по Ethernet нужно передавать данные с нескольких датчиков и переключать состояние реле к примеру? Я говорю о простой схеме включения\выключения света при открытии двери и других простых проектах для домашней автоматизиции, которые как правило связаны с управлением питания (освещение, бытовые приборы итд). Ещё вопрос, можно ли писать скетчи в Ардуино ИДЕ под эти модули? На сколько я понимаю главное что бы это поддерживал микроконтролер, а какие модули я к нему подключил это не имеет значения? Или я ошибаюсь?

    • @rnadyrshin
      @rnadyrshin  7 років тому

      Ну вот демо проекты из описания к видео вполне подойдут как заготовка для решения этих задач.
      Можно дописать управление реле по входящим MQTT-сообщениям и чтение из датчиков и публикацию MQTT-сообщений с измерениями и событиями.
      Оба ethernet-модуля из видео тут отлично подходят.

    • @IgorOrlov
      @IgorOrlov 7 років тому

      ясно, спасибо, а на счёт ИДЕ, я так понимаю ваш код не заработает в ардуино ИДЕ?

    • @rnadyrshin
      @rnadyrshin  7 років тому

      Не заработает

  • @mruniverse5704
    @mruniverse5704 2 роки тому

    Здравствуйте. Можно ли w5500 заставить работать на esp-32?

    • @rnadyrshin
      @rnadyrshin  2 роки тому

      С любым микроконтроллером можно

  • @sssserya1
    @sssserya1 7 років тому +4

    замеряли ток по питанию, какой модуль экономичней ?

    • @rnadyrshin
      @rnadyrshin  7 років тому

      Нет, вечером замерю

    • @rnadyrshin
      @rnadyrshin  7 років тому +8

      w5500 - 109 мА
      enc28j60 - 150 мА
      enc ещё и греется прилично, градусов до 50

    • @romanmshk9112
      @romanmshk9112 7 років тому

      у меня enc28j60 грелся до 80 и очень быстро умер. модуль был как в видео

    • @user-tl6ev6nh2k
      @user-tl6ev6nh2k 6 років тому

      может проблема в питании? точно 3,3В ?

    • @homer652
      @homer652 6 років тому

      Электроника в объективе, на разных кабелях и расстояния разный ток потребления будет.

  • @DRDRPETR
    @DRDRPETR 6 років тому

    ua-cam.com/video/LwDDEIx63cA/v-deo.html Насколько я помню, у W5100 есть и параллельные интерфейсы. Не думаю, что имеет смысл проводить параллели между доступным разработчику уровнем протокола и интерфейсом.

  • @colt2503
    @colt2503 6 років тому

    PIC18F97J60 применяются в дорогущих модулях связи охранной аппаратуры Дунай производства НВФ Венбест:
    1) Ethernet модуль связи Дунай-ЕТ: venbest.org.ua/index.php?id_product=19&controller=product
    2) Программно- аппаратный драйвер Дунай-ЕСОМ18: venbest.org.ua/index.php?id_product=57&controller=product&search_query=dunaj+ecom&results=6

    • @Sergey_Onishchenko
      @Sergey_Onishchenko 6 років тому

      Это не ethernet контроллер. Хоть в него и включён физический интерфейс, без трансформатора.

    • @colt2503
      @colt2503 6 років тому

      А что это?

    • @Sergey_Onishchenko
      @Sergey_Onishchenko 6 років тому

      Дополнил.

    • @Sergey_Onishchenko
      @Sergey_Onishchenko 6 років тому

      Это микроконтроллер, а то так можно договориться до того, что это флешь-память.

  • @FreeZLO
    @FreeZLO 7 років тому +11

    Так печально, что я ничего толком не понял...

  • @projectuk5587
    @projectuk5587 4 роки тому

    while (temp == PHY_LINK_OFF);
    i can not get PHY status

  • @user-nx2uh1mv3m
    @user-nx2uh1mv3m 4 роки тому

    Присоединяюсь к вопросу
    Влада Жданова:
    - Как принимать (подписаться) и обрабатывать
    топики от брокера?

  • @user-ul8ld8qh1w
    @user-ul8ld8qh1w 3 роки тому

    И зачем я год сидел на парах по компьютерным сетям? Всё то разрозненное и неявное, посредством этого видео объединилось в хоть и рыхлую, но всё же более-менее цельную кучку))

  • @zhituha
    @zhituha 6 років тому +4

    TCP/IP не модель, а семейство протоколов на 3-4 уровне.

    • @rnadyrshin
      @rnadyrshin  6 років тому

      Модель, стек, семейство - всё это верно.
      ru.wikipedia.org/wiki/TCP/IP

    • @ilyabredov6567
      @ilyabredov6567 6 років тому

      По-моему, "стек" - самое меткое название.

  • @gameisrigged6942
    @gameisrigged6942 2 роки тому

    when the impostor is sus

  • @alexandrlatukhin6345
    @alexandrlatukhin6345 4 роки тому

    Ни один ролик автора не смог досмотреть до конца. Толерантность, буферизация---ничего не понял, а жаль. Я всего лишь столяр, увлекающийся ARDUINO!!!