|
Разработка под ARM |
|
|
2 страниц
1 2 >
|
 |
Ответов
(1 - 25)
|
Sep 29 2017, 08:10
|

Частый гость
 
Группа: Свой
Сообщений: 75
Регистрация: 25-09-08
Из: Москва
Пользователь №: 40 470

|
Цитата(k000858 @ Sep 29 2017, 08:10)  Сейчас работаю под 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
|
|
|
|
|
Sep 29 2017, 08:40
|

Местный
  
Группа: Участник
Сообщений: 319
Регистрация: 31-01-12
Пользователь №: 69 978

|
Цитата(Gleb80 @ Sep 29 2017, 12:10)  C Linux будет почти также. Можно воспользоваться ARM DS-5, там и Eclipse и GNU-toolchain http://www.compel.ru/wordpress/wp-content/.../02/DS5_NEW.pdfсходу не нашел, насколько она платна/бесплатна? все нашел. много ка евро. вариант, не совсем подходящий (на данном этапе). Есть какие то альтернативы?
|
|
|
|
|
Sep 29 2017, 09:54
|

Местный
  
Группа: Участник
Сообщений: 319
Регистрация: 31-01-12
Пользователь №: 69 978

|
Цитата(scifi @ Sep 29 2017, 13:48)  Берёте платку с уже готовой осью. Остаётся только добавить своё приложение. Всё. ну это на этапе "пощупать". В последствии будут свои платы со своей периферией под разные задачи. Соответственно программить необходимо будет начиная драйверами заканчивая "приложениями".
|
|
|
|
|
Sep 29 2017, 10:13
|

Частый гость
 
Группа: Свой
Сообщений: 75
Регистрация: 25-09-08
Из: Москва
Пользователь №: 40 470

