Оглавление:

Программатор AVR с высоким напряжением: 17 шагов
Программатор AVR с высоким напряжением: 17 шагов

Видео: Программатор AVR с высоким напряжением: 17 шагов

Видео: Программатор AVR с высоким напряжением: 17 шагов
Видео: AVR 17# Аналого-цифровой преобразователь. 2024, Ноябрь
Anonim
Программатор AVR с высоким напряжением
Программатор AVR с высоким напряжением
Программатор AVR с высоким напряжением
Программатор AVR с высоким напряжением

Это моя первая инструкция. Плата, которую я разработал, представляет собой программатор AVR. Плата сочетает в себе функции 4 отдельных прототипов плат, которые я построил за последние несколько лет:

- Программатор высокого напряжения AVR, в основном используемый на устройствах ATtiny для установки предохранителей, когда линия сброса используется для ввода / вывода.

- Arduino как ISP, 5V и 3v3 (считается двумя функциями)

- Программатор NOR Flash EEPROM (быстрое копирование с SD-карты на NOR Flash)

На плате используются обычные стабилизаторы напряжения AMS1117 LDO для получения 5 В и 3 В 3. Для функции высокого напряжения требуется 12 В. Для этого я использовал повышающий DC-DC преобразователь MT3608. Микроконтроллер работает на частоте 16 МГц, 5 В. Сдвиг уровня для всего, что требует 3 на 3, осуществляется с помощью LVC125A. LVC125A - это то, что вы найдете во многих модулях SD-карт. Это микроконтроллер ATmega328pb. ATMega328pb почти такой же, как и более распространенный ATMega328p, за исключением того, что у него есть еще 4 контакта ввода-вывода в корпусе того же размера.

Это плата версии 1.5. Новые функции в этой последней версии: - последовательный интерфейс USB. - сбрасываемые предохранители. - Светодиодные индикаторы функций под кнопками выбора функций. - полевой МОП-транзистор для полного отключения питания от DC-DC 12V, когда он не используется.

Плата имеет возможность добавления последовательного EEPROM AT24Cxxx I2C и 5-контактного разъема I2C JST-XH-05 (GND / 5V / SCL / SDA / INT1) для подключения устройств I2C.

Одним из наиболее сложных аспектов этого проекта было то, как загрузить все функции / скетчи на доску. Самым простым способом было бы просто загрузить скетч всякий раз, когда мне нужно было изменить функции. Другой способ - объединить все наброски. Я отказался от обоих методов. Метод объединения затруднил бы интеграцию любых изменений, внесенных в исходные исходные эскизы. Метод комбинирования также имеет проблему, заключающуюся в том, что количество доступной SRAM было недостаточным без переписывания и копания в используемых библиотеках и эскизах, что снова является проблемой обслуживания.

Метод, который я выбрал, заключался в написании приложения под названием AVRMultiSketch, которое работает с Arduino IDE для загрузки эскизов во флеш-память, сдвигая их ячейки памяти. Исходники эскиза никоим образом не изменяются. Они бегают по доске, как будто это единственный набросок. Как это работает, подробно описано в файле readme на GitHub с открытым исходным кодом для AVRMultiSketch. См. Https://github.com/JonMackey/AVRMultiSketch для получения более подробной информации. Этот репозиторий также содержит наброски, которые я использовал / написал / модифицировал, которые можно использовать индивидуально.

Для переключения между эскизами на плате есть четыре кнопки: «Сброс» и кнопки с метками 0, 1, 2. При включении или сбросе, если вы ничего не делаете, запускается последняя выбранная функция. Если вы удерживаете одну из пронумерованных кнопок, вы выбираете эскиз / функцию. Эскиз становится выбранным эскизом. Белые светодиоды под каждой функциональной кнопкой светятся, чтобы отразить текущий выбор.

В настоящее время на доске размещено только 3 эскиза, но может быть размещено еще несколько. В этом случае, если принять только 3 бита / нумерованные кнопки, он может разместить до 7, удерживая более одной кнопки.

Схема прилагается к следующему шагу

Минимальный поддерживающий кронштейн доступен на thingiverse. См.

Плата для версии 1.5 размещена на PCBWay. См.

Свяжитесь со мной, если вам нужна собранная и протестированная плата.

Шаг 1: Инструкции по сборке платы

Инструкция по сборке платы
Инструкция по сборке платы

Инструкции по сборке платы (или почти любой небольшой платы) приведены ниже.

Если вы уже знаете, как собрать плату SMD, перейдите к шагу 13.

Шаг 2: Соберите детали

Собирать детали
Собирать детали
Собирать детали
Собирать детали

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

Затем я заполняю бумагу этими частями. По краю я добавляю другие, легко узнаваемые части.

