.NET Fest: полная программа конференции на сайте. Присоединяйся к самому большому .NET ивенту
×Закрыть

С чего начать путь в Embedded Linux? (и стоит ли)

Здравствуйте
Позвольте несколько вопросов к тем, кто разбирается в этой предметной области.

Сейчас я пишу программы на С для микроконтроллеров STM32 (Cortex M0, M3 ядра) в том числе с использованием RTOS. (также занимаюсь разработкой электроники как таковой, но это наверное мне врядли поможет).
Но хочу переходить в сферу Embedded Linux, так как то, чем я занимаюсь сейчас, не очень востребовано в Украине в данный момент (к сожалению) и не очень перспективно здесь же (увы).

1) В таком случае возникла идея спросить у тех, кто уже в этой сфере, с каких книг лучше начать? Что нужно знать во первых, как основу деятельности и что уже доучивать потом?
Ведь в сети мало обучающей информации на эту тему, в сравнении с тем же веб-программированием (может не так искал).

2) Вопрос про «стоит ли вобще это начинать» основан та том, что вакансий для Embedded очень мало в сравнени с остальными направлениями, да и уже опыта немалого просят.

3) И ещё вопрос. Это ведь реально, к одноплатному компьютеру по I2S подключить MEMS-микрофон, писать аудио дорожку, конвертировать её, использовать сервис гугла speech to text (у них есть API на джаве, node.js и плюсах (вроде как) есть) для того чтобы распознавать голосовые команды? (этот проект задуман как обучающий для себя, вот как сделаю его, так значит начало Embedded Linux положено)

LinkedIn
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Кстати IoT + Embedded Linux очень даже вариант.
Рекомендую книжки www.amazon.com/...-Real-World/dp/0137017839 и www.amazon.com/...ell-OReilly/dp/0596100795, плюс есть неплохой блог balau82.wordpress.com/tag/qemu, а также elinux.org/...Virtual_Development_Board (зачем тратить деньги на железо?)
Думаю в попытках сборки и запуска ядра ты поймешь, интересно тебе этим заниматься или нет.

1 в 1 моя ситуация и скилы.
Хотел тоже двинуться немного в высокоуровневое, где больше памяти и быстрее процессоры, но так же загадочно перемигивают светодиодики...
Проходил по теме собеседование, которое завалил, спрашивал совет, что нужно подтянуть, то по-этапам было так:
1. Linux, bash
2. Python
3. C/C++
4. RTOS, многопоточность и сети

Как показывают вакансии, в большинстве случаев, программист "

STM32 (Cortex M0, M3 ядра)
" должен уметь тестить свое оборудование, создавать документацию, разводить печатную плату и организовывать ее производство, часто нужно знать еще углубленно аналоговую или вч схемотехнику. Например, на текущем месте работы у меня этим занимаются 3 разных человека. Ну и, конечно, деньги не те, что хотелось бы.

И с этими знаниями быстро валить в Германию или Штаты, где эти знания востребованы и оплачиваются нормально.

Переходьте на Cypress(www.cypress.com) :) Embedded багато, і хороших спеціалістів дуже цінують.

если есть пару годиков на обучение то вперед, порог входа очень высокий (при поиске работы, сравнительно с другими IT направлениями)

2) Вопрос про “стоит ли вобще это начинать” основан та том, что вакансий для Embedded очень мало в сравнени с остальными направлениями, да и уже опыта немалого просят.
якщо це подобається то так.
Сейчас я пишу программы на С для микроконтроллеров STM32 (Cortex M0, M3 ядра) в том числе с использованием RTOS. (также занимаюсь разработкой электроники как таковой, но это наверное мне врядли поможет).
Но хочу переходить в сферу Embedded Linux, так как то, чем я занимаюсь сейчас, не очень востребовано в Украине в данный момент (к сожалению) и не очень перспективно здесь же (увы).
Не знаю як у Києві, але у Львові є кілька компанії які цим займаються.
1)
derekmolloy.ie/beaglebone — Embedded Linux, Beaglebone Black Raspberry Pi
Основы программирования для Linux

stepik.org/...ммирования-для-Linux-548

3)
catethysis.ru/...e_recognition_google_api

Це не Embedded Linux, але курси дуже цікаві з практичними завданнями на реальних мікроконтроллерах:
1. www.edx.org/...-world-utaustinx-ut-6-03x
2. www.edx.org/...-utaustinx-ut-rtbn-12-01x
1 курс пройшов, другий зараз проходжу, рекомендую.

P.S: "

не очень востребовано в Украине в данный момент"
www.youtube.com/...sQX9×8x4&feature=youtu.be

I2C на одноплатных компах типа RPi и odroid сделан довольно туго, на больше 100КГц может и не заведется, тогда для mems-микрофона не хватит: 8КГц частота опроса — а на каждый опрос надо отправить адрес и регистр, плюс прочитать два регистра — минимум 40 бит (включая ack и старт/стопы), минимум нужно 320КГц — а на практике и 400 может не хватить. Лучше ставить буферный микроконтроллер с нормальным spi для микрофона и встроенным юсб для одноплатного компьютера

Да, стоит. IoT is on the way. А вообще множество железок сейчас встречаю на разных Blackfin’ах. Но вообще да, с этим стоит посмотреть на Китай, у них сейчас разработка электроники идет вперед и нужны инженеры.

Да, стоит. IoT is on the way
Но будет ли разработка вестись у нас — большой вопрос

Если нравится, то стоит. Если не нравится, то наверно таки нет.

По поводу что читать, то гуглите embedded linux books и читайте. Книг не так чтоб и очень много, так что за пару месяцев осилите.

что читать, то гуглите embedded linux books
смотрю есть даже русскоязычный сайто-блог по этому делу — openembedded.ru , хотя инфы смотрю там кот наплакал (и старая к тому же), поэтому лучше сразу на инглише литературу искать)

Дык, так в Украине ничего из разработки не востребовано — 1С не считается, так как это больше в сторону тупого маразма. Тут нужно определиться — ты хочешь востребованности или заниматься любимым делом. Если востребованности — упорно учи джаву, php, swift, c# и 1C.

1) книги в топку. на стол кладем пару китов (диапазон стоимости на выбор $6-$300) на IMX6/TI Sitara/Boradcom PIx и тупо мантулим примеры, коих хоть попой кушай

2) А стоит ли жить ? Начни с этого, или поставь правильно ударение. Вопрос рассматривать нужно не «стОит ли ?» а «буду ли я ?». Сразу отпадает вопрос о вакансиях и начинается путь воли и намерения чего-то достичь

3) ну да, а в чем проблема ? I2S — стандартная шина почти для всех кодеков. пишем стандартными средствами ALSA, дальше или стримим или нарезаем кусками и обрабатываем.

Поздно, туда уже набежали любители технической игрушки.
Но сам Линукс по прежнему актуален.

Зараз один із трендів IoT, але там як низькорівневе ембедед програмування так може бути і доволі високий рівень абстракції, програмування на різних фреймворках. Тому якщо є бажання, то однозначно так.
З вимог, з якими стикався на подібні вакансії, це знання С++, на деякі критично саме С, розробка під лінукс і бажано знання електроніки хоча б на рівні законів Ома, якщо звісно вакансія не розробляти плати.

Подписаться на комментарии