Menu Home

Бесплатная техническая библиотека для любителей и профессионалов Бесплатная техническая библиотека


Реализация на базе микросхемы W5100 устройства для работы в сетях Ethernet. Энциклопедия радиоэлектроники и электротехники

Бесплатная техническая библиотека

Энциклопедия радиоэлектроники и электротехники / Компьютеры

Комментарии к статье Комментарии к статье

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

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

Наиболее распространен в сетях Ethernet стек протоколов TCP/IP. Их структура оказалась удачной для передачи разнородной информации, она оптимальна для высокоскоростных локальных сетей с мультимедийным трафиком. Именно эти протоколы послужили основой сети Интернет. Их можно реализовать несколькими способами.

Первый способ - программный. Но на этом пути имеется много трудностей. Создание программного стека протоколов или даже портирование существующих, свободно распространяемых в исходном коде стеков (таких как IwlP, ulP), - довольно сложная и затратная по времени задача. Для работы стека необходима операционная система, адаптация которой к конкретному микроконтроллеру также может занять много времени. Кроме того, практически все операционные системы (за исключением нескольких клонов Linux) бесплатно не распространяются. Программная реализация протоколов интенсивно использует ресурсы операционной системы, процессора и памяти, что негативно сказывается на производительности системы в целом.

Избавить микроконтроллер от выполнения процедур передачи данных по каналу связи и значительно сократить время разработки позволяет второй способ - аппаратная реализация части протоколов с помощью специализированных БИС. В этой статье будет рассказано о практической реализации системы, предназначенной для работы в сетях Ethernet по стандартным протоколам, построенной на микроконтроллере и специализированной БИС фирмы WIZnet, аппаратно реализующей стек протоколов TCP/IP.

Использован микроконтроллер AT91SAM9261 с процессорным ядром ARM9. На его выбор повлияло наличие ряда необходимых периферийных функций. Однако возможно использование практически любого другого микроконтроллера, в том числе и гораздо менее производительного, хотя за это придется, возможно, расплачиваться снижением скорости обмена.

Для аппаратной реализации протоколов TCP/IP применена микросхема W5100, обладающая следующими возможностями:

- аппаратная реализация протоколов TCP, UDR ICMR IPv4 ARR IGMR РРРоЕ, Ethernet;
- встроенный 10BaseT/100BaseTX преобразователь физического уровня Ethernet;
- автоматическое определение режимов работы полный дуплекс, полудуплекс, 10 или 100 Мбит/с;
- три способа подключения к микроконтроллеру. Direct, Indirect, SPI;
- поддержка ADSL соединений по протоколу РРРоЕ;
- возможность работы одновременно с четырьмя соединениями, каждое из которых настраивается для работы в режиме клиента или сервера;
- 16 Кбайт внутренней памяти, отведенной под буферы приема и передачи.

Основой макета системы послужила имевшаяся в наличии отладочная плата AT91SAM9261-EK. На плате был установлен модуль WIZ810MJ, содержащий микросхему W5100 с необходимой "обвязкой" и сборку RJ113BZ - разъем RJ-45 с встроенными трансформаторами гальванической развязки и элементами согласования. Для соединения с управляющим устройством (микроконтроллером) модуль снабжен двумя штыревыми разъемами PBD2-28.

Вся документация, необходимая для работы с микросхемой W5100 и с модулем WIZ810MJ, имеется на официальном сайте компании WIZnet: wiznet.co.kr. Там же находится исходный текст на языке С драйвера, в котором реализованы высокоуровневые функции для работы с сокетами W5100, а также руководство по портированию драйвера. Хочу отметить, что вся документация написана в очень доступной для понимания форме, поэтому разобраться с подключением и программированием W5100 не составит труда. Документацию на микроконтроллер AT91SAM9261 можно найти на сайте at91.com

Схема подключения модуля WIZ810MJ к микроконтроллеру AT91SAM9261 для работы в режиме прямого доступа (Direct mode) изображена на рисунке. В скобках указаны номера выводов микроконтроллера.

Реализация на базе микросхемы W5100 устройства для работы в сетях Ethernet

Линии DO-D7 образуют шину данных, линии АО-А14 - шину адреса. Сигнал NRD - чтение из памяти, сигнал NWE - запись в память. Сигнал RESET, устанавливающий микросхему W5100 в исходное состояние, можно подать с любой свободной линии порта микроконтроллера. Использована линия РВО.

