Перейти к содержанию
    

Как делают WEB интерфейс для дивайсов на Cortex-M?

1 hour ago, rkit said:

Религия не позволяет, или что? 

Ну какая религия. Я её  здесь только выбираю.
Но у вас аргумент смешной - "Делай на Angular потому что я не нем делал"
Во, просканируйте сколько, чего и откуда качает простенький hello word на Angular: https://angular-8dxypw.stackblitz.io/
Зависимостей кошмарная туча.
Это не может работать на Cortex-M. Может вы попутали с Cortex-A ? 
 
 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 4/9/2021 at 6:49 PM, rkit said:

JSON api + Angular 

Нашел откуда у этой темы ноги растут.
Да на Angular делают WEB интерфейсы у D-Link-ов
Но например вот такой простенький интерфейс:
image.thumb.png.46662557d35da7ff3176e3a5df40816c.png


сразу качает под 2 мега разных скриптов и стайлшитов
image.thumb.png.bd69fdade5fa49c939533d8bdff9178c.png

Ну так у D-Link-ов этот интерфейс тормозной как я не знаю. 
Худшего примере и придумать трудно. 


 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Так руками написать html/css/js будет намного быстрей и надежней. Тем более для кортексов-м. Правда, я бы таки не парился и поставил хотя бы "малинку-0" для веба. Под линуксом веб-морду делать на nginx'е намного приятней, чем мучиться с жирным тормозящим lwIP на микроконтроллерах (особенно весело там поллинг устраивать, когда нет MMU и malloc/free невозможно использовать - остается лишь заранее задать фиксированное максимальное количество подключений).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

7 часов назад, AlexandrY сказал:

Ну так у D-Link-ов этот интерфейс тормозной как я не знаю. 
Худшего примере и придумать трудно. 

Да весь интернет сегодня - этот пример! 15 лет назад заходил на мейл ру диалапом 6кб\сек, ждал 30 сек. Сегодня качает 3мегабайта только открыть страничку с входящими, жесть!

6 часов назад, Eddy_Em сказал:

Так руками написать html/css/js будет намного быстрей и надежней.

Об этом и говорил - но не модно же :biggrin:

6 часов назад, Eddy_Em сказал:

Под линуксом веб-морду делать на nginx'е намного приятней, чем мучиться с жирным тормозящим lwIP на микроконтроллерах

Морду-то удобнее, а вот связать ее с "железом" - отнюдь... И жирный лвип использовать никто не принуждает.

6 часов назад, Eddy_Em сказал:

когда нет MMU и malloc/free невозможно использовать - остается лишь заранее задать фиксированное максимальное количество подключений)

Это очень здорово - нет недостатков от динам памяти, и вообще, зачем на МК куча одновременных подключений? Это ж не публичный инет-магазин или платежная система...

Изменено пользователем mantech

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

11 minutes ago, mantech said:

И жирный лвип использовать никто не принуждает.

А что, есть варианты без этой гадости? Как? Я бы попробовал на STM32F407. Но с другой стороны, у меня на железяках во внутренней сети может быть с десяток одновременных коннектов, поэтому чтобы не насиловать микроконтроллер, я использую "апельсинку" в качестве сервера (зачастую даже и без nginx, свой самопальный демон все нужное делает), а с МК связываюсь по USB.

Вообще, идеальным была бы комбинация возможностей МК и линукса: эдакий комбинированный процессор кортекс-а, у которого была бы вся периферия кортексов-м. И с ней можно было бы работать вменяемым образом (а не через sysfs или /dev/kmem). А то получается, что дорогущий одноплатник за тысячу рублей у меня играет роль тупого посредника между ethernet и МК.

Изменено пользователем Eddy_Em

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

6 hours ago, Eddy_Em said:

Так руками написать html/css/js будет намного быстрей и надежней. Тем более для кортексов-м. Правда, я бы таки не парился и поставил хотя бы "малинку-0" для веба. Под линуксом веб-морду делать на nginx'е намного приятней, чем мучиться с жирным тормозящим lwIP на микроконтроллерах (особенно весело там поллинг устраивать, когда нет MMU и malloc/free невозможно использовать - остается лишь заранее задать фиксированное максимальное количество подключений).

