На каком языке пишут код для ардуино?

Решил узнать на чём пишется код для ардуино, гугл говорит что на С\С++. Но я не пойму, на котором из них? Или может быть на обоих?


Ответы (3 шт):

Автор решения: Эникейщик

В Arduino IDE можно писать на любом из них.

Теоретически можно писать вообще на любом компилируемом языке, был бы компилятор под платформу.

→ Ссылка
Автор решения: Alexey Leshchenko

Вот тут обсуждают, как разговаривать с Ардуино из питона: https://realpython.com/arduino-python/

Вкратце, вместо обычной загрузки кода на плату предлагается, чтобы на компе крутился код на питоне, который будет разговаривать с Ардуино, забирая оттуда сигналы и подавая команды при помощи скетча Firmata и модуляpyfirmata.

→ Ссылка
Автор решения: Croessmah

Ардуиновский "рантайм", если можно так выразиться, написан на урезанном C++. Собственно, я бы советовал писать скетчи на C++, а в случае необходимости "спускаться" до ассемблера. По-факту же, вы можете использовать практически любой язык. Например, есть возможность "зашить" в Arduino движок Espruino и писать на JavaScript. Если интересно как это сделать, то можете почитать статью Espruino: JavaScript в микроконтроллере. Но учтите, что использование интерпретируемых языков добавляет много накладных расходов, что не всегда приемлемо.

Спасибо @insolor за уточнение:

Espruino не заработает на Arduino, только на более мощных контроллерах - например на STM32 (упоминаемые по второй ссылке Espruino Board, Espruino Pico, Iskra JS реализованы на контроллерах семейства STM32), ESP8266, ESP32

→ Ссылка