Перейти к публикации
iT4iT.CLUB

Поиск по сайту

Результаты поиска по тегам 'optiboot'.

  • Поиск по тегам

    Введите теги через запятую.
  • Поиск по автору

Тип публикаций


Категории и разделы

  • Операционные системы
    • UNIX
    • Mac OS
    • Windows
  • Системы мониторинга
    • Zabbix
  • Сетевое оборудование
    • Cisco Systems
    • MikroTik
    • Ubiquiti Networks
  • Микроконтроллеры
    • Arduino

Блоги

Нет результатов для отображения.

Нет результатов для отображения.


Искать результаты в...

Искать результаты, содержащие...


Дата создания

  • Начать

    Конец


Последнее обновление

  • Начать

    Конец


Фильтр по количеству...

Зарегистрирован

  • Начать

    Конец


Группа


Найдено 1 результат

  1. Update 02.12.2015 Статья переработана и перепроверена Актуально для Optiboot 6.2 и Arduino IDE 1.6.6 или выше. Рано или поздно приходится столкнуться с необходимостью замены bootloader (загрузчика) микроконтроллера. В моём случае остро потребовался функционал загрузчика Optiboot, из-за реализованного в нем сторожевого таймера (watchdog). Плюс ко всему, он весит в четыре раза меньше стандартного и освобождает дополнительно 1.5kb памяти для скетча! Сразу хочу отметить, что Optiboot залит по умолчанию на Arduino UNO и Mega 2560. У меня в наличии имелись: Arduino Nano и Arduino Pro Mini на чипах ATmega328P-AU, и просто пачка "голых" ATmega328P-PU. Есть несколько простых способов перезаписать загрузчик которыми я воспользовался (это далеко не все возможные варианты). Использование программатора USBasp Как по мне, это самый простой способ не требующий никакой магии. Сам программатор можно приобрести у братьев Китайцев за $2. Он представляет из себя плату с ATmega8 или ATmega128, USB на входе и 10Pin ICSP интерфейс на выходе. От стандартного 6Pin интерфейса он отличается лишь тремя дополнительными пинами GND и одним не использующимся NC. Чтобы упростить себе жизнь, советую сразу брать переходник с USBasp 10pin to 6pin за $0.5 Выглядит это следующим образом Сама распиновка программатора и разъемов (позаимствована у братьев наших) Если на плате Arduino распаян 6pin разъем ICSP, то подключение до безобразия простое. Совмещаем одноименные контакты программатора с платой Arduino. Если готового разъема нет, то используем соответствующие ноги на плате Arduino или на самом микроконтроллере. Необходимые ноги: GND VCC MOSI MISO RST Распиновка некоторых плат Arduino и микроконтроллеров находится в соседней теме Пример подключения USBasp к Arduino Pro Mini и к ATmega328P-PU. В случае с последним, конденсаторы можно выкинуть из схемы. Теперь самое интересное Переходим на GitHub проекта Optiboot (ссылка имеется в начале поста) и скачиваем архив со всем необходимым. Переходим в каталог где хранятся созданные вами скетчи (в Windows это "\Мои документы\Arduino\") и создаем в нем ветку каталогов \hardware\optiboot\avr\ В скачанном архиве находим каталог optiboot и переносим все его содержимое в каталог созданный в предыдущем пункте. Среди всех перенесенных файлов находим boards.txt удаляем его. Он является устаревшим и более нас не интересует! Находим файл boards-1.6.txt и переименовываем в boards.txt, в итоге должно получится как на изображении ниже Перезапускаем срезу Arduino IDE Проверяем список плат во вкладке "Инструменты" и наслаждаемся результатом При хранении всех необходимых файлов вне среды разработки Arduino IDE последующее обновление самой среды не позволит Вам потерять настройки и файлы загрузчика Optiboot в отличие от прямого вмешательства в оригинальный boards.txt Ленивые могут забрать готовый архив со всеми изменениями и распаковать его содержимое в папку со скетчами. В данном случае все достаточно только перезапустить среду разработки. Сам архив прикреплен к посту. Выбираем программатор USBasp И жмем "Записать загрузчик". ВАЖНО: Если желаете залить скетч через USBasp, то необходимо нажимать "Записать\Вгрузить" при зажатой клавиши SHIFT. Только в этом случае будет выбран программатор для заливки, а соответствующая подсказка изменится за "Загрузить через программатор". В ходе данной операции могут сыпаться ошибки указывающие на проблемы с USBasp. Попросту игнорируем их! Использование Arduino в качестве программатора Нам понадобится вторая плата Arduino. Прошиваем её скетчем ArduinoISP, идущим по умолчанию со средой разработки. После этого Arduino становится полноценным программатором. // pin name: not-mega: mega(1280 and 2560) // slave reset: 10: 53 // MOSI: 11: 51 // MISO: 12: 50 // SCK: 13: 52 В скетче имеется подсказка с способом подключения. Изменяем в Arduino IDE программатор на Arduino as ISP, выбираем необходимую плату, к которой подключен наш вновь испеченный программатор и "прожигаем" загрузчик. Если необходимо записать какой либо скетч, то делаем это также при зажатой клавиши SHIFT (как и в первом варианте). PS: По умолчанию в среде разработки имеются файлы загрузчика optiboot и скачивать ничего не нужно. Достаточно выбрать плату Arduino UNO и перезаписать загрузчик. Но в этом случае Ваше детище станет определяться именно как UNO, даже если на самом деле это NANO, Pro Mini или еще что-то. hardware.zip
×
×
  • Создать...