Идея такая - уже имеется ethernet-UART bridge, на выходе которого TTL-уровни RX/TX.
Хочу на МК (может на Arduino, или на esp866, если он умеет не по wi-fi отдавать пакеты, а через UART) реализовать SNMP агент, который бы отдавал состояние цифровых или аналоговых входов.
Т.к. данных там немного, скорости UART должно хватить. Или не получится?
Ethernet - это сетевой стандарт нижнего уровня, который может работать поверх любого подходящего интерфейса. UART - это просто интерфейс. SNMP в качестве канала передачи использует Ethernet. Так вот отсюда вопрос: что будет "превращать" пакеты из UART в SNMP, как того требует стандарт на данный протокол?
В общем случае, пакет SNMP это набор байтов, который идёт от одного устройства к другому, оформленный всякими заголовками и т.д.. Я думал, что МК можно заставить сформировать эти байты нужным образом, чтобы передать через адаптер UART в Ethernet,
Телнет ведь успешно передаёт туда-обратно байты меж МК и компьютером в данной схеме. Послал строку с компа - получил её в МК.
Так вот у меня и родился вопрос - для UART преобразователя все входящие пакеты не являются Ethernet пакетами, поэтому он их оформит всеми необходимыми заголовками. И что-то мне подсказывает, что невозможно его заставить отличить обычный UART пакет от SNMP пакета. Выход один - вещать сразу в Ethernet.
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.
Я думал почему-то, что любой байт, который посылается в этот преобразователь со стороны Ethernet, таким же и передаётся в МК. Т.е. передали 0x11 - этот символ и выйдет из UART, т.е. поступит в МК.
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Я думал почему-то, что любой байт, который посылается в этот преобразователь со стороны Ethernet, таким же и передаётся в МК. Т.е. передали 0x11 - этот символ и выйдет из UART, т.е. поступит в МК.
Разве не так?
Нет. Не так.
Вопервых, обмен по сети идет кадрами. Не по одному байту. То есть ваш байт попадает в преобразователь. Затем он оборачевается в ip-заголовки. Потом это все оборачивается в ethernet заголовки. И только тогда передается в сеть.
На приемном конце процедура обратная.
Обычно, ещё там буфера имеются. Чтобы не по одному байту в пакете отправлять. Накопили скажем 16 байт, обернули заголовками - и отправили по сети.
Всё верно. Пусть пакет SNMP со всеми заголовками будет, он придёт в Ethernet и преобразуется в последовательность байтов. Которую примет МК. Это же маленький пакет.
Но ведь микросхема Ethernet, когда общается с МК, тоже ведь передаёт и принимает данные через входы и выходы МК. А у МК иного пути, чем через UART, нет. Хотя, возможно, на более продвинутых МК, чем Atmega328P, под общение с ethernet микросхемой выделены какие-то специальные входы/выходы.
Эх, посмотрел на шилд W5100 - он подключается по шине SPI...
Хочу на МК (может на Arduino, или на esp866, если он умеет не по wi-fi отдавать пакеты, а через UART) реализовать SNMP агент, который бы отдавал состояние цифровых или аналоговых входов.
Спасибо. Просто конвертер Lan -> UART уже имеется внешний, вот и думал - раз скорость обмена при запросах невелика - может, удастся как-нибудь через uart пропихнуть. Может так и возможно, видимо, никто ранее не задавался этим вопросом.
Кстати, где-то встречал и реализацию SPI через UART
Спасибо. Просто конвертер Lan -> UART уже имеется внешний, вот и думал - раз скорость обмена при запросах невелика - может, удастся как-нибудь через uart пропихнуть. Может так и возможно, видимо, никто ранее не задавался этим вопросом.
Кстати, где-то встречал и реализацию SPI через UART
Spi и uart это байториентированные усройства. Ethernet это пакетный протокол.
Сейчас этот форум просматривают: Сталкер84 и гости: 32
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения