Можно ли написать c-код в arduino ide?

Итак, я знаю, что родной язык arduino написан на c / c ++, но означает ли это, что я могу писать чистый код на c в arduino ide или что я должен использовать указанный arduino язык? Я новичок в этом и очень смущен, пожалуйста, потерпите меня здесь: ’)

, 👍2

Обсуждение

Специфичного для Arduino языка не существует. Это просто C ++. Arduino просто предоставляет вам фреймворк внутри C ++ для работы, например, предопределенную структуру программы (цикл и функция настройки), а также полезные функции и библиотеки. Но, конечно, вы можете использовать C-код для Arduino - вплоть до того момента, когда два языка расходятся друг с другом. Нелегко определить точную границу того, какие из новых функций C поддерживаются, хотя со всем старым кодом C у вас все должно быть хорошо. Помогает ли это? Если нет, не могли бы вы подробнее объяснить, что вас смущает?, @chrisl


1 ответ


2

Да, вы можете писать на чистом C. Некоторые части API Arduino core фактически определены на C, например, pinMode() и digitalWrite() (по крайней мере, в ядре AVR). Так что вы можете их использовать. Другие части, такие как Serial, являются Объекты C ++, и вы не сможете использовать их из обычного C.

Однако Arduino IDE будет настаивать на том, чтобы вы написали файл с расширением .ino, чтобы он был скомпилирован как предварительно обработанный C ++. Однако вам не нужно ничего помещать в этот файл. Если вы хотите написать всю свою программу на чистом C, вы можете создать пустой файл .ino, а в той же папке - файл .c со всей вашей программой. В этом файле вы можете определить свой собственный main(). Однако, если вы хотите использовать Arduino core API , вам следует вместо этого определить setup() и loop()и полагаться на предоставляемую ядром main().

,