|
Цитата(k000858 @ Sep 29 2017, 12:42)  спасибо за ответы. интересует более детальное описание процесса разработки. я вижу это так: есть плата с процессором, памятью и флэш (на отладочной наверное 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/
|
|
|
|
|
Sep 29 2017, 22:04
|
Знающий
   
Группа: Участник
Сообщений: 825
Регистрация: 16-04-15
Из: КЧР, Нижний Архыз
Пользователь №: 86 250

|
Я извиняюсь, но если разработчик "проклинает линукс", то это не разработчик никакой! Потому как линукс и мастдайка — небо и земля! Особенно если под железо что-то пишешь. Линукс — нормальная операционная система, а мастдайка — так, пускалка игрушек. Из личного опыта сразу советую автору прикупить (если еще нет) дешевый преобразователь UST<->TTL (например, на PL2303, они где-то по полбакса на али), подключить его к Rx/Tx "малинки" и иметь таким образом нормальный терминал — очень помогает при первичной настройке, чтобы не тянуть дополнительную клавиатуру и монитор. А уж как сеть настроена, запускаем ssh и работаем через него. Вот только, учитывая тормознутость армов, лучше отлаживать софт на компьютере (#define'ами поотключав всякие wiringPi и т.п. архитектурно-зависимые штуки), а уж как точно проверено, что собирается нормально и багов нет, компилировать на одноплатнике. В принципе, если не нужно в реальном времени видео обрабатывать, и нет нагрузки больше пары-тройки клиентов, даже самая простая "малинка" подойдет для разработки. Собрать простую веб-морду и радоваться... Я последнее время люблю вебсокеты использовать, но и REST можно. Пример простой веб-морды (видео пришлось по-старинке jpeg'ами гнать, т.к. все остальное было слишком медленно, а ничего приличного для работы с рилтаймовым потоком в браузере до сих пор не придумали). И да, если не планируется одноплатник к монитору подрубать, лучше сразу выпилить иксы и прочую ненужную гадость, связанную с ними.
Сообщение отредактировал Эдди - Sep 29 2017, 22:05
|
|
|
|
|
Sep 30 2017, 10:34
|

Профессионал
    
Группа: Модераторы
Сообщений: 1 951
Регистрация: 27-08-04
Из: Санкт-Петербург
Пользователь №: 555

|
k000858, Вы же уже с Eclipse работаете! Так и продолжайте. В eclipse есть все необходимые плагины для удаленной отладки. Вот примеры как для малины используют http://cxemotexnika.org/2016/10/programmir...se-pod-windows/
|
|
|
|
|
Sep 30 2017, 15:43
|
Местный
  
Группа: Участник
Сообщений: 244
Регистрация: 29-02-08
Пользователь №: 35 503

|
Цитата(KRS @ Sep 30 2017, 15:34)  k000858, Вы же уже с Eclipse работаете! Так и продолжайте. В eclipse есть все необходимые плагины для удаленной отладки. Вот примеры как для малины используют http://cxemotexnika.org/2016/10/programmir...se-pod-windows/На мой взгляд прекрасным инструментом разработки является фреймворк Qt, существует немало руководств по организации кросс компиляции Qt дл RPi. Правда ни по одному из них мне не удалось довести дело до конца. Несколько лет назад делал проект для платы SK-ATSAMA5D3, впечатления самые положительные. С запуском кросс компиляции для этой платы проблем не возникло. Если сможете запустить кросскомпиляцию Qt для RPi3 - потом расскажете..
Сообщение отредактировал nanorobot - Sep 30 2017, 15:45
|
|
|
|
|
Sep 30 2017, 16:46
|
Местный
  
Группа: Участник
Сообщений: 244
Регистрация: 29-02-08
Пользователь №: 35 503

|
Цитата(Эдди @ Sep 30 2017, 21:23)  Культям на одноплатнике стопроцентно нет никакого места! Зачем эта жирная неповоротливая гадость на и без того еле лапами шевелющем чипе? Несколько безапеляционно.. В чем принципиаиальное отличие Qt от(от чего? Вы то что предлагаете?) "простого" C++? Что его так "утяжелило" ? Библиотеки? Механизм сигналы/слоты? или что то другое? Так вы вольны их не использовать. Коли уж на то пошло то и линукс долой с одноплатников. Bare Metal наше все! PS: Или Вы решили , что я предлагаю QT Creator установить на одноплатник? Речь была о кросс компиляции.
Сообщение отредактировал nanorobot - Sep 30 2017, 17:38
|
|
|
|
|
Sep 30 2017, 17:40
|
Участник

Группа: Участник
Сообщений: 73
Регистрация: 26-10-05
Пользователь №: 10 125

|
Цитата(k000858 @ Sep 29 2017, 10:10)  Предстоит осваивать Linux-устройства. Для "попробовать" заказана Малина (позже переориентируемся под более удобные процессоры). Интересует с помощью каких средств разрабатывается ПО под старшие системы? Как происходит отладка?
Сейчас работаю под Eclipse + GNU для разработки под STM32. Тут все просто: скомпилил, тут же залил, включил отладчик либо вывод SWO.
А как это делается под MPU? Устройства в основном будут с ethrnet интерфейсом. Есть линукс для stm32 смотрите в сторону uclinux, и при чем здесь MPU возможно вы перепутали с MMU? Вам правильно ответили, смортите в сторону yocto это сейчас мейнстрим. Суть процесса разработки под АРМ , качаем и правим u-boot далее разбираемся с ядром линукс , а это сборка + devicetree пад вашу платформу. Для начала лучше действительно разобраться с действующей платформой типа "малинки",.. вобщем мой совет сначала разобраться во всем в "разобранном" виде. Это в смысле собрать свой u-boot и ядро, а потом освоить как формируются рецепты и как добавить свои программы в rootfs вашей сборки. Обычно для каждой плаформы имеется guide как собрать правильный образ в yocto.. лучше просмотреть несколько, для разных типов платформ, тогда будет более понятно что такое слой (layer) и что такое yocto вообще. И как только команды devtool и bitbake будут для вас "родными" вы сможете разобраться как устроить отладку и деплой вашего приложения.
|
|
|
|
|
Sep 30 2017, 18:37
|
Знающий
   
Группа: Участник
Сообщений: 825
Регистрация: 16-04-15
Из: КЧР, Нижний Архыз
Пользователь №: 86 250

|
Цитата(nanorobot @ Sep 30 2017, 19:46)  В чем принципиаиальное отличие Qt от(от чего? Вы то что предлагаете?) "простого" C++? C++ я тоже считаю избыточным. Но это просто ЯП. А вот культяпки... Бешеная жирнючая библиотека с переизбытком всяких лишних совершенно ненужных вещей. Цитата Коли уж на то пошло то и линукс долой с одноплатников. Bare Metal наше все! С линуксом там как раз все ОК, очень удобно работать: меньше ненужных телодвижений. Правда, возникает проблема с доступом к низкоуровщине: кое-что до сих пор по-человечески не сделано, приходится suid-биты выставлять на исполняемые файлы.. Цитата PS: Или Вы решили , что я предлагаю QT Creator установить на одноплатник? Речь была о кросс компиляции. Ну и кросс-компиляйте себе на нормальных сях, а не этом ублюдстве! Вы еще буст туда добавьте для радостей жизни! И да, что-то мне подсказывает, что ТС вообще "пороху не нюхал" и лучше бы ему снести нафиг все эти вендозы с компьютера и научиться работать в линуксе. Года 3, думаю, хватит. А потом уже можно на напаханном поле...
Сообщение отредактировал Эдди - Sep 30 2017, 18:38
|
|
|
|
|
Oct 1 2017, 21:40
|

unexpected token
   
Группа: Свой
Сообщений: 899
Регистрация: 31-08-06
Из: Мехелен, Брюссель
Пользователь №: 19 987

|
Цитата(mantech @ Oct 1 2017, 20:03)  И что там такого можно крутого-эффективного сделать?? Легче поднять GUI-приложение имхо. Цитата(mantech @ Oct 1 2017, 20:03)  Граф. интерфейса там нет насколько помню wpf
--------------------
А у тебя SQUID, и значит, мы умрем.
|
|
|
|
|
Oct 2 2017, 16:00
|
Гуру
     
Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143

|
Цитата(alexunder @ Oct 2 2017, 00:40)  Легче поднять GUI-приложение имхо.
wpf Как бы пишут так: " Все, что относится к графике уже год в таком статусе: «is not currently supported, as it requires GPU services that are not currently available on the Raspberry Pi because the DirectX driver has not been implemented» UI (читай WPF) через программную эмуляцию там все же есть и работает, но пользоваться им толко нельзя, потому и остаются только безголовые решения или с веб-интефейсом управления. Ждем выхода Pi 3 (или сразу 8?), может тогда что-то по софту изменится и можно будет хоть медиа-плееры или центры видеонаблюдения делать."
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|