Банальная проблема незапуска AVR, решение которой глубоко под землей

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!

Представим: купили вы новый камень для своего проекта, а он - зараза - не шьется! Все собрано правильно, программатор правильный - всё равно ошибка. Знакомо? Мне да. Поэтому я решил написать про это статью.

Немного предыстории

Понадобилась мне значит Atmega32, купил, впаял, пытаюсь прошить - ошибка!

Ошибка avrdude
Ошибка avrdude

Лезем в гугл, где вам предложат:

  • Проверить соединение

  • Проверить пайку

  • Выкинуть микроконтроллер

Другая история - попалась мне Atmega328p, друг попросил накатить загрузчик. Ошибка такая же. Похоже на случай описанный ранее? На первый взгляд да. А вот когда начнем разбираться...

Прошиваем Atmega32

Я, как и многие другие, использую дешевой китайский программатор USBasp.

USBasp
USBasp

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

На программаторе мы видим 3 джампера: прошивка программатора - JP1, напряжение питания - JP2, и незапаяный джампер JP3 - прошивка на пониженной скорости.

Что такое "низкая скорость прошивки" и почему важна частота?

Пока перенесёмся из мира электроники, мир наш. Представим что на работе раз в час приходит начальник, чтобы проверить, как вы работаете. Время появления начальника вам известно, соответственно, вы начинаете работать и не получаете пинков от него. Но в один прекрасный момент, начальник начинает приходить раз в 45 минут, но вы этого не знаете. Так же и с МК, если он настроен на 16 MHz, но будет кварц на 8 MHz, чип не будет работать. Настройки частоты задаются фьюзами. За источник тактирования отвечают CKSEL. В зависимости от частоты, меняется скорость прошивки. Обычно на новых камнях стоят одни из этих источников тактирования:

  • External 16 MHz

  • External 8 MHz

  • Internal 8 MHz

  • Internal 1 MHz

  • Internal 128 KHz

Для работы с чипом имеющим частоту меньше 1 МГц, нужно снизить скорость прошивки. Это можно сделать перемычкой JP3 на программаторе, или в настройках используемой вами программы. После этого Atmega32 прошилась!

Прошиваем Atmega328p

В этом случае колдовать со скоростью прошивки не пришлось. Но пришлось поиграть с кварцами. Просто глядя на камень его настройки установить невозможно. А если МК не запускается, определить фьюзы даже с программатором это бесполезная затея. Не буду томить - в моем случае какой-то китаец настроил Atmega328p на External 8 MHz. Подключаем чип к программатору, жмем "Записать загрузчик" и...

Готово!
Готово!

Далее не забываем подкинуть кварц на выбранную вами частоту. В Arduino IDE частота меняется здесь (в большинстве кастомных ядер):

Выбранная частота 16MHz
Выбранная частота 16MHz

Если все равно не работает

Первый вариант: вы перебрали не все кварцы. По-хорошему, у вас должно быть достаточно разных кварцев - на 16, 8, 4 MHz. В последнее время появились микроконтроллеры с частотой 20 MHz, но их достаточно мало. Однако и такой вариант следует предусмотреть. Вот полный список частот Atmega32, на свой чип гуглите:

Все частоты AVR
Все частоты AVR

Второй вариант: вы выбрали не тот чип. Например, вот модификации atmega328:

Тот ли чип вы выбрали?
Тот ли чип вы выбрали?

Третий вариант: МК в мусорку. Попался с брачком, ну или сгорел.

Заключение

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

Источник: https://habr.com/ru/post/589397/


Интересные статьи

Интересные статьи

Технология поиска «VideoColor» заключается в том, что каждый кадр в видео рассматривается как отдельное изображение по которому может вестись поиск. Индексируемое, а затем и искомое изображение, дели...
Вы слышали о планах SpaceX отправить нас на Марс и построить долгосрочную базу. Изыскания человечества в межпланетном пространстве! Звучит фантастически, правда? Но с Мар...
У астрономов появился новый повод для беспокойства — планы NASA и Nokia развернуть 4G-связь на Луне. В середине октября агентство объявило, что в рамках лунной программы Nokia, партнер ...
Сегодня мы попробуем разобраться, почему Open Source приложениями никто не хочет пользоваться. Статья получилась довольно длинной, но не пугайтесь, будет интересно. Поехали! ...
Недавно мне пришло в голову совершенно новое решение Парадокса Ферми. Я не буду пересказывать то, что вы можете прочитать в Вики. Перейду к сути. Для решения проблемы нам понадобятся неск...