@Yarosh841

Какой язык изучать для программирования микроконтроллеров?

Какой язык изучать для программирования микроконтроллеров, esp32 и arduino?
Насколько я понял они программируются на C , C++. Но есть возможность прошить контроллер, и тогда можно писать на micropyton или js.
Склоняюсь к python, но возможно это ошибочный выбор.
  • Вопрос задан
  • 847 просмотров
Пригласить эксперта
Ответы на вопрос 11
fox_12
@fox_12
Расставляю биты, управляю заряженными частицами
Если серьезно углубляться - то C/C++, Assembler
JS/Python в контексте разработки для микроконтроллеров - чисто поиграться...
Ответ написан
Комментировать
@pfg21
ex-турист
смотря что ты собираешься делать из микрокнтроллера и как с ним работать ??
из всех представленных С наиболее "низкий" язык, приближенный к железу и архитектуре, дающий больше доступа к аппартным возможностям и уловкам. но и более требовательный к мозгам погромиста.
потому большинство уходит на языки более высокой абстракции от железа.

если тебе хватит только на питон - пиши на питоне.
Ответ написан
Комментировать
aryeh
@aryeh
Молод (душой) и приятен в общении :-)
1. С - основной язык.
2. ASM - дополнительно, для небольших "вставок".

Всё остальное - баловство.
Ответ написан
@kalapanga
Вы забыли такую вещь, что при програмировании микроконтроллера у вас строго ограниченный набор ресурсов, определяемый моделью микроконтроллера. Если Вы делаете единичный проект для себя, то Вы можете позволить себе взять микроконтроллер в несколько раз дороже, но с большим объёмом памяти, и засунуть туда аж целый интерпретатор любимого питона. Но в массовом производстве это скорее всего будет непозволительной роскошью.

p.s. Все эти границы "дорого-дёшево", "много-мало" (ресурсов) весьма условны и постоянно меняются. Так же как для больших компов сейчас в массе мало кто заботится об "аппетитах" программ, возможно скоро так же будет и с микроконтроллерами.

p.p.s. Микроконтроллеров "ардуино" не существует. Это "платформа", которая может строиться на разных микроконтроллерах.
Ответ написан
Комментировать
@evgeniy_lm
arduino и js это странная комбинация, про micropyton я вообще молчу.
Платы Iskra по не понятным мне причинам программируются на js, но Iskra и arduino это очень разные девайсы, плюс лишняя трата и без того скудных ресурсов
Когда речь идет про написания "железных" программ то это Assembler, C, C++
Ответ написан
@redcircle
C
Ответ написан
Комментировать
nava2002
@nava2002
Инженер
С или С++ - золотой стнадарт.
Assembler - слишком трудный (это совсем уровень железа, на любителя ).
Python - слишком требователен к ресурсам нужны контроллеры с досточным размером памяти и хорошей тактовой частотой.
Ответ написан
@AlexSku
не буду отвечать из-за модератора
Визуальный язык XOD
Ответ написан
Комментировать
CityCat4
@CityCat4
//COPY01 EXEC PGM=IEBGENER
Как правило, С
Если совсем близко к железу или контроллеры совсем слабые - ассемблер. Там конечно и код пишется долго и отладка - #опа #опская, но можно творить какие-то магические вещи...
Ответ написан
Комментировать
softmart
@softmart
Разработчик
C++, популярный, есть ответы на все вопросы, более чем достаточно возможностей для решения любых задач. Просто С не дает никаких преимуществ перед C++, а возможности ограничивает. Никакого распухания кода C++ тоже не делает, наборот.

Посоветовал бы Rust, но только лет через 5, когда инструментарий и сообщество подтянется. Пока это маргинальное направление.

Всякие питоны с яваскриптами на МК - это маргинальное направление для разработчика под МК.
Они для школьников/обучения.
Ответ написан
@sled
новичку, да и любому другому, необходима информация и наработки/библиотеки, поэтому важно комьюнити. Если Вы все нашли для python, python не создает проблем/ограничений и Вас все устраивает, то - вперед.
Но самое большое комьюнити - С/С++, также обратите внимание на Mbed.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы