Читатели като вас помагат в подкрепа на MUO. Когато правите покупка чрез връзки на нашия сайт, ние може да спечелим комисионна за партньор. Прочетете още.

Инсталирането на буутлоудър е първата стъпка към вдъхването на живот на вашите Arduino проекти. Това е част от софтуера, който ви помага често да качвате скици на Arduino с лекота на дъската, без да е необходимо специално оборудване за програмиране.

Въпреки че това може да звучи като ракетна наука, всъщност е по-просто, отколкото си мислите - дори за начинаещи. Ще ви покажем как лесно да инсталирате (или преинсталирате) буутлоудър на вашата Arduino платка само с няколко прости стъпки.

Но първо, какво точно е буутлоудър на платката Arduino?

Какво е Bootloader?

Буутлоудърът на Arduino е малка програма, която се съхранява в енергонезависимата памет на платката, която се изпълнява всеки път, когато платката се включи, качи нов код или се нулира. Всеки път, когато програмата за зареждане се изпълнява, тя инициализира хардуера на платката и след това зарежда основната скица или програма, която се съхранява във флаш паметта на платката.

instagram viewer

Струва си да се отбележи, че всички платки Arduino се доставят с предварително инсталиран буутлоудър от техните производители. Понякога може да намерите платки с дефектни зареждащи устройства веднага след изваждането от кутията. Това обаче рядко се случва.

Защо да използвате Bootloader?

Има няколко ситуации, при които използването на Arduino буутлоудър може да бъде полезно. Например, ако сте начинаещ в платформата Arduino, използването на буутлоудър може да направи по-лесно и по-бързо качването на нови програми на вашата дъска. Това е така, защото не е необходимо да използвате външни устройства за програмиране, като програмист или USB към сериен конвертор, за да качите кода си.

Ако работите по проект, който изисква чести актуализации на кода, ще го намерите за много полезен. В този случай използването на буутлоудър може да ви спести време и усилия, тъй като можете просто да качите новия код на платката, без да се налага да използвате външни устройства за програмиране.

Освен това, ако работите върху a проект, който изисква Arduino да бъде в определено състояние, когато е включен, като например стартиране на определена програма, тогава използването на буутлоудър може да бъде полезно. Буутлоудърът ви позволява да зададете първоначалното състояние на платката, така че тя автоматично да стартира желаната програма, когато се включи.

И накрая, предоставя начин за възстановяване на Arduino, ако основната скица се повреди или по друг начин не успее да се стартира.

Защо моят буутлоудър липсва?

Може да има четири възможни причини, поради които вашата платка може да се нуждае от нов буутлоудър:

  1. Няма предварително инсталиран буутлоудър: Доста обичайно е да имате много самостоятелни проекти ATMEGA328P, при които запоявате чипа си върху печатна платка и се случва да изпържите чипа. Следователно е възможно да сте заменили платката с чип без предварително инсталиране на буутлоудъра.
  2. Сменен буутлоудър: Може да сте заменили своя буутлоудър с модифициран буутлоудър на трета страна, който може да е повреден.
  3. Повреден буутлоудър: Това е най-малко вероятният сценарий. В някои случаи обаче флаш паметта на Arduino може да се повреди.
  4. Разширена памет: Ако сте заменили (флашнали) целия буутлоудър с вашето приложение, за да се насладите на оставащите 2K програмна памет, вашият буутлоудър определено липсва.

Ето какво трябва да направите.

Инсталиране/преинсталиране на Arduino Bootloader

Микроконтролерите обикновено се програмират преди да бъдат запоени върху печатна платка. Това обикновено се прави с помощта на вътрешносистемно програмиране (ISP), като например серийно програмиране в верига (ICSP), което позволява на микроконтролера да бъде програмиран с помощта на външен програмист. Много производители на микроконтролери, като Atmel и Microchip, предоставят ISP хедър на своите платки за тази цел.

Използване на друга платка Arduino

За да флашнете буутлоудъра на микроконтролер ATmega328, трябва да използвате ICSP хедъра на платката, преди да можете да инсталирате буутлоудъра, като използвате другата платка като ISP програмист.

Стартирайте Arduino IDE, отидете до ArduinoISP както е показано по-долу, и качете примерния код на платката, която възнамерявате да използвате като програмист. (Следвайте видео урока за хардуерно свързване).

Кодът трябва да изглежда така, за да знаете, че сте на прав път.

От Инструменти раздел, отидете на Програмист след това щракнете върху Arduino като ISP както е показано по-долу.

И накрая, от Инструменти раздел отново, щракнете върху Записване на Bootloader както е показано.

След като процесът приключи, целевата платка вече е готова за програмиране.

Използване на специализиран програмист

Има много устройства за програмиране на AVR за този вид инсталация. Един добър вариант, който можете да опитате, е AVR Pocket Programmer (само за Windows), базиран на Dick Streefland USBtiny и Limor Fried’s USBtinyISP. Той предлага по-прост начин за програмиране на AVR микроконтролери, като тези, които се намират на платките Arduino. Освен факта, че се захранва от USB връзка, това е най-добрият вариант, защото е така съвместим с различни езици за програмиране и софтуер, което го прави универсален инструмент за всеки Потребител на Arduino.

Можете също да опитате други опции като официалния програматор Atmel-ICE за микроконтролери ARM - особено ако не сте на Windows.

Свържете платката Arduino към програмиста и флашнете буутлоудъра. Вижте този видео урок по-долу.

Процесът трябва да е прост и да не отнема повече от 20 секунди.

Забележка: Целевата платка трябва да бъде включена правилно, преди да опитате този метод. В противен случай няма да можете да флашнете .шестнадесетичен файл към вашата цел.

За опитни потребители има по-сложен начин за инсталиране на буутлоудъра чрез командния ред. Не е необходимо да стигате до този етап, но ви дава силата да модифицирате или прекомпилирате кода, за да получите по-персонализирано изживяване.

Първата стъпка в процеса е да конфигурирате битовете на предпазителя, които са част от AVR чипа, и да контролирате настройките, като например използването на външен кристал. Използвайте следната команда, за да настроите битовете на предпазителя:

avrdude 19200 -° Сusbtiny-стрm328p-v-Uизпускам:w:0x05-Uhfuse:w:0xD6-Ulfuse:w:0xFF

След като битовете на предпазителя са конфигурирани, следващата стъпка е да прехвърлите компилиран .hex файл към целевата платка и да зададете заключващите битове. Това ще ви позволи да стартирате програмата на дъската. Уверете се, че сте в същата директория като optiboot_atmega328.hex файл, преди да въведете тази команда:

avrdude 19200 -° Сusbtiny-стрm328p-v-Uсветкавица:w:hexfilename.hex-Uключалка:w:0x0F

Забележка: Тези команди са за Arduino Uno. Ще трябва да преработите битовете на предпазителя за вашата платка, намиращи се в board.txt файл и настройте Параметри на номер на част на AVRDUDE както и за да работят.

Какво ще правите с Arduino след това?

Буутлоудърът на Arduino е това, което го прави толкова лесен за програмиране, дори и за начинаещи. Сега се надяваме, че можете да качите свои собствени персонализирани скици в Arduino и да възстановите буутлоудъра за бъдещи Arduino DIY проекти.