Библиотека Enc28j60 Ethernet портирована (завершена !)

Вассилис
Пн 25 мая 2015 г. 14:28
Я перенес основные функции Ethercard Библиотека Arduino to STM32F103 MCU.

-= Редактировать =-
Новую библиотеку можно найти на GitHub

https: // github.com/serasidis/stm32duino ... ERCARD_STM

Роджер, если вы хотите, вы можете добавить его в свой репозиторий.

Вассилис
Пн 25 мая 2015 г., 19:56
Я успешно протестировал на STM32F103. Следующие примеры EtherCard:

- Бэксун
- Getstatic
- мультикет
- noipclient
- rbbb_server
- Сташт
- WebClient
- xively

Rogerclark
Ср 27 мая 2015 г., 7:22
ХОРОШО.
Дайте мне знать, когда новая либера

Спасибо

Роджер

Вассилис
Чт 28 мая 2015 г., 11:15 утра
А Ethercard_stm Библиотеку можно найти на GitHub (см. Первый пост)

https: // github.com/serasidis/stm32duino ... ERCARD_STM

Rogerclark
Чт 28 мая 2015 г., 11:40
Василлис,

Можете ли вы скопировать эти файлы в свою вилку моего репо и сделать «запрос на вытягивание»

Слишком поздно, чтобы «потянуть» сегодня (для меня), но я сделаю это первым делом завтра.


Спасибо

Роджер

Вассилис
Чт 28 мая 2015 г., 11:45
Rogerclark написал:Василлис,

Можете ли вы скопировать эти файлы в свою вилку моего репо и сделать «запрос на вытягивание»

Слишком поздно, чтобы «потянуть» сегодня (для меня), но я сделаю это первым делом завтра.


Спасибо

Роджер

Вассилис
Чт 28 мая 2015 г. 13:55
@Roger: Через много часов мне наконец -то удалось загрузить и «вытащить» библиотеку на GitHub.

GitHub - очень мощный инструмент, но в то же время он очень сложный.

Martinayotte
Чт 28 мая 2015 г. 14:10
Привет, Вассилис,
В списке примеров я не вижу никаких серверов, таких как Tcpserver. Как вы думаете, мы можем получить немного ?

Вассилис
Чт 28 мая 2015 г. 14:24
Martinayotte написал:Привет, Вассилис,
В списке примеров я не вижу никаких серверов, таких как Tcpserver. Как вы думаете, мы можем получить немного ?

Martinayotte
Чт 28 мая 2015 г. 15:05
Вассилис написал:Если вы имеете в виду сервер Telnet ... Для этого нет примера кода.

Rogerclark
Чт 28 мая 2015 г., 22:07
Как у вас может быть сервер Telnet?

Вы имеете в виду, что это будет связать сериал по TCP ?

Rogerclark
Чт 28 мая 2015 г., 22:09
Василлис

Да. Git сложный

Иногда я очень запутался в локальном GIT и должен удалить его и получить новую копию с сервера ;-)

Martinayotte
Чт 28 мая 2015 г., 22:27
Rogerclark написал:Как у вас может быть сервер Telnet?

Вы имеете в виду, что это будет связать сериал по TCP ?

Вассилис
Пт 29 мая 2015 г., 7:02
Rogerclark написал:Как у вас может быть сервер Telnet?

Вы имеете в виду, что это будет связать сериал по TCP ?

Hackstage
Пт 29 мая 2015 12:35
ХОРОШИЙ!!! Большое спасибо! :)

Martinayotte
Вт 23 июня 2015 г., 21:42
Я начал изучать библиотеку ENC28J60, и я пытаюсь заставить ее работать в NetDuino2plus.
Проводка NetDuino2plus немного отличается:

Enc_sck = pa5
Enc_mosi = pa7
Enc_miso = pb4
ENC_CS = PC8

Я соответственно меняю их, но в Enc28j60 :: begin () он висит в бесконечной циклевой записи (PHCON2, PHCON2_HDLDIS), который на самом деле является петлей без обработки тайм -аута в wrtiephy (), когда (readregbyte (Mistat) & MISTAT_BUSY);