В микроконтроллере AT91SAM9261 предусмотрена возможность подключать до восьми устройств, обмен данными с которыми ведется, как с внешней памятью. Для каждого из них выделяется область в пространстве памяти микроконтроллера и формируется собственный сигнал выбора устройства (CS). В данном случае задействован сигнал CS6 (альтернативная функция линии РСО).

Чтобы оперативно реагировать на изменение состояния микросхемы W5100, требуется подать на микроконтроллер сигнал INT и настроить линию порта, на которую он подан, на генерацию запросов прерываний по спадающему перепаду уровня. Программный обработчик прерывания должен анализировать содержимое регистра Sn_IR микросхемы W5100. В данном случае вход запросов прерывания от W5100 - линия РС2.

Далее описаны действия, которые необходимы для настройки микроконтроллера и микросхемы W5100 на работу в Ethernet. Фрагменты программ написаны на языке С и могут быть практически без изменений использованы для любых ARM-микроконтроллеров фирмы Atmel.
Драйвер, который следует "скачать" с сайта фирмы WIZnet, состоит из файлов w5100.c, socket.c, types.h, w5100.h, socket.h. Эти файлы необходимо включить в проект. В исходном варианте драйвер рассчитан на работу в микроконтроллере ATmega128, но его очень просто адаптировать практически к любому другому микроконтроллеру, заменив всего несколько программных строк.

Прежде всего нужно внести некоторые изменения в файл types.h.

Заменой строки

#define _DEF_IINCHIP_MAP_BASE_ 0x8000
на
#def i ne _DEF_IINCHIP_MAP_BASE_ 0x70000000
установим адрес, с которого будет происходить обращение к регистрам и буферам микросхемы W5100 (с адреса 0x70000000 в пространстве памяти микроконтроллера начинается область, соответствующая сигналу CS6). После этого нужно закомментировать строку
#include <avr/pgmspace.h>
и сохранить модифицированный файл types.h.
Открываем файл W5100.C. Здесь следует закомментировать строку
#include <avr/interrupt.h>
и добавить после нее строку
#include <inarm.h>

Далее необходимо превратить 16-разрядные указатели на буферы приема и передачи в 32-разрядные.

Для этого в строках

static uintl6
SBUFBASEADDRESS[MAX_SOCK_NUM]; /**< Тх
buffer base address by each channel */
и
static uintl6
SBUFBASEADDRESS[MAX_SOCK_NUM]; /**< Tx buffer base address by each channel */
(переносы условные) заменим описатели типа переменной uint16 на uint32.

Далее по тексту программы заменяем все 16-разрядные адреса, передаваемые в качестве параметров функций, 32-разрядными. После того, как эти замены произведены, можно сохранить файл и использовать высокоуровневые функции драйвера в основной программе.

Осталось лишь инициализировать SMC (Static Memory Controller) микроконтроллера для формирования сигнала CS6 (табл. 1) и занести нужные значения в регистры микросхемы W5100 (табл. 2).

Теперь, когда все необходимые настройки сделаны, система готова к работе по любому из поддерживаемых микросхемой W5100 протоколов.

Например, в табл. 3 приведена возможная процедура приема сообщений в режиме "сервер", а в табл. 4 - процедура передачи в режиме "клиент".

Наиболее существенный недостаток микросхемы W5100 - отсутствие встроенной возможности фрагментировать посылки. Поэтому при пересылке больших объемов информации их разбивкой на пакеты придется заниматься программе микроконтроллера. Это же препятствует использованию микросхемы в качестве маршрутизатора. Тем не менее микросхему W5100, ввиду ее небольшой стоимости и наличия исходных текстов драйверов, можно рекомендовать для подключения микроконтроллерных систем к сети Ethernet при использовании стандартных протоколов TCP/IP.

Автор: К. Снегов, Р. Шишко, г. Воронеж; Публикация: radioradar.net

Смотрите другие статьи раздела Компьютеры.

Читайте и пишите полезные комментарии к этой статье.

<< Назад

Последние новости науки и техники, новинки электроники:

Тающие айсберги создают новые оазисы жизни на дне океана 30.06.2026

Глобальное потепление активно меняет облик нашей планеты, и одним из наиболее заметных его проявлений становится ускоренное таяние ледников в полярных регионах. Этот процесс не только приводит к подъему уровня Мирового океана, но и вызывает цепную реакцию в морских экосистемах, порой создавая неожиданные и парадоксальные последствия. Массовое высвобождение айсбергов из Гренландии - яркий пример того, как климатические изменения перестраивают жизнь в самых глубоких и удаленных уголках океана. Из-за повышения температуры количество айсбергов, откалывающихся от гренландских ледников, стремительно растет. Ученые проанализировали данные за последние 40 лет и установили, что с 2000 года поток ледяных глыб через пролив Фрама увеличился в четыре раза. Об этом сообщает Futurism со ссылкой на исследование специалистов из Технического университета Дании. Такое беспрецедентное нашествие айсбергов представляет серьезную опасность для международного судоходства. Одновременно оно радикально тра ...>>

