k000858 0 29 сентября, 2017 Опубликовано 29 сентября, 2017 (изменено) · Жалоба Предстоит осваивать Linux-устройства. Для "попробовать" заказана Малина (позже переориентируемся под более удобные процессоры). Интересует с помощью каких средств разрабатывается ПО под старшие системы? Как происходит отладка? Сейчас работаю под Eclipse + GNU для разработки под STM32. Тут все просто: скомпилил, тут же залил, включил отладчик либо вывод SWO. А как это делается под MPU? Устройства в основном будут с ethrnet интерфейсом. Изменено 29 сентября, 2017 пользователем k000858 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 241 29 сентября, 2017 Опубликовано 29 сентября, 2017 · Жалоба А как это делается под MPU? Устройства в основном будут с ethrnet интерфейсом. MPU есть и в STM32. Попробуйте - понравится :rolleyes: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
k000858 0 29 сентября, 2017 Опубликовано 29 сентября, 2017 · Жалоба MPU есть и в STM32. Попробуйте - понравится :rolleyes: Я имел ввиду микропроцессоры Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Obam 38 29 сентября, 2017 Опубликовано 29 сентября, 2017 · Жалоба Включил, загрузился - обычная Линукс-машина. Как люди под dos\windows писали\пишут, так и тут. Не? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
grebenkoff 0 29 сентября, 2017 Опубликовано 29 сентября, 2017 · Жалоба Сейчас работаю под Eclipse + GNU для разработки под STM32. Тут все просто: скомпилил, тут же залил, включил отладчик либо вывод SWO. А как это делается под MPU? Устройства в основном будут с ethrnet интерфейсом. C Linux будет почти также. Можно воспользоваться ARM DS-5, там и Eclipse и GNU-toolchain http://www.compel.ru/wordpress/wp-content/.../02/DS5_NEW.pdf Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
k000858 0 29 сентября, 2017 Опубликовано 29 сентября, 2017 · Жалоба C Linux будет почти также. Можно воспользоваться ARM DS-5, там и Eclipse и GNU-toolchain http://www.compel.ru/wordpress/wp-content/.../02/DS5_NEW.pdf сходу не нашел, насколько она платна/бесплатна? все нашел. много ка евро. вариант, не совсем подходящий (на данном этапе). Есть какие то альтернативы? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
scifi 1 29 сентября, 2017 Опубликовано 29 сентября, 2017 · Жалоба C Linux будет почти также. Можно воспользоваться ARM DS-5, там и Eclipse и GNU-toolchain http://www.compel.ru/wordpress/wp-content/.../02/DS5_NEW.pdf Я так понимаю, такие штуки нужны для разработки загрузчиков, драйверов и тому подобного. Для отладки юзерспейса используют gdb, если не ошибаюсь. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Eddy_Em 2 29 сентября, 2017 Опубликовано 29 сентября, 2017 · Жалоба Абсолютно так же, как и на "обычном" компьютере. Лично я пользуюсь printf и логгированием в файл. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
k000858 0 29 сентября, 2017 Опубликовано 29 сентября, 2017 · Жалоба спасибо за ответы. интересует более детальное описание процесса разработки. я вижу это так: есть плата с процессором, памятью и флэш (на отладочной наверное SD, на готовом устройстве нанд какая нибудь). На флэш заливается загрузчик (юбут какойнибудь) и образ ОС. Сам этот образ ОС собирается программистом в среде разработки или испод десктоопной ОС Линукс. Предварительно перед сборкой программист пишет драйвера (BSP периферии), некие функции (приложения). BSP процессора, памяти и флэш уже включены в OS от производителя. После загрузки образа на флэш происходит загрузка ПО устройства в память (включение и запуск устройства). При этом программист контролирует выполнение программы с помощью JTAG отладчика + gdb компилятора либо консоли подключенной по IP. Поправьте в чем я ошибаюсь. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
scifi 1 29 сентября, 2017 Опубликовано 29 сентября, 2017 · Жалоба Поправьте в чем я ошибаюсь. Берёте платку с уже готовой осью. Остаётся только добавить своё приложение. Всё. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
k000858 0 29 сентября, 2017 Опубликовано 29 сентября, 2017 · Жалоба Берёте платку с уже готовой осью. Остаётся только добавить своё приложение. Всё. ну это на этапе "пощупать". В последствии будут свои платы со своей периферией под разные задачи. Соответственно программить необходимо будет начиная драйверами заканчивая "приложениями". Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
scifi 1 29 сентября, 2017 Опубликовано 29 сентября, 2017 · Жалоба В последствии будут свои платы со своей периферией под разные задачи. Соответственно программить необходимо будет начиная драйверами заканчивая "приложениями". Я этими вещами не занимался, но складывается ощущение, что раз вы задаёте такие вопросы, то лучше вам туда не соваться. Пытаетесь прыгать выше головы. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
grebenkoff 0 29 сентября, 2017 Опубликовано 29 сентября, 2017 · Жалоба спасибо за ответы. интересует более детальное описание процесса разработки. я вижу это так: есть плата с процессором, памятью и флэш (на отладочной наверное SD, на готовом устройстве нанд какая нибудь). На флэш заливается загрузчик (юбут какойнибудь) и образ ОС. Сам этот образ ОС собирается программистом в среде разработки или испод десктоопной ОС Линукс. Предварительно перед сборкой программист пишет драйвера (BSP периферии), некие функции (приложения). BSP процессора, памяти и флэш уже включены в OS от производителя. После загрузки образа на флэш происходит загрузка ПО устройства в память (включение и запуск устройства). При этом программист контролирует выполнение программы с помощью JTAG отладчика + gdb компилятора либо консоли подключенной по IP. Поправьте в чем я ошибаюсь. В целом все так, но как известно, дьявол кроется в деталях, а их очень много и продираясь сквозь них многие разработчики проклинают Linux и отказываются от него навсегда :) Есть несколько открытых проектов, занимающихся средствами разработки для Embedded Linux, например Yocto: https://www.yoctoproject.org/ https://www.yoctoproject.org/product/angstrom-distribution они значительно облегчают жизнь начинающему микроконтроллерному линуксоиду (например мне :) ). Поэтому я согласен с scifi, лучше взять готовый проект, максимально похожий на ваш и его прогрызать, приготовившись пролить много горьких слез и провести длинные бессонные ночи :) Еще вот тут много чего на эту тему: https://rocketboards.org/ Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Eddy_Em 2 29 сентября, 2017 Опубликовано 29 сентября, 2017 (изменено) · Жалоба Я извиняюсь, но если разработчик "проклинает линукс", то это не разработчик никакой! Потому как линукс и мастдайка — небо и земля! Особенно если под железо что-то пишешь. Линукс — нормальная операционная система, а мастдайка — так, пускалка игрушек. Из личного опыта сразу советую автору прикупить (если еще нет) дешевый преобразователь UST<->TTL (например, на PL2303, они где-то по полбакса на али), подключить его к Rx/Tx "малинки" и иметь таким образом нормальный терминал — очень помогает при первичной настройке, чтобы не тянуть дополнительную клавиатуру и монитор. А уж как сеть настроена, запускаем ssh и работаем через него. Вот только, учитывая тормознутость армов, лучше отлаживать софт на компьютере (#define'ами поотключав всякие wiringPi и т.п. архитектурно-зависимые штуки), а уж как точно проверено, что собирается нормально и багов нет, компилировать на одноплатнике. В принципе, если не нужно в реальном времени видео обрабатывать, и нет нагрузки больше пары-тройки клиентов, даже самая простая "малинка" подойдет для разработки. Собрать простую веб-морду и радоваться... Я последнее время люблю вебсокеты использовать, но и REST можно. Пример простой веб-морды (видео пришлось по-старинке jpeg'ами гнать, т.к. все остальное было слишком медленно, а ничего приличного для работы с рилтаймовым потоком в браузере до сих пор не придумали). И да, если не планируется одноплатник к монитору подрубать, лучше сразу выпилить иксы и прочую ненужную гадость, связанную с ними. Изменено 29 сентября, 2017 пользователем Эдди Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
KRS 1 30 сентября, 2017 Опубликовано 30 сентября, 2017 · Жалоба k000858, Вы же уже с Eclipse работаете! Так и продолжайте. В eclipse есть все необходимые плагины для удаленной отладки. Вот примеры как для малины используют http://cxemotexnika.org/2016/10/programmir...se-pod-windows/ Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться