Використовувати окремий чіп Arduino досить просто. Єдина складна річ, що стосується мікросхеми, яка використовується для офіційних плат - це те, що вони сплавлені для використання швидшого (і точнішого) зовнішнього осцилятора, встановленого на платі. Це застосовується навіть при придбанні сипучих чіпів, оскільки більшість перепродаються з наміром встановити на платі Arduino для заміни згорілого, за винятком, можливо, тих, що з Digikey.
Застереження: Ардуїно розроблений як дошка для складання прототипів, і деякі речі справляються краще, ніж це робиться в цьому завданні. Можливо, ви захочете залишити мікросхему на платі Arduino, поки не закінчите розробку та тестування схеми. Тільки тоді ви підключаєте його безпосередньо. Її можна використовувати на місці, якщо у вас є тактова схема, або ви можете змінити запобіжники (див. Пізніше) і перепрограмувати Arduino за допомогою адаптера провайдера і тактовою частотою 8 МГц (PlatformIO дозволяє це робити ( і дозволяє прямо імпорт ескізу Arduino) - перегляньте їхню сторінку документа на наявність плагіна Atmel AVR, але ви також можете знайти ряд посібників про те, як додати файл Arduino до бортового файлу, щоб сказати йому, щоб використовувати опцію 8 МГц для чистого чіпа)
Якщо ви виймете мікросхема для використання в іншому ланцюзі, йому або потрібна ціна годинникового ланцюга, або його плавкі запобіжники (я перейду до цього за хвилину). Програмувати також буде важко з кількох причин, тому вам захочеться придбати трохи досить дешеве обладнання:
Програмування окремої мікросхеми: процесор Arduino не призначений для розмови з комп'ютером. Вам потрібен посередник. У Uno це робиться за допомогою другого мікросхема Atmel, який має можливість USB, та завантажувача на головному мікросхемі. Це означає, що він використовує UART для завантаження програми, в той час як USB-чіп перетворює повідомлення ПК на сигнали UART. Оскільки завантажувач дещо болить, коли чіп самостійно (оскільки UART є вибагливим і встановленням він встановлює мікросхем для використання зовнішнього годинника в результаті), ви захочете придбати програміста ISP для Arduino (або дотримуйтесь ескізу Arduino-as-ISP та інструкцій, щоб зробити власні, для чого потрібен Arduino з чіпом, тому вам буде потрібно секунда, щоб запрограмуватися).
Вони можуть програмувати ATMega 328 безпосередньо через SPI, без завантажувача (в Інтернеті є багато інструкцій; наприклад, пошук "програма гола ATMega 328P з USBAsp"). Це значно полегшує зміну та налагодження програми поза вискакуванням мікросхеми та назад на оригінальну плату Arduino. Також вам потрібен такий, щоб змінити настройки годинника, якщо ви не хочете використовувати зовнішній кристал.
Якщо ви хочете налагодити чіп, корисно також придбати адаптер FTDI або інший перетворювач USB-UART. Зверніть увагу, що без схеми скидання частини плати (або знову ж таки, додавши власну), це все одно не дозволить вам запрограмувати ATMega навіть із завантажувачем. Для цього підключіть штифти заземлення, RX та TX до адаптера. Ви можете або не хочете підключати лінію VCC, але радимо цього не робити, якщо до мікросхеми підключено багато речей і / або він має власне джерело живлення. Зверніть увагу, що RX і TX потрібно міняти під час їх підключення; тобто RX до TX і TX до RX - ви хочете, щоб мікросхем RX (отримував) те, що адаптер TX (передає), і навпаки.
Тактову схему побудувати не важко, але для цього потрібно кілька компонентів, яких у вас може не бути. Отже, щоб змінити джерело годинника , перейдіть на сторінку http://www.engbedded.com/fusecalc/ і виберіть ATMega 328P. Значення за замовчуванням є хорошими, але ви, можливо, захочете ввімкнути режим EEPROM у режимі тривалого стирання та відключити годинник поділом на 8 або налаштувати параметри коричневого відключення. Не торкайтеся нічого іншого (відключення скидання або SPI або включення DebugWire призводить до "розваги", що вимагає виправлення програміста HV). Закінчивши, вставте команду, яку вона надає, до команди AVRDude. Вам потрібно буде змінити параметри -c (-p вже встановлено на ATMega 328P, але вийде з ладу для не-P 328s - не купуйте їх) і, можливо, додайте параметр -P (для порту). Не опустіть нижній регістр -u варіант, інакше він відмовиться оновлювати запобіжники.
avrdude -p m328p -v -c usbasp -B 100 -u [add extras here: (-P <PORT>) <fuse set command here>]
Зауважте, що якщо ви придбаєте USBASP (переконайтеся, що він має три набори перемичок!), Незважаючи на те, що вони є моїм улюбленим програмістом, вони можуть не мати оновленої мікропрограми, яка підтримує опцію -B (яка, можливо, вам знадобиться). Це означає, що вам потрібно приєднати його до Arduino через шестиконтактний порт програмування точно так само, як і для програмування завантажувача Arduino, але потім використовувати ескіз Arduino-as-ISP для програмування нового Прошивка програмісту (пошук "оновити прошивку usbasp через arduino-as-isp")! Для довідки, це зазвичай означає, що кабель відводиться від корпусу дошки, і вам, ймовірно, доведеться запрограмувати ескіз ранішепідключення кабелю. Також увімкніть перемикач програмування на USBASP (5V) та "самопрограмування". (див. https://forum.arduino.cc/index.php?topic=560719.0 про місце розташування перемикачів живлення та програми (JP2)).