Если от сервера надо только парсить GET и POST и выдавать в ответ запрашиваемые файлы, то не имеет значения какой сервер от слова вообще. 
Да и lwIP не единственный вариант для Cortex-M, сейчас с десяток серверов опенсорсных можно найти для это платформы.
Кста встраиваемому дивайсу незачем позволять много подключений. У меня строго одна сессия и не больше 2-х коннектов одновременно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А я вот даже для управляемой розетки беру "апельсинку-0" за 1000 рублей, к ней приколпачиваю по USB плату на STM32F0х2, а уж эта плата занимается включением/отключением релюшек и симисторов с контролем силы тока и прочими плюшками. В данном случае "апельсинка" нужна лишь потому, что я не могу сделать имплементацию sshd на микроконтроллере. По ssh из скриптов запускаю команды, релюшка их выполняет. Еще могу обратиться курлом, неткатом или из браузера на определенный порт и увидеть статистику в удобном виде параметр=значение.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

38 minutes ago, mantech said:

Да весь интернет сегодня - этот пример! 15 лет назад заходил на мейл ру диалапом 6кб\сек, ждал 30 сек. Сегодня качает 3мегабайта только открыть страничку с входящими, жесть!

Весь интернет не есть пример. Интересуют только  встравиваемые микро-дивайсы. 
Вот эта страница форума к примеру качает при открытии почти 4 мега и почти 80 файлов.
Совершенно не страшен такой размер. Страница открывается за секунду. 
Для встраиваемого дивайса на локальной сетке еще быстрее было бы.
Но проблему создает количество файлов и их URL-ы. 
Это какие-то дикие GET-ы c обфусцированным форматом. Мелкий embedded сервер такое не потянет, потому что это требует реализации специального парсера. 
К такому же формату приводят всякие Angular-ы, Vue.js , и т.д.
Но отказаться вообще от фреймворков нельзя если вы не сильны в дизайне. 
Тот же JQuery mobile вам из простой формы сделает конфетку. Но он делает это своей либой путем перепахивания HTML-а страниц.
Т.е. вы делаете некое убожество из примитивных тэгов input,   а скрипт  JQuery mobile вставленный в заголовок страницы превращает ее в нормальный такой дизайн молодежный и риспонсивный
Вот в этом и есть сила.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

28 minutes ago, mantech said:

Да весь интернет сегодня - этот пример! 15 лет назад заходил на мейл ру диалапом 6кб\сек, ждал 30 сек. Сегодня качает 3мегабайта только открыть страничку с входящими, жесть

Против такого дерьма есть uMatrix.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

13 minutes ago, Eddy_Em said:

 лишь потому, что я не могу сделать имплементацию sshd на микроконтроллере. По ssh из скриптов запускаю команды, релюшка их выполняет. Еще могу обратиться курлом, неткатом или из браузера на определенный порт и увидеть статистику в удобном виде параметр=значение.

Теперь прикиньте какое мелкое препятствие вам мешает в два раза удешевить и упростить дивайс.
На STM32 уже портирована Azure RTOS которая вам сделает WEB сервер на HTTPS c поддержкой честных сертификатов на которые не будут ругаться браузеры. 
Я управляю через MQTT защищенный TLS-ом из той же Azure через облака Azure и это гораздо эффективней чем  sshd и молодежней. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не нужен никакой жоквайрь! Со стороны клиента это будет всего-то полторы страницы кода на жабоскрипте. А со стороны сервера все равно выдумывать, как запросы обрабатывать. Я когда-то свою собственную библиотечку использовал на компе для обработки веб-запросов, сейчас решил использовать libonion (классная библиотечка, много времени экономит, но немного сыроватая - нужно допиливать).

Но с компом, как я уже говорил, проще: там линукс, там все легко. Можно хоть на баше сервер для локалки забульбенить (у меня так два 0.5-метровых телескопа сейчас работают, ожидают, пока руки дойдут; а еще данные с одной all-sky камеры обрабатываются, архивируются и выставляются в веб при помощи баш-скрипта).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

17 минут назад, AlexandrY сказал:

На STM32 уже портирована Azure RTOS

Я категорически против ртосей. Я считаю, что если нет MMU, то и ртось никакая не поможет. Дешевле (в плане разработки и траты ресурсов МК) самому навелосипедить конечные автоматы. А если есть MMU, так ставим туда линукс и не паримся.

Без понятия, что такое mqtt и azure, мне это не нужно и никогда не понадобится. P.S. Погуглил. Все с вами ясно. 

Изменено пользователем makc
Переход на личности удалён

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

36 минут назад, Eddy_Em сказал:

Я категорически против ртосей. Я считаю, что если нет MMU, то и ртось никакая не поможет...

36 минут назад, Eddy_Em сказал:

Все с вами ясно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

46 minutes ago, AlexandrY said:

На STM32 уже портирована Azure RTOS

Так вот для чего эта тема !!!

MS стал приплачивать за рекламу лазурного (голубого ?) ?

Она портирована давно уже.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...