Параметри програмування, крім C ++


14

Чи можу я програмувати Arduino за допомогою будь-якої мови програмування, крім C ++? Якщо так, то які мови програмування? Яке програмне забезпечення мені знадобиться для компіляції та завантаження коду на Arduino?



На жаль, це ефективний дублікат запитання, яке не стосується Arduino.SE: дивіться тут, я думаю, що питання, яке я пов’язав, слід перемістити сюди після закінчення бета-версії, але не тільки поки.
apnorton

@anorton Це питання задає питання про альтернативні ІДЕ. Це питання не є дублюючим, оскільки воно говорить про альтернативні мови програмування.
tstew

@ user2202326 Вибачте ... Я, здається, згадував більше людей, які відповідали іншими мовами, ніж IDE в цій темі, але, мабуть, я помилявся. Продовжуй.
apnorton

Ви можете заглянути в Netduino, якщо ви знайомі з C # (Visual Studio - це шлях, але є інші способи складання C # коду). Я не знаю, яка у вас плата, і чи сумісна вона. netduino.com
Jason Down

Відповіді:


5

Деякі загальновідомі:

Теоретично ви повинні мати можливість розширити avr-gcc для підтримки інших мов, хоча це не є малим завданням. Я хотів би також застереження , що підтримка інших мов , ніж C , як правило , поставляється з деякими досить вагомі обмеження на компоненти мови - наприклад, навіть з C ++ це НЕ рекомендується , щоб бути інстанцірованія нові об'єкти , як mallocі freeдуже дорогі і в просторі пам'яті і циклів.

Крім використання Google, застосовуються наступні посилання. Натисніть тут.


8

Теоретично, будь-який компілятор, який виводить збірку AVR, може бути використаний (обмеження по модулю щодо розміру коду, використання оперативної пам’яті тощо).

Програми AVR існують як для LLVM, так і для GCC - тому теоретично з певними зусиллями більшість мов, які підтримуються LLVM та GCC передніми кінцями, можна було б скласти до AVR. Великим питанням буде підтримка бібліотеки тощо.

Не менш, ось пара дивних варіантів духу питання, а не його лист [1].

О, і ви могли б написати сирий АВР-збірку !

[1] - Я цього не намагався!


2

Також є деякі люди, які працюють на Javascript node.js системах. Один, який уже є загальнодоступним, - Espruino, а інший - Tessel, який запускається навесні 2014 року.


1

Оскільки avr-g ++ повинен підтримувати всі стандартні C / C ++ конструкції, можна кодувати вбудовану збірку. Більше інформації про це на форумі arduino.cc


Вбудована збірка не є частиною стандартів C / C ++, але gcc та компілятор microsoft c підтримують її, хоча і несумісно.
tbodt

true, і так роблять avr_gcc.
Faux_Clef

Нічого не перемагає написання виконуваного коду в шістнадцятковій формі.
Faux_Clef

1

Я здивований, що ніхто не згадував Асамблею AVR !

Збірка не часто вважається найцікавішим або навіть простим методом програмування, але, тим не менш, на всі 100% ардуїно ардуїно це можливо на 100%. Плати SAM, швидше за все, не працюватимуть з таким ароматом, але все ж можливо використовувати збірку у своєму програмуванні.

Всі дошки Arduino (на стадії публікації) підтримують програмування монтажу за допомогою Atmel Studio , SDK створений для фішок Atmel.

Збірка підтримується всіма пристроями Atmel і не потребує завантажувача для роботи, тому всі програми притаманні в режимі реального часу.


2
Зауважте, що збірка також підтримується ланцюжком інструментів gcc, який входить до встановлення Arduino IDE.
Едгар Бонет

@EdgarBonet Правильно, саме тому __asm__("Assembly code here")працює над тим, щоб додати лінійну збірку до будь-якого ескізу. Однак для більшості програм це погана ідея, оскільки складно досягти незалежності платформи за допомогою цього методу.
тускіоми
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.