Поскольку я мало что знаю о ENC28J60, кроме того, что использовал его на Arduino, я не знаю, что мне делать.
Вероятно, так как у меня есть отдельный модуль ENC28J60, я могу попытаться подключить его к своему Maplemini и выяснить различия в полученных байтах.

Любые другие подсказки ?

Стюарт
Вт 23 июня 2015 г., 23:16
Это, вероятно, не самое полезное предложение, но выполнение взаимодействия SPI и I2C я считаю, что внешний логический анализатор является золотом.

http: // www.aliexpress.com/item/usb-24m- ... 88263.HTML

Этот дает немного больше информации:
http: // www.aliexpress.com/item/usb-24m- ... 54825.HTML

Один из них, с программным обеспечением, которое декодирует последовательные протоколы для вас, так что вы можете сравнить то, что на самом деле на проводе с
То, что вы ожидаете, и т. Д. Просто делает жизнь намного проще. Есть много вариантов по разным ценам, но они настолько дешевы, что не
нужно сэкономить много времени, чтобы быть полезным.

Примечание: это клоны лучших устройств, поэтому я оставлю мнение, если использование клонированного оборудования в порядке для индивидуума.
Если вы хотите реальную сделку, тогда: https: // www.Сали.ком/ эти парни великолепны.

Martinayotte
Ср 24 июня 2015 г. 12:10
Привет, Стюарт,

У меня уже есть 2 логические анализаторы, 1 похожа на ссылку, которую вы предоставьте, клон Saleae, а 1-плата Cypress Fx2 от LC-Soft.
Я использую с ними Sigrok/Pulseview на Linux.
В последнее время было очень полезно отладки SPI в Maplemini, а также на ESP8266, даже в прошлые дни.

Но для netduino2plus, со всем оборудованием, встроенным на 4 -й слойной печатной плате, это немного сложнее, если я не припаяю подводные провода непосредственно на ENC28J60.
Итак, я думаю, что мой единственный способ отладки-программное обеспечение через программное обеспечение и сравнить его с рабочей настройкой, возможно, внешняя подключение модуля ENC28J60 на внешнем SPI, где я могу легче поднять одну из этих плат.

