Працюємо з 09:00 до 19:00 Пн-Пт
Київ біля ТЦ Квадрат бул.Перова

На цей раз ми поговоримо про те, як програмувати Arduino, не звичайним способом, не через звичне USB-підключення, а через пряму прошивку процесора.

Вам можливо не доведеться вдаватися до цього постійно, але ми все ж поговоримо про це тому, що коли-небуть ви все ж захочете встановити загрузчик,  замінити, оновити його, та вам буде корисно дізнатись яким чином це робиться.

Це не звичне прикладне програмування, яким ми зазвичай займаємося. Завантажувачем називається заводська прошивка мікроконтролера. Та завантажувач це всього навсього загальне найменування програмного забезпечення. Та він відноситься не тільки до Arduino, а й до любих видів інтегрованих систем.

Мікроконтролер зазвичай містить в собі код загрузчика, записаний в флеш-пам'яті. Він дозволяє записувати програму користувача в флеш та EEPROM-пам'ять. Саме тому у вас є можливість завантажувати скетчі. Ви завантажуєте свій код, який повинний зкопіюватись або запрограмуватись у флеш-пам'ять або в постійну пам'ять EEPROM, але зазвичай в flash, та далі повинно початись виконання програми всередині atmega 328, який і призначений для цього. Він спілкується і з USB-інтерфейсом та виконує свою задачу. Ось це і є основна робота загрузчика.

У загрузчика есть и ряд других функций, но это его основная задача, позволять флеш-памяти быть перезаписываемой, а так же постоянной памяти EEPROM. Так же он заботится такими задачами как перезагрузка и другими, но это его основная задача.

Загрузчик управляет USB-коммуникацией, и позволяет программировать. Загрузчик конечно не может перепрограммировать себя. Поэтому, если вам нужно обновить загрузчик, вы не можете просить загрузчик перепрограммировать себя. И поэтому, если вы хотите обновить загрузчик вы не можете сделать это через обычный USB-интерфейс используя загрузчик. Вместо этого вам потребуется использовать другой интерфейс.

Для этой цели используют интерфейс , который называется ICSP. Это интерфейс к плате, к специальным контактам на плате, через которые можно заливать загрузчик. Теперь вы можете запрограммировать что-угодно, но это всего лиш такой себе более прямой маршрут. Маршрут в обход USB. Для программирования микроконтроллеров на плате и единственный случай, когда вам возможно понадобится прибегнуть к интерфейсу ICSP, если вы захотите обновить свой загрузчик. Потому-что иначе если вы захотите обновить код аутентификации, вы будете использовать обычный маршрут USB, а ICSP порты разработаны для того, что-бы вы могли напрямую обновить загрузчик, а так же прошивку.

По существу прошивка производится напрямую. Поэтому если вы взглянете на плату, то увидите два ICSP-порта потому, как там два процессора.


Там стоит ATmega328 тот, который главный. А так же там стоит ATmega16U2, который используется для USB-коммуникаций. И в него тоже загружена прошивка.  У него есть выполняемая программа. И, если вы хотите запрограммировать один из них, вам нужно использовать их ICSP-порты, а значит их собственные ICSP-контакты.

Вот вы видете на картинке одну группу ICSP-контактов справа ATmega16U2. И другую группу ICSP-контактов микроконтроллера ATmega328. И что вам прийдется сделать, если вы захотите перепрограммировать эти контроллеры, так это использовать специальный программатор, который вам прийдется купить отдельно.

И вы подключите его к этим контактам. И тогда вы сможете использовать его, и различные программные приложения, для программирования прошивки на обоих чипах.

В общем эти контакты доступны вам для использования. Они вам могут понадобиться только для перезаписи загрузчика, и на этих уроках мы таким заниматься не будем. Если вам удастся обновить загрузчик, то вам уже эти занятия ни к чему. Если вы способны перезалить новый загрузчик, тогда вам эти уроки уже не понадобятся - вы уже не новичок. И вам уже нужно развиваться дальше. Но если нет, тогда эти уроки для вас. И вообще перезаливкой прошивки лучше не увлекаться, просто в будущем можно заливать обновления прошивки.


Автор професор Ian Harris з Каліфорнійського університету

Переклад Гресько Євген

<< Проекти << Усі товари >> Статті, уроки >>

Написати відгук

Примітка: HTML размітка не підтримується! Використовуйте звичайтий текст.
    Погано           Добре
Клапан электромагнитный 24 В 100 мА

Клапан электромагнитный 24 В 100 мА

Электромагнітний клапан нормально закритийЗовнішній діаметр короткої трубки 6 ммЗовнішній діаметр бо..

126.14грн.

Ультразвуковий датчик відстані HC-SR04

Ультразвуковий датчик відстані HC-SR04

Напруга живлення 5 ВРобочий кут відбитої хвилі не більше 15 градусівДіапазон вимірюваних відстаней 2..

38.42грн.

Розумний дім 1. Постановка задачі.

Розумний дім 1. Постановка задачі.

Розумний дім 1. Постановка задачі. Кожна людина уявляє собі свій розумний дім у відповідності зі св..

Універсальна монтажна плата на 400 отворів

Універсальна монтажна плата на 400 отворів

Макетна плата на 400 отворів для макетування любительських схемотехнічних проектів. Містить 4 лінії ..

45.46грн.

Набір діодів 100 шт.

Набір діодів 100 шт.

В наборі 8 типів діодів різної кількості. В сумі 100 штук.В набір входять наступні типи діодів 1N414..

83.66грн.