[i] Пример реализации ICMP протокола для обмена по Fiber Optic для микросхем семейства К1986ВЕ1x
ICMP (Internet Control Message Protocol, протокол межсетевых управляющих сообщений) — сетевой протокол, входящий в стек протоколов TCP/IP. В основном ICMP используется для передачи сообщений об ошибках и других исключительных ситуациях, возникших при передаче данных, например, запрашиваемая услуга недоступна, или хост, или маршрутизатор не отвечают. Также на ICMP возлагаются некоторые сервисные функции.
Описание проектов
Демонстрационные программы реализуют работу Ethernet-контроллера в режиме 100Base-FX (оптический канал). Проекты реализованы в среде Keil uVision для отладочной платы микросхем К1986ВЕ1Т. Код сопровожден комментариями. Архивы с программами для микроконтроллеров К1986ВЕ1Т находятся в конце статьи. Общая логика работы применима для всех микросхем серии К1986ВЕ1x (кроме микросхем К1986ВЕ1АТ без поддержки интерфейса Ethernet).
Демонстрационная программа ICMP-сервера принимает по оптическому волокну широковещательные пакеты (ARP-запрос) и пакеты с совпадением MAC-адреса (ICMP-запросы) и отвечает на эти запросы. На линейке светодиодов отображается отправленное количество ICMP-пакетов в виде двоичного кода.Демонстрационная программа ICMP-клиента отправляет по оптическому волокну ARP-запросы на IP-адрес 192.168.1.65 пока не получит ответ на эти запросы, затем по ICMP-протоколу отправляет запросы на этот же IP-адрес и полученный MAC-адрес. На линейке светодиодов на отладочной плате отображается количество принятых ICMP-пакетов в виде двоичного кода.
IP-адрес клиента — 192.168.1.88.
IP-адрес сервера — 192.168.1.65.
При включении питания загорается желтый светодиод на разъеме XP63: это означает,что контроллер настроен на режим FullDuplex. При подключении оптического канала к разъему и прохождению сигнала Link загорается зеленый светодиод (наличие сигнала Link).
Настройки Ethernet1 (клиент): 100Мб/с, FullDuplex, Fiber Optical, прием пакетов с совпадающим MAC-адресом.
Настройки Ethernet1 (сервер): 100Мб/с, FullDuplex, Fiber Optical, прием широковещательных пакетов и пакетов с совпадающим MAC-адресом.
В отличии от стандартной конфигурации Ethernet, для работы с Fiber Optical нужно дополнительно сконфигурировать требуемые выводы, управляемые интерфейсом Ethernet 1 и/или Ethernet 2, для управления Fiber Optic, а именно FRX/FRX2, FSD/FSD2, FXEN/FXEN2, FTX/FTX2 (таблица "Порты ввода-вывода" спецификации на МК) и включить режим 100BaseFX для используемого блока Ethernet (бит FX_EN регистра PHY_Control).
На отладочной плате для микросхем К1986ВЕ1Т необходимо установить перемычки для светодиодной ленты, для PD11 установить перемычку в положение FRX, для PC7 - в FXEN, для PC8 - в положение FTX, для PD15 - FSD, а также PB14 в положение YELLOW_LED, а PB15 - GREEN_LED.
Сохранить статью в PDF