Pull to refresh
9
0
Юрий @Nordium

User

Send message

Ethernet поверх USB на STM32F4

Reading time9 min
Views57K


Недавно возникла идея заставить плату на базе МК STM32F4 работать по сети. Поскольку на борту отсутствовал Ethernet PHY контроллер, то единственным вариантом было использовать USB FullSpeed интерфейс для эмуляции Ethernet устройства. Распространённый стандарт USB-класса, реализующий данную функцию, называется RNDIS.
К своему огорчению, поиск RNDIS драйвера для STM32 не увенчался успехом. Впрочем, это не удивило, т.к. открытые примеры использования USB порта у STM32 ограничиваются только теми, что предоставил нам производитель.
Захотелось исправить сию несправедливость. А заодно и поиметь нужные исходники, благо в будущем они пригодятся.
Сейчас, когда демонстрационная версия библиотеки готова, выкладываю её в свет на правах MIT-лицензии. Поэтому, все кому библиотека интересна — пользуйтесь «на здоровье». Библиотека имеет название LRNDIS, первая буква которого означает использование сетевого стека для встраиваемых систем «LwIP».
Для демонстрации возможностей библиотеки был создан пример на плате stm32f4discovery. Его работа заключается в поддержке основных сервисов (DHCP и DNS сервера) и передаче usb-хосту запрашиваемых WEB-страниц. Таким образом, наш discovery превратился в почти полноценный WEB-сервер, работающий по порту USB!
Пару слов о том, где это применимо.
В быту RNDIS устройства обычно являются USB-модемами для доступа в Интернет. Возможно, такое применение, действительно, окажется полезным, если разработчик выберет STM32 в роли связующей цепочки между ПК и радиочастотным (или другим) трансивером. Или, может быть, захочет расширить собственную сеть на Ethernet-сегмент?
Другое применение, в котором нахожу основную пользу для себя, — это интерфейс управления сложными устройствами. Типовое решение в этой области — создание терминального ПО. При этом приходится заниматься его поддержкой вместе с поддержкой устройства, что бывает неудобным. Собственно, в отказе от такой схемы в пользу управляющего Web-интерфейса и заключается смысл возможного применения библиотеки. Вспомните Web-интерфейсы настройки роутеров. Удобно. Красиво. Без лишнего ПО.

Итак, если Вы заинтересовались, читайте далее…
Читать дальше →
Total votes 28: ↑26 and ↓2+24
Comments17

Отобразить уведомление на Android Wear, не показывая его на телефоне

Reading time1 min
Views13K
Решил я все же, не смотря на свой скепсис, начать переносить приложения на Android Wear.

Первое дело — показывать уведомления, ИМХО, первая и важнейшая функция смарт-часов.
Открываю мануал и узнаю что уведомления на часы можно отправить только прицепом к общесистемному уведомлению Android. На Sony все было разделено и даже слишком, а тут все интегрировано и само собой работает. Гвоздями прибито.
Читать дальше →
Total votes 23: ↑21 and ↓2+19
Comments11

Information

Rating
Does not participate
Location
Одинцово, Москва и Московская обл., Россия
Date of birth
Registered
Activity