Попередження, дається тривале пояснення. Я хотів би вияснити деякі помилки, які, на мою думку, у вас є.
Ардуїно - це справді дві речі.
- Колекція бібліотек C / C ++, складена з avr-gcc та
- Невелика програма прошивки завантажувача, яка раніше була запрограмована на мікросхемі з заводу.
Так, Arduino IDE в основному обгортає avr-gcc - компілятор AVR C. Ваші проекти, або "ескізи", містять згадані бібліотеки Arduino і складаються з avr-gcc. Однак, нічого з цього не має нічого спільного з тим, як щось записується на дошці. Розгортання цих ескізів трохи відрізняється від звичайних.
Ідентифікатор Arduino IDE спілкується з вашим Arduino через мікросхему usb-to-serial на платі, і він ініціалізує режим програмування, який завантажувач розуміє, і відправляє вашу нову програму на чіп, де завантажувач розмістить її в якомусь відомому місці, а потім запустить її . Немає «avr-бібліотеки, яка б фактично написала» - це лише Arduino IDE, який відкриває послідовний порт і спілкується з завантажувачем - ось так ваші повідомлення про налагодження також надрукуються в IDE під час виконання.
Будь-яка альтернативна IDE повинна мати можливість виконувати цю саму послідовну комунікацію з завантажувачем. Arduino простий через всі бібліотеки, які вони вже надають вам, і запускати програму IDE одним дотиком. Я, чесно кажучи, не думаю, що це стає простішим чи зручнішим для користувачів. Вони абстрагували всі деталі мікроконтролера AVR та процесу побудови / розгортання.
Альтернативою може бути щось на кшталт avr-studio (який також використовує avr-gcc для свого компілятора) та програміст ICSP (що є додатковим обладнанням, яке вам доведеться придбати). Вам не надається багато іншого, ніж деякі файли заголовків визначення регістру та деякі корисні макроси. Ви також не забезпечені завантажувачем на вашому мікросхемі AVR, це лише порожній аркуш. Все, що ви хочете зробити з мікроконтролером, вам доведеться поглибитись і дізнатися про його апаратну периферію та регістри та перемістити байти навколо C. Хочете надрукувати повідомлення про налагодження назад на ПК? Спочатку напишіть процедуру UART для print () та відкрийте на комп'ютері термінал.
На крок нижче від цього ви пишете код у текстовому редакторі та викликаєте avr-gcc та avr-dude (інструмент командного рядка програмування) з Makefile чи командного рядка.
На крок нижче від цього і ви пишете збірку в текстовому редакторі і викликаєте avr-асемблер і avr-dude.
Я не впевнений, куди йти з цим, я просто думаю, що існуючі IDE та Arduino абсолютно геніальні та ідеальні для початківців - їх претензія на славу - це зручність користувачів. Можливо, не відповідь, яку ви шукаєте, вивчіть робочий процес і зробіть з ним щось круте.