Кстати, в имене примечания я забыл еще один GPIO, ENC_POWER, который позволяет включить VCC ENC28J60. Я добавил это, но теперь он висит еще раньше, во время чтения (ENC28J60_Read_ctrl_reg, estat) ... :(

Стюарт
Чт 25 июня 2015 г., 3:46
Глупые вопросы, которые я знаю, но пробовали ли вы обзор или мониторинг булавок MOSI/MISO, CS и т. Д? ругаться
Ставки выглядят нормально и т. Д?

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

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

Я знаю, что это все основы, но количество раз, когда я ловлю себя, не хватает чего -то простого.

Martinayotte
Пт 26 июня 2015 г., 2:43
Я отложил свои испытания на NetDuino2plus и подключил ENC28J60 на другой Maplemini. У меня есть пример TestDHCP, работающий из библиотеки Вассилиса. Но я хочу получить его дальше с Tcpserver (особенно сервером Telnet, который позволит мне иметь оболочку для чудеса внутри :) ).
Поскольку в библиотеке Вассилиаса еще нет никакого TCPServer, я посмотрел библиотеку "arduino_uip", с которой я играю около 10 месяцев назад на Atm328, в то время она хорошо работала. Я пытаюсь сбивать ENC28J60.CPP из библиотеки Василиаса в ENC28J60Network.CPP библиотеки "arduino_uip". У меня есть некоторый успех, у меня тоже был DHCP. Хотя клиент Telnet может преуспеть в получении соединения с портом 23, Maplemini управляет им частично: сервер.Доступен () всегда отвечает ложным. Я включил этот packet_debug, я вижу, как они входят (я не смотрел их содержимое), даже «пинг» работает, но Arduino Loop (), где сервер.доступен () расположен просто зацикливается.
Я копаю больше ... :(

Стюарт
Пт 26 июня 2015 г. 5:02 утра
Наверное, мы растягиваем эту нить очень далеко от его отправной точки, но:

Под сервером Telnet вы имеете в виду пользовательский сервер на TCP, или вы имеете в виду оболочку?
Если вы ищете оболочку, то вы не хотите что -то вроде Busybox? это не маленький комок.

Если вам просто нужны пользовательские команды по TCP, что -то вроде:
http: // блог.бууни.de/blog/2012/06/25/a- ... et-server/
Проще говоря, это похоже на W5100 (Ethernet lib), основанный на.. Что я признаю, это мое личное предположение
в любом случае.

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

Martinayotte
Пт 26 июня 2015 г. 15:07
Привет, Стюарт,

Да, это именно то, что я хочу иметь. (Нет, занят, просто необходимо, просто мои собственные команды, мини-оболочка через IP вместо последовательного)
К сожалению, классов сервера и клиентов еще нет, поэтому я пытался объединить его с "arduino_uip".
У меня тоже есть W5100, я посмотрю на это позже, но, поскольку моя конечная цель - перенести это в NetDuino2plus, оснащенный ENC28J60, я предпочитаю продолжать в текущем пути. Я копаю немного больше, обнаружив, как пакеты не проанализированы должным образом на верхнем уровне сервера.доступен () и т. д.

Martinayotte
Ср. 01 июля 2015 г. 12:31
Привет !
Я наконец -то получил ISUUE с ReadoP (ENC28J60_Read_ctrl_reg, ESTAT) Исправлена:

ViewTopic.PHP?F = 39&t = 388

Теперь я возвращаюсь к своей главной цели, Tcpserver ...
Примеры сервера Telnet/клиента находятся в моих будущих планах. Вассилис ? У тебя была возможность посмотреть об этой части ? Может я тоже смогу помочь. Просто слияние сокета.* файлы из Ethernet_stm в serasidis_ethercard_stm libs ?

Cassyarduino
Чт 17 ноября 2016 г. 14:29
Всем привет!

Вы можете использовать альтернативную библиотеку (uipethernet) для ENC28J60.

- Библиотека Uipethernet использует тот же API, что и официальный Arduino Ethernet (совместим с библиотекой Wiznet W5100 Ethernet.).
В коде должен измениться #include <Ethernet.час> #include <Uipethernet.час>.
- Полная поддержка Uipethernet для постоянных (потоковых) TCP-соединений и UDP (клиент и сервер каждый), ARP, ICMP, DHCP и DNS. Строить вокруг стека UIP Adam Dunkels.
http: // www.гомоутомация.org/2014/10/27 ... r-arduino/

Оригинальная библиотека Uipethernet написана Норбертом Тручесессом <Норберт.Truchsess@T-Online.де>
Вы можете получить доступ к GitHub:https: // github.com/ntruchsess/arduino_uip

Я изменил код:
- Заменил импорт, чтобы включить, потому что GCC говорит: «Импорт устарел».
- Я объединил модификацию Martinayotte (правильно S_DHCP ~ 40 тыс. Больше памяти с помощью STM32F MCU-S.)
- Добавьте поддержку STM32F и ESP8266 MCU-S.
- Перенос Htons, NTOHS, HTONL, NTOHL Определения в UIP.час.
- Правильные бесконечные петли.

Мой модифицированный Uipethernet поддержал больше MCU: AVR Arduinos, STM32F MCU-S, ESP8266 MCU.
Проверка компиляции: Atmega328p, Arduinodue, Maple Mini, ESP8266.

Я уже проверил (модифицирован Uipethernet) на Arduino Nano и Maple Mini (STM32F103CBT).

Вы можете скачать мою модифицированную репо uipethernet от github:https: // github.com/uipethernet/uipethernet

С наилучшими пожеланиями!

Nikosx
Пт 31 августа 2018 г. 16:10
Привет.

Удалось порт & Проверьте оба василлиса & Cassyarduino Libs в доске ядер F091... Они оба бегают ОК !!!

Молодец и спасибо !

Электрокодер
Пт, 07 декабря 2018 г., 22:38
Я также пробовал коды пинга на STM32F103VB. Я установил PIN -код CS PA4. эфир.начинать (размер Ethernet :: Buffer, Mymac, CS). Спасибо.