Робот-тьютор Optio, помошник школьника 30.06.2026

Икусственный интеллект и робототехника все активнее помогают учителям и ученикам, делая обучение более персонализированным и увлекательным. Гуманоидные роботы, способные взаимодействовать с людьми естественным образом, открывают новые возможности для школ, особенно в условиях нехватки педагогических кадров и растущего интереса к технологиям. Одна из таких инновационных инициатив стартовала в американском штате Нью-Йорк. Компания Realbotix запустила своего помощника учителя на базе искусственного интеллекта под названием Optio в Центральном школьном округе Саламанки. Робот выступает в роли тьютора, предлагая персонализированное репетиторство, многоязычную помощь с домашними заданиями и круглосуточную академическую поддержку. По данным Interesting Engineering, проект направлен на повышение вовлеченности учащихся и внедрение передовых технологий в учебный процесс. В рамках пилотной программы школы округа планируют интегрировать человекоподобных роботов в классы. Изначально Optio буд ...>>

Биопрепараты повышают питательную ценность органической гречихи 29.06.2026

В органическом земледелии особое внимание уделяется не только урожайности, но и качественному составу продукции. Потребители все чаще выбирают продукты с высоким содержанием полезных веществ и без следов химических веществ. Исследования показывают, что применение биологических препаратов может существенно улучшить минеральный состав зерновых культур, делая их более ценными с точки зрения питания. В результате полевых экспериментов, проведенных в 2023-2025 годах, ученые установили, что использование биопрепаратов способствует активному накоплению макроэлементов, в частности фосфора и калия, в зерне органической гречихи. Об этом сообщила Леся Крупак из Белоцерковского национального аграрного университета в своей работе "Экологичность и производительность". Наиболее заметный эффект наблюдался при применении гумата калия. В этом случае содержание калия в зерне увеличивалось на 19-21 процент по сравнению с контрольными участками. Такой результат свидетельствует об улучшении работы тра ...>>

Случайная новость из Архива

Добавить магния в кузов автомобиля 04.01.2006

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

Инженеры из Дортмундского центра физики поверхности (Германия) обнаружили, что значительно усилить антикоррозионные свойства такого покрытия можно, если добавить к цинку магний.

В пилотной установке, построенной в Дортмундском центре, стальная лента с цинковым покрытием толщиной 7, 5 микрометра проходит со скоростью метр в секунду через вакуумную камеру, где ее обдувают пары магния. На входе и выходе камеры поставлены шлюзы, воздух из которых откачивают мощные насосы, чтобы он не проникал в камеру. Цинк покрывается слоем магния толщиной несколько нанометров. После дополнительной термической обработки атомы магния диффундируют в поверхность цинка. Возникший слой более чем в десять раз устойчивее, чем обычное цинковое покрытие.

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

Магниево-цинковое покрытие проявляет первые признаки коррозии только через 50 дней. Работа финансируется немецкими автомобилестроительными фирмами.

Другие интересные новости:

▪ 4К дисплей со сверхшироким цветовым охватом

▪ Раскрыт секрет успешных людей

▪ Самая быстрая компьютерная мышь

▪ Размножение в космосе возможно

▪ Полезная говядина

Лента новостей науки и техники, новинок электроники

 

Интересные материалы Бесплатной технической библиотеки:

▪ раздел сайта Передача данных. Подборка статей

▪ статья Эрих Зелигманн Фромм. Знаменитые афоризмы

▪ статья На каком инструменте можно спускаться по горнолыжным склонам в соревнованиях на скорость? Подробный ответ

▪ статья Магнитное склонение. Советы туристу

▪ статья Автомат-эконом электроэнергии. Энциклопедия радиоэлектроники и электротехники

▪ статья Цифровая шкала для FM-приемников супергетеродинного типа на микросхемах. Энциклопедия радиоэлектроники и электротехники

Оставьте свой комментарий к этой статье:

Имя:


E-mail (не обязательно):


Комментарий:





Главная страница | Библиотека | Статьи | Карта сайта | Отзывы о сайте

www.diagram.com.ua

www.diagram.com.ua
2000-2026