Скрыть объявление
На нашем форуме недоступен просмотр изображений для неавторизованных пользователей. Если Вы уже зарегистрированы на нашем форуме, то можете войти. Если у Вас еще нет аккаунта, мы будем рады, если Вы к нам присоединитесь. Зарегистрироваться Вы можете здесь.

Web-свалка на RTL871x

Тема в разделе "Realtek - SDK, прошивки и утилиты", создана пользователем pvvx, 21 апр 2017.

  1. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    8.395
    Симпатии:
    1.271
    Работает он. Что будет то с LwIP-овым socket? Он отлажен годами... Но он жрет и держит память на буфера...
    Пора уже использовать WebGL, а не это унылое... :)
    Скорости отображения графиков у них разные, на порядки...
    WebGL Aquarium
    А бедные дети всё приложения в маркет на телефоны с кривыми кнопками (те, что с привязкой к mqtt) пишут, когда устройство само способно всё выдать в броузере :)
    TeeChart 3D Charting for JavaScript Three.js WebGL™ Basic Example
    Ну так организован протокол для ADC, чтобы ловить пропуски... Он не рассчитан на много пользователей.
    Это смотря что вам надо. Мне пока такого не требуется.
     
    Последнее редактирование: 24 мар 2018
  2. aloika

    aloika Активный участник сообщества

    Сообщения:
    367
    Симпатии:
    25
    Столкнулся с интересным поведением прошивки, хотелось бы его осознать.

    Есть функция, инициализирующая прерывание по приему символа в UART:

    Код (C):
    1. void uart_init(void)
    2. {
    3.      serial_t    sobj;
    4.     serial_init(&sobj,UART_TX,UART_RX);
    5.     serial_baud(&sobj,9800);
    6.     serial_format(&sobj, 8, ParityNone, 1);
    7.     serial_irq_handler(&sobj, uart_irq, (uint32_t)&sobj);
    8.     serial_irq_set(&sobj, RxIrq, 1);
    9.  }
    И есть соответствующий обработчик прерывания.

    Вопрос - в каком месте нужно вызвать uart_init(), чтобы прерывание корректно обрабатывалось всегда?

    Я тут поэкспериментировал немного:

    1. Если вызвать uart_init() до запуска шедулера, то по приходу символа всё виснет и далее вотчдог.
    2. Если вызвать uart_init() в user_init_thrd, то вроде бы начинает работать, но после применения новых настроек wi-fi по приходу символа всё виснет и далее вотчдог. Кстати, если обработчик прерывания сделать пустым, то поведение как в п.1.
    3. Если вызвать uart_init() в web_int_callback (по определенному условию), то всё работает корректно.

    Понятно, что такое поведение связано с freertos. В некорректных случаях исполнение программы попадает в обработчик прерывания и дальше никуда не идёт. Как можно понять такое поведение?
     
  3. A_D

    A_D Авторитетный участник сообщества

    Сообщения:
    325
    Симпатии:
    55
    Начал тут утилиту одну писать, пригодится и в применении WEB свалки, да и других проектов, кому больше нравится на VS работать.

    Собственно вот:
    upload_2018-4-14_21-48-15.png
    Создаём пустой проект Linux Makefile, который можно компилировать в WSL.
    Далее скачиваем WEB свалку (для теста, можно любой другой проект, адаптированный для сборки в WSL), кладём вебсвалку в папку проекта VS (аля обычно расположение файлов, относительно корня\файла проекта VS), запускаем утилиту, выбираем файл проекта VS и выбираем какие файлы\папки добавить в фильтры и сам проект для компиляции - жмем Обновить - Потом жмем Сохранить (VS должна быть закрыта, иначе не даст сохранить).
    Открываем проект в VS - и вауля, всё на месте, остаётся настроить для сборки команды и он собирается аналогично Eclipse.
    ЗЫ. меня сильно удивило, что в VS таки нельзя нормально добавить рекурсивно папки и файлы, что бы они добавились как есть + еще добавлять пути (еще НЕ сделал!) надо для intellisense. В итоге решил сделать такую утилиту. Сейчас первый, более менее заработавший вариант получился.. на гите положил (пока еще есть проблемы и корневые элементы XML раскрываются двойным кликом, но стрелочки не показывается).
     
  4. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    8.395
    Симпатии:
    1.271
    VS со своим аккаунтом в MicroSoft задо... Это не аккаунт а кошелек с рекламой :)
    C WSL есть проблемы с Jtag. USB там ещё не поддерживается. Запросы пользователей по обеспечению эмуляции там libusb ещё не выполнены. Собрать OpenOCD тоже представляется проблемным, если не владеете ручной правкой всего на свете...
    В итого выходит кривенько - винегрет из компиляторов под Ubuntu и Jlink в Win среде. С другими адаптерами ещё проблемнее, т.к. они не адаптированы на USB3.0 -> USB2.0 (скрипты могут не работать с USB2.0 воткнутым в разъем USB3.+ из-за внутренних изменений в самой win с USB3.+).
    Это всё пока и закрывает возможность поиграться "телепузикам" в компиляцию с заливкой стороннего пакета по одной кнопке...
     
    Последнее редактирование: 14 апр 2018
  5. A_D

    A_D Авторитетный участник сообщества

    Сообщения:
    325
    Симпатии:
    55
    VS 2017 не обязательно акк для использования, можно 30 дней юзать хоть Enterprice и все норм. Ну и дальше можно ключик подсунуть при желании и опять же акк не нужен.. MS Store тоже без акка скачивает Ubuntu и т.п.

    Да, с USB я уже понял... когда RAK831 пробовал запустить на нём. Но до отладки еще не дошел... там пока еще есть другие недоработки.
     
  6. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    8.395
    Симпатии:
    1.271
    Да, но 30 дней... Это мало и не для каждого пойдет, если нет безлимитного Инет от 100 Мбит/сек на скачивание "обдейтов" VS, до того как приступить с ней работать. :)
     
  7. A_D

    A_D Авторитетный участник сообщества

    Сообщения:
    325
    Симпатии:
    55
    Ну опять же - есть Community Edition, полностью бесплатная.
    И да, я же не призываю использовать VS всем и всегда, только предлагаю другой путь, кому нравится VS и всё. А не нравится - то не используйте. ;)
     
  8. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    8.395
    Симпатии:
    1.271
    Основа не спор, а применение в качестве простого средства для "начинающих". Не предупредив о сложностях применения VS не стоит её навязывать. Более ничего.
    Если вы сможете решить и написать скрипты на все случаи, автоматически решающие все проблемы по установке VS, то и разговоров то нет. ;) Кроме её монструозности и "загрязнения системы" обычному пользователю Win10, есть ещё такой фактор, что вам придется постоянно поддерживать и менять эти скрипты для каждой версии и чиха Микрософт...
    WSL в данном случае попроще - его можно снести пару кликами, когда он станет ненужен. А в случае работы с другими микроконтроллерами и прочими компиляторами, решение через WSL является более универсальным из-за поддержки Unix/Linux/...
    Из оболочек, к примеру Eclipse, вcё равно в какой из сред Linux или Windows она работает. Принципы и описания решения проблем и задач совпадают для неё в любой среде...
     
    Последнее редактирование: 17 апр 2018
  9. A_D

    A_D Авторитетный участник сообщества

    Сообщения:
    325
    Симпатии:
    55
    Я как бы и не пишу, что это для "начинающих" и тем более не навязываю (откуда вы это взяли..). Мне к примеру удобно использовать одну IDE, тем более с кучей удобств в плане рефакторинга и написания кода, может кто то так же думает - почему бы не поделится инфой...
    Установка VS сложна?... ну как сказать.. я потихоньку почти полностью на 2017 перелез и проблем не заметил, кроме одного раза, когда на новой машине ставил с функциями мобильной разработки - что то не так поставилось, но руками в конф.файле правится и делов на минуту. А так - установщик VS сейчас крайне дружелюбен и интуитивно понятен, имхо.
    Ну как говорится - о вкусах не спорят, не нравится - не используйте. ;)
     
  10. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    8.395
    Симпатии:
    1.271
    У меня наверно извращенный вкус - установлены и используются VS нескольких версий и всё остальное :)
    Подскажите, как собрать в VS OpenWRT для Omega2+ ?
    Недавно пробовал собрать под WSL openosd-esp32 редакции Espressif для платформы Windows, как-то знание VS совсем не помогли, как и рекомендации на сайтах ESP-IDF. :) Но всё-же удалось собрать, плюнув на описания от фанатов ESP-IDF... Это к тому, что пришлось разбираться самому, в том что установлено и что надо установить, да что поменять... Среда VS и знания по ней в данном случае никаким боком не поможет. А это всего типовые задачи, уровнем немного выше мигания светодиодом в Arduino...
    Из этого выходит, что VS – это среда немного выше чем амбразура в Arduino. Позволяет создавать пользовательские приложения для мигания уже парой светодиодов :) , но не решает задач по созданию более сложных систем. Альтернатив у VS множество, но классическим так и остается сборка через make в среде Linux, используя любой редактор.
    Толстый и жирный VS безуспешно пытается конкурировать с MC в linux или FAR в Windows. :)
     
    Последнее редактирование: 18 апр 2018
  11. A_D

    A_D Авторитетный участник сообщества

    Сообщения:
    325
    Симпатии:
    55
    Ну у меня пока тоже 2015 и 2017 стоит, на 2015 основной проект по работе и первые эксперименты по SoC делал, а на 2017 уже новые проекты и изучаю новые фишки C# 7.0+ (одни только локальные функции чего стоят - как я раньше без них жил.. :D ), потом постепенно рабочий проект переедет на 2017ю тоже. Пример приложения:
    upload_2018-4-18_12-12-1.png upload_2018-4-18_12-12-44.png

    Ну это уже будет скоро дискуссия как с определёнными пользователями тут (известных по перлам типа "10 кОм в затвор MOSFET от управляющей ножки для ШИМ и всё будет работать" и подобным). Если цель стоит именно собрать - то IDE и не нужна конечно, а если написание кода - то тут уже выбирает каждый сам, с чем ему удобнее работать.
    Я к примеру ваш пример WEB свалки смог не меняя, экспортировать в Makefile проект для Linux и собрать без проблем. Для этого написал утилиту (далее её можно в расширение потом переделать), которая работает с проектными файлами VS, а их структура, что для 2015, что для 2017 - не меняется, поэтому и переписывать не требуется. И это безусловно не для ардуинщиков - я как бы и не пытаюсь предложить простейшее решение из коробки... ибо надо развиваться и изучать, а не тупо использовать готовое. (я к примеру изучение сборки makefile освоил именно благодаря Вашим проектам и своему желанию запустить это в VS, намучался, еще далеко не все понимаю, но все-равно я этому очень рад, т.к. не плохо расширил свои знания)

    Еще из плюсов, к слову, встроенный клиент GitHub - очень удобно, пишешь проект и когда надо заливаешь, не отвлекаясь:
    upload_2018-4-18_12-43-39.png
     
    Последнее редактирование: 18 апр 2018
  12. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    8.395
    Симпатии:
    1.271
    В таких случаях требуются мелкие коррекции, в которых как раз отследить зависимости бы, но тысячи файлов VS распарсить не можетЪ :( Итог: Ручками и поиском по проекту.. Т.е. и тут VS отпадает :)
     
  13. A_D

    A_D Авторитетный участник сообщества

    Сообщения:
    325
    Симпатии:
    55
    upload_2018-4-18_14-21-32.png
    2017я парсит) Ваш проект RTL00_WEB без изменений экспортировал и пожалуйста - смотри, переходи, изменяй. Сегодня как раз докрутил экспорт списка папок, которые парсить и опробовал.
    ЗЫ. со свеже созданным проектом правда еще косяк - отсутствие .vcxproj.filters сейчас поправил, создает сам, а с отсутствующими секциями в .vcxproj еще не поборол косяк - работает, если вначале сами вручную добавили пару файлов разного типа, а если не добавляли (просто голый проект) - пока не создает сам...
    upload_2018-4-18_15-8-42.png
     
    Последнее редактирование: 18 апр 2018
  14. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    8.395
    Симпатии:
    1.271
    Сплошной файл автоДизасма->СИ всей ROM c либами "парсит"?
    Eclipse требует изменения максимального кол-ва строк обработки в файле, при изменении тормозит - лаги :) Файл СИ псего-то 4 мегабайта :)
    Без него как-то плохо писать - не видно что делают вызываемые функции...
     
    Последнее редактирование: 18 апр 2018
  15. A_D

    A_D Авторитетный участник сообщества

    Сообщения:
    325
    Симпатии:
    55
    Такое не проверял, врать не буду. И это уже специфичные задачи) То вначале вы ардуинщиков защищаете - мол вот сложно им же установить VS и т.п., то приводите в пример специфичный пример применения, который откровенно не для ардуинщиков.
    Отсюда цель только одна виднеется - желание просто дискутировать на тему как плохо применять VS по любой причине ?
     
  16. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    8.395
    Симпатии:
    1.271
    Дискутирование не по поводу VS. Это вы её защищаете. Проблемс во всех оболочках. Их функциональность от простого редактора текста далеко не ушла и многие обходятся без таких оболочек от слова сопсем. На этом построены все проекты собираемые под Linux...
     
  17. A_D

    A_D Авторитетный участник сообщества

    Сообщения:
    325
    Симпатии:
    55
    Ну я предлагаю просто вариант пути, а вы по любому поводу откидываете VS (т.е. а-ля нападаете), начиная от простейших предлогов и заканчивая уже специфическими, просто по порядку проходясь по всем - опять же, если не нравится - то можно и не использовать, я ведь не навязываю...

    В этом как по мне и странность... если есть возможность использования не просто блокнота, а удобного редактора\IDE - зачем есть кактусы. Ну опять же дело вкуса.)

    ЗЫ. Для меня главное - пока я разбираюсь в этом, я получаю опыт. И в С# и в построении си makefile проектов.
    А далее уже этот опыт можно применить к написанию linux программ для встраиваемых систем, iMX6 или других. Если получится нормально сделать с использованием VS - то это будет только в плюс для работы.
    По возможности делюсь наработками (опытом) - а далее уже решать тому, кто читает\смотрит на наработки - использовать\перенять\подсказать\хаить и т.д.
     
  18. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    8.395
    Симпатии:
    1.271
    А я интересуюсь, в чем "прелесть" VS.
    Вкус тут на последнем плане. Во всех IDE надо затратить время на "встраивание готового проекта" в них, что не окупается.
    Когда опыта достаточно для перевода проекта в любую IDE, то это не вкус, а привычка.
     
  19. A_D

    A_D Авторитетный участник сообщества

    Сообщения:
    325
    Симпатии:
    55
    Дык выше же писал:
    Ну у меня видимо да, больше привычка уже. Но не вижу ничего плохого, если можно использовать один инструмент, а не зоопарк держать на ПК.. (конечно без фанатизма, если быстро не переводится - то смысла заниматься портированием мало)
     
  20. pvvx

    pvvx Активный участник сообщества

    Сообщения:
    8.395
    Симпатии:
    1.271
    Я думал что напишите что более технически интересное... Например как проще собрать проект с нуля на VS к примеру на Omega2+ не LEDE с OpenWRT, а что-то типа FreeBSD(PicoBSD/NanoBSD) или ещё проще на RTOS...
    А как без зоопарка, если у всех свои привычки, а нормальный проект составляется из суммы разных кусков? Это же не светодиодом моргать в Arduino.
    Для мигалок уже есть всякие платные проприетарные расширения к VS...
    VS это как Arduino - покупаете готовые модули, к которым в цену уже входят либы к ней. Китайские подделки не в счет - они в софт не вкладывались и за счет этого и существуют...
     
    Последнее редактирование: 19 апр 2018

Поделиться этой страницей