(Обратите внимание, что я использую этот же лист бумаги для других досок, которые разработал, поэтому только в некоторых местах на фотографии есть части рядом с этикетками или на них)

Шаг 3: Установите плату

Установить доску
Установить доску
Установить доску
Установить доску

Используя небольшой кусок дерева в качестве монтажного блока, я вклиниваю печатную плату между двумя кусками прототипной платы. Платы-прототипы крепятся к монтажному блоку с помощью двойной липкой ленты (без ленты на самой печатной плате). Мне нравится использовать дерево для монтажного блока, потому что оно естественно непроводящее / антистатическое. Также его легко перемещать по мере необходимости при размещении деталей.

Шаг 4: нанесите паяльную пасту

Нанесите паяльную пасту
Нанесите паяльную пасту
Нанесите паяльную пасту
Нанесите паяльную пасту

Нанесите паяльную пасту на контактные площадки SMD, оставив открытые контактные площадки со сквозными отверстиями. Как правша, я обычно работаю сверху слева направо вниз, чтобы свести к минимуму вероятность размазывания паяльной пасты, которую я уже нанес. Если вы все же размазываете пасту, используйте безворсовые салфетки, например, для снятия макияжа. Избегайте использования салфеток / салфеток. Контроль количества пасты, наносимой на каждую подушечку, - это то, что вы получите путем проб и ошибок. Вам просто нужно нанести крошечный мазок на каждую подушечку. Размер мазка зависит от размера и формы подушечки (примерно 50-80% покрытия). Если сомневаетесь, используйте меньше. Для контактов, которые расположены близко друг к другу, например, для пакета LVC125A TSSOP, о котором я упоминал ранее, вы наносите очень тонкую полоску на все контактные площадки, а не пытаетесь нанести отдельный мазок на каждую из этих очень узких контактных площадок. Когда припой расплавляется, паяльная маска заставляет припой перемещаться к контактной площадке, подобно тому, как вода не прилипает к масляной поверхности. Припой будет рассыпаться или перемещаться в область с оголенной контактной площадкой.

Я использую паяльную пасту с низкой температурой плавления (точка плавления 137C). На второй фотографии изображена плата версии 1.3 и тип паяльной пасты, которую я использую.

Шаг 5: Поместите детали SMD

Поместите детали SMD
Поместите детали SMD

Поместите детали SMD. Я делаю это сверху слева направо вниз, хотя особой разницы это не имеет, за исключением того, что вы с меньшей вероятностью пропустите деталь. Детали устанавливаются с помощью пинцета для электроники. Я предпочитаю пинцет с загнутым концом. Поднимите деталь, при необходимости поверните монтажный блок, затем установите деталь. Слегка постучите по каждой части, чтобы убедиться, что она плотно прилегает к доске. При размещении детали я использую две руки, чтобы помочь в точном размещении. Устанавливая квадратный микроконтроллер, поднимайте его по диагонали с противоположных углов.

Осмотрите плату, чтобы убедиться, что поляризованные конденсаторы находятся в правильном положении, а все микросхемы ориентированы правильно.

Шаг 6: время для термофена

Время для термофена
Время для термофена

Я использую низкотемпературную паяльную пасту. Для моей модели пистолета температура установлена на 275 ° C, воздушный поток установлен на 7. Держите пистолет перпендикулярно доске на высоте около 4 см над доской. Припой вокруг первых частей требует времени, чтобы начать плавиться. Не поддавайтесь соблазну ускорить процесс, поднося пистолет к доске. Обычно это приводит к срыву деталей. Как только припой расплавится, переходите к следующему перекрывающемуся участку платы. Работайте по всей доске.

Я использую термофен YAOGONG 858D SMD. (На Amazon менее 40 долларов.) В комплект входят 3 насадки. Я использую самую большую насадку (8 мм). Эта модель / стиль производится или продается несколькими поставщиками. Я видел рейтинги повсюду. Этот пистолет работал у меня безупречно.

Шаг 7: подкрепите, если необходимо

Подкрепите, если необходимо
Подкрепите, если необходимо
Подкрепите, если необходимо
Подкрепите, если необходимо

Если на плате есть разъем для карты SD для поверхностного монтажа или аудиоразъем и т. Д., Нанесите дополнительный припой на контактные площадки, используемые для крепления корпуса к плате. Я обнаружил, что сама по себе паяльная паста, как правило, недостаточно сильна, чтобы надежно закрепить эти детали.

Шаг 8: Очистка / удаление флюса SMD

Очистка / удаление SMD Flux
Очистка / удаление SMD Flux
Очистка / удаление SMD Flux
Очистка / удаление SMD Flux

Паяльная паста, которую я использую, рекламируется как «неочищенная». Вам действительно нужно очистить плату, она выглядит намного лучше, и она удалит все мелкие капли припоя на плате. Используя латексные, нитриловые или резиновые перчатки в хорошо вентилируемом помещении, налейте небольшое количество Flux Remover в небольшую керамическую посуду или посуду из нержавеющей стали. Закройте бутылку для удаления флюса. Используя жесткую щетку, нанесите щетку на средство для удаления флюса и потрите участок доски. Повторяйте, пока полностью не протерете поверхность доски. Для этого я использую щетку для чистки пистолета. Щетинки жестче, чем у большинства зубных щеток.

Шаг 9: Поместите и припаяйте все детали отверстия желоба

Поместите и припаяйте все детали отверстия желоба
Поместите и припаяйте все детали отверстия желоба
Поместите и припаяйте все детали отверстия желоба
Поместите и припаяйте все детали отверстия желоба

После того, как средство для удаления флюса испарится с платы, поместите и припаяйте все части сквозных отверстий, от самого короткого к самому высокому, по одной.

Шаг 10: Штифты для прорезания сквозных отверстий заподлицо

Штифты для сквозных отверстий заподлицо
Штифты для сквозных отверстий заподлицо

Используя плоскогубцы, обрежьте штифты со сквозными отверстиями на нижней стороне доски. Это облегчит удаление остатков флюса.

Шаг 11: разогрейте штифты через отверстия после обрезки

Разогрейте штифты через отверстия после обрезки
Разогрейте штифты через отверстия после обрезки

Для красивого внешнего вида повторно нагрейте припой на штырях со сквозным отверстием после обрезки. Это удалит следы среза, оставленные резаком заподлицо.

Шаг 12: Удалите флюс для сквозных отверстий

Удалите флюс для сквозных отверстий
Удалите флюс для сквозных отверстий

Используя тот же метод очистки, что и раньше, очистите заднюю часть доски.

Шаг 13: Подайте питание на плату

Подайте питание на доску
Подайте питание на доску

Подайте питание на плату (от 6 до 12 В). Если ничего не горит, измерьте 5V, 3v3 и 12V. 5V и 3v3 можно измерить на большом выступе на двух микросхемах регулятора. 12 В можно измерить от R3, конца резистора, ближайшего к плате слева внизу (разъем питания находится вверху слева).

Шаг 14: загрузите загрузчик

Загрузите загрузчик
Загрузите загрузчик

В меню «Инструменты IDE Arduino» выберите «Плата» и другие параметры для целевого микроконтроллера.

На моих платах почти всегда есть разъем ICSP. Если у вас нет Arduino в качестве ISP или какого-либо другого программиста ICSP, вы можете построить его на макете с целью загрузки загрузчика на плату программатора. Выберите Arduino как ISP в пункте меню программиста, затем выберите записать загрузчик. Помимо загрузки загрузчика, это еще и правильно установит предохранители. На фото доска слева - мишень. Плата справа - это интернет-провайдер.

Шаг 15: загрузите мульти-эскиз

Загрузите мульти-эскиз
Загрузите мульти-эскиз
Загрузите мульти-эскиз
Загрузите мульти-эскиз
Загрузите мульти-эскиз
Загрузите мульти-эскиз

Следуйте инструкциям в моем репозитории GitHub для AVRMultiSketch, чтобы загрузить мультискетч во флэш-память через последовательный порт на плате. Репозиторий GitHub AVRMultiSketch содержит все эскизы, показанные на фото. Даже если вы не планируете собирать плату, вы можете найти полезными скетчи NOR Flash Hex Copier и AVR High Voltage.

Шаг 16: Готово

Выполнено
Выполнено
Выполнено
Выполнено
Выполнено
Выполнено
Выполнено
Выполнено

Я также разработал несколько переходных плат для использования несмонтированных микросхем, например, при макетной плате.

- Адаптер ATtiny85 ICSP. Используется для автономного программирования ATtiny85.

- от ATtiny84 до ATtiny85. Он используется как для программирования высокого напряжения, так и подключен к адаптеру ATtiny85 ICSP.

- ИЛИ Флэш-адаптер.

Чтобы увидеть некоторые из моих других дизайнов, посетите

Шаг 17: Предыдущая версия 1.3

Предыдущая версия 1.3
Предыдущая версия 1.3
Предыдущая версия 1.3
Предыдущая версия 1.3

Выше фотографии версии 1.3. Версия 1.3 не имеет последовательного порта USB, сбрасываемых предохранителей и светодиодных индикаторов функционирования. Один вариант версии 1.3 использует ATmega644pa (или 1284P)

Если вы заинтересованы в создании версии 1.3, отправьте мне сообщение (а не комментируйте).

Рекомендуемые: