Надо ли использовать C или C++ для реализации чистого кода Arduino?

У меня есть плата arduino (микроконтроллер SAMD21), которая поддерживает программирование Arduino или CircuitPython. Я бы хотел программировать на чистом C/C++ вместо Arduino, что, по-видимому, возможно без особых проблем. Но я не уверен, использовать ли C или C++. Я думал, что Arduino основан на C++, но я пошел посмотреть некоторые файлы библиотеки, и они были написаны на C. Поскольку я почти уверен, что они не взаимозаменяемы, может ли кто-нибудь помочь мне узнать, какой язык я должен использовать для программирования своей платы?

, 👍1

Обсуждение

В том, в каком вам будет удобнее всего. C является подмножеством C++ (или наоборот - C++ является надмножеством C)., @Majenko

Вы можете эффективно использовать c или c++ в Arduino. Есть несколько предостережений, о которых следует знать, но они оба работают. Вы даже можете встроить сборку, если хотите., @dandavis


1 ответ


3

Я думал, что Arduino основан на C++

Не существует языка "Arduino" - среда разработки Arduino использует компилятор GNU C++, поэтому "его язык" - это язык, поддерживаемый компилятором. В основном это C++ с небольшой предварительной обработкой кода, чтобы помочь учащимся преодолеть некоторые места, в которые они могут легко попасть (например, добавление операторов #include, когда он считает, что они вам нужны).

Вот ответ, который я написал на аналогичный вопрос несколько лет назад. Я думаю, что это имеет отношение к вашему вопросу.

,