www.diagram.com.ua
www.diagram.com.ua
Русский: Русская версия English: English version
Translate it!
Поиск по сайту

+ Поиск по журналам
+ Поиск по статьям сайта
+ Поиск по схемам СССР
+ Поиск по Библиотеке

Бесплатная техническая библиотека:
Все статьи А-Я
Энциклопедия радиоэлектроники и электротехники
Новости науки и техники
Журналы, книги, сборники
Архив статей и поиск
Схемы, сервис-мануалы
Электронные справочники
Инструкции по эксплуатации
Голосования
Ваши истории из жизни
На досуге
Случайные статьи
Отзывы о сайте

Справочник:
Большая энциклопедия для детей и взрослых
Биографии великих ученых
Важнейшие научные открытия
Детская научная лаборатория
Должностные инструкции
Домашняя мастерская
Жизнь замечательных физиков
Заводские технологии на дому
Загадки, ребусы, вопросы с подвохом
Инструменты и механизмы для сельского хозяйства
Искусство аудио
Искусство видео
История техники, технологии, предметов вокруг нас
И тут появился изобретатель (ТРИЗ)
Конспекты лекций, шпаргалки
Крылатые слова, фразеологизмы
Личный транспорт: наземный, водный, воздушный
Любителям путешествовать - советы туристу
Моделирование
Нормативная документация по охране труда
Опыты по физике
Опыты по химии
Основы безопасной жизнедеятельности (ОБЖД)
Основы первой медицинской помощи (ОПМП)
Охрана труда
Радиоэлектроника и электротехника
Строителю, домашнему мастеру
Типовые инструкции по охране труда (ТОИ)
Чудеса природы
Шпионские штучки
Электрик в доме
Эффектные фокусы и их разгадки

Техническая документация:
Схемы и сервис-мануалы
Книги, журналы, сборники
Справочники
Параметры радиодеталей
Прошивки
Инструкции по эксплуатации
Энциклопедия радиоэлектроники и электротехники

Бесплатный архив статей
(200000 статей в Архиве)

Алфавитный указатель статей в книгах и журналах

Бонусы:
Ваши истории
Загадки для взрослых и детей
Знаете ли Вы, что...
Зрительные иллюзии
Веселые задачки
Каталог Вивасан
Палиндромы
Сборка кубика Рубика
Форумы
Карта сайта

ДИАГРАММА
© 2000-2020

Дизайн и поддержка:
Александр Кузнецов

Техническое обеспечение:
Михаил Булах

Программирование:
Данил Мончукин

Маркетинг:
Татьяна Анастасьева

Перевод:
Наталья Кузнецова

Контакты

При использовании материалов сайта обязательна ссылка на https://www.diagram.com.ua

сделано в Украине
сделано в Украине

Диаграмма. Бесплатная техническая библиотека

Бесплатная техническая библиотека Бесплатная техническая библиотека, Энциклопедия радиоэлектроники и электротехники

Реализация на базе микросхемы 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

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

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

<< Назад

Рекомендуем скачать в нашей Бесплатной технической библиотеке:

раздел сайта Сварочное оборудование

журналы Chip (годовые архивы)

книга Действие электрического тока на человека и первая помощь пострадавшему. Долин П.А., 1976

книга Трансформаторы и автотрансформаторы питания. Справочник. Малинин Р.М., 1963

статья Мирное сосуществование

статья Солнечные коллекторы. Сколько энергии можно получить?

справочник Измерительная техника. Схемы и описания

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

Имя:


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


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

[lol][cry][!][?]




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