Bootloader AVR от chip45.

Бутлодер - это система команд, располагающаяся в загрузочной области (будьте внимательны, размер  задается при прошивке), предназначенный для записи кода проекта в память программа посредством системы ввода/вывода контроллера ( как правило, через UART). По сути бутлодер ловит байты и кладет их во флеш, то есть позволяет обойтись без внешнего программатора.  Несмотря на уйму доступных бутлодеров, мне до некоторых пор не удавалось найти надежный, особенно для сетевой работы по RS-485. Написание качественного бутлодера - задача только кажущаяся простой. Здесь обязательно встают вопросы надежности, так как при старте контроллера счетчик команд меняется хаотически и выполняет произвольные действия, если он попадает на участок, где происходит запись данных во флеш память,  то прошивке уже после первого такого случая настает конец.

Из всех опробованных мною бутлодеров (около 5 штук) с уверенностью могу сказать, что бутлодер от Chip45 наиболее надежен. Но он имеет закрытый исходный код, правда производитель постарался и в данной статье будут выложены бутлодеры почти для всех моделей AVR Mega.

Итак, на данный момент поддерживаются:

ATmega8, ATmega88, ATmega88P, ATmega8515, ATmega8535,ATmega16, ATmega162, ATmega164P, ATmega168, ATmega168P,ATmega32, ATmega324P, ATmega325, ATmega3250,ATmega328P, ATmega3290P,ATmega64, ATmega640, ATmega645, ATmega644, ATmega644PATmega128, ATmega1280, ATmega1281, ATmega1284PATmega2560, ATmega2561AT90CAN32, AT90CAN64, AT90CAN128ATxmega64a1, ATxmega128A1

Данный бутлодер до сих пор работает на одной из плат, хотя претерпел уже несколько десятков включений и выключений. В каком-то смысле он даже лучше Arduino бутлодера, так как Arduino вполне может покончить с собой после нескольких десятков включений.

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

GUI выглядит так:

Для прошивки платы подключите контроллер к COM порту (можно через переходник). Выберите ваш hex файл. Чтобы увидеть зеленый индикатор Ststus, включите и выключите плату. Затем в течении 1-2 секунд  нажмите Connect to Bootloader.  Затем нажмите Program Flash.

О программировании через RS-485 не буду делать догадки, так как сам не пробовал .

Скачать

Bootloaders for Mega

Документация для GUI

Chip45 GUI part1

Chip45GUIpart2

Leave a Reply

You must be logged in to post a comment.