Оглавление:

Программатор ATTiny HV: 4 шага
Программатор ATTiny HV: 4 шага

Видео: Программатор ATTiny HV: 4 шага

Видео: Программатор ATTiny HV: 4 шага
Видео: Контроллер споттера версия 2.5.2. 2024, Ноябрь
Anonim
Программист ATTiny HV
Программист ATTiny HV
Программист ATTiny HV
Программист ATTiny HV

Это руководство предназначено для утилиты программирования ATTiny, использующей ESP8266 и пользовательский интерфейс на основе браузера. Оно следует из предыдущего редактора инструкций Fuse для чтения и установки предохранителей, но теперь поддерживает стирание, чтение и запись памяти флэш-памяти и EEPROM.

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

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

Устройство имеет следующие особенности.

  • Веб-сервер, поддерживающий чтение и запись данных предохранителя, и страница редактора, обеспечивающая легкий доступ к параметрам предохранителя
  • Стирающий чип (необходим перед написанием нового материала)
  • Чтение и запись данных программы Flash из шестнадцатеричных файлов
  • Чтение и запись данных EEPROM из шестнадцатеричных файлов
  • Поддержка вариантов ATTiny 25, 45 и 85
  • Питание от USB с внутренним генератором 12 В для программирования высокого напряжения
  • Конфигурация сети Wi-Fi с помощью точки доступа wifiManager Доступ через браузер к файловой системе ESP8266 SPIFFS для загрузки и скачивания файлов
  • OTA обновление прошивки ESP8266

Шаг 1. Компоненты и инструменты

Компоненты

  • Модуль ESP-12F
  • Модуль повышения от 5 В до 12 В
  • разъем micro USB с паяемым разъемом
  • Танталовый конденсатор 220 мкФ
  • xc6203 3.3V LDO регулятор
  • МОП-транзисторы 3x n-канальный AO3400 1 x p-канальный AO3401
  • Резисторы 2 x 4k7 1x 100k 1x 1K 1x470R 1x 1R27
  • блок заголовка штыря
  • Небольшой кусок макета для опорной схемы
  • подключить провод (я использовал 3D-печатную коробку на

Инструменты

  • Паяльник с мелким наконечником
  • Пинцет
  • Кусачки

Шаг 2: Электроника

Электроника
Электроника

На схеме показано, что вся мощность поступает от USB-подключения 5 В. Регулятор подает 3,3 В на модуль ESP-12F. Небольшой модуль повышения вырабатывает 12 В, необходимое для программирования высокого напряжения.

ESP GPIO выдает 4 логических сигнала, используемых при программировании высокого напряжения (часы, ввод данных, вывод данных и ввод команды).

Один GPIO используется для включения и выключения полевого МОП-транзистора, питаемого от шины 12 В через резистор 1 кОм. Когда GPIO высокий, tMOSFET включен, а его сток находится на уровне 0 В. Когда GPIO установлен на низкий уровень, сток возрастает до 12 В, необходимого для установки режима программирования высокого напряжения. Второй GPIO можно использовать для понижения уровня 12 В до 4 В, чтобы его можно было использовать в качестве обычного сигнала сброса. Эта возможность в настоящее время не используется, но может использоваться для поддержки программирования SPI, а не программирования высокого напряжения.

Один GPIO используется для включения и выключения 2-ступенчатого драйвера MOSFET для подачи 5 В на ATTiny. Такое расположение используется для соответствия спецификации, согласно которой при включении 5 В время нарастания увеличивается. Это не достигается при питании напрямую от GPIO, особенно с развязывающим конденсатором 4u7, присутствующим в большинстве модулей ATTiny. Резистор низкого номинала используется для гашения скачка тока, вызванного быстрым включением транзисторов MOSFET. Возможно, он не нужен, но используется здесь, чтобы избежать каких-либо сбоев, которые могут быть вызваны этим всплеском включения.

Обратите внимание, что схема немного отличается от предыдущей версии редактора предохранителей. Контакты GPIO переназначены, чтобы сделать возможным программирование SPI, хотя программное обеспечение в данный момент не использует это. Контакты, считывающие сигналы от ATTiny, имеют дополнительную защиту для используемых сигналов 5 В.

Шаг 3: Сборка

сборка
сборка
сборка
сборка

На картинке показаны компоненты, собранные в небольшой корпус. Небольшая макетная плата находится наверху модуля ESP-12F и содержит стабилизатор 3,3 В и 2 схемы управления напряжением.

Слева находится модуль повышения 12 В, питающийся от USB. В корпусе есть слот для 7-контактного блока заголовка для подключения к ATTiny. После подключения и тестирования USB и соединительный блок закрепляются на корпусе с помощью полимерного клея.

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

Шаг 4: Программное обеспечение и установка

Программное обеспечение для программиста находится в скетче Arduino ATTinyHVProgrammer.ino, доступном по адресу

Он использует библиотеку, содержащую основные веб-функции, поддержку настройки Wi-Fi, обновления OTA и доступ к файловой системе на основе браузера. Это доступно на

Конфигурация программного обеспечения находится в заголовочном файле BaseConfig.h. Здесь нужно изменить 2 элемента: пароль для точки доступа для настройки Wi-Fi и пароль для обновлений OTA.

Скомпилируйте и загрузите в ESP8266 из Arduino IDE. Конфигурация IDE должна допускать разделение SPIFFS, например, использование 2M / 2M позволит OTA и большую файловую систему. Дальнейшие обновления могут быть выполнены с помощью OTA.

При первом запуске модуль не знает, как подключиться к локальному Wi-Fi, поэтому настроит конфигурацию сети AP. С помощью телефона или планшета подключитесь к этой сети, а затем перейдите к 192.168.4.1. Появится экран конфигурации Wi-Fi, и вы должны выбрать соответствующую сеть и ввести ее пароль. С этого момента модуль перезагрузится и будет подключаться, используя этот пароль. При переходе в другую сеть или изменении сетевого пароля точка доступа будет снова активирована, поэтому выполните ту же процедуру. При входе в основное программное обеспечение после подключения к Wi-Fi загрузите файлы в папку данных, перейдя к модулям ip / upload. Это позволяет загрузить файл. После того, как все файлы загружены, дальнейший доступ к файловой системе может быть осуществлен с помощью ip / edit. Если осуществляется доступ к ip /, то используется index.htm и открывается главный экран программатора. Это позволяет просматривать, редактировать и записывать данные предохранителя, стирать микросхему, а также производить считывание и запись в память EEPROM.

Для этого используется ряд веб-вызовов.

  • ip / readFuses получает текущие данные предохранителя
  • ip / writeFuses записывает новые данные предохранителей
  • ip / erasechip. стирает чип
  • ip / dataOp поддерживает функции чтения и записи памяти, он предоставляет следующие параметры

    • dataOp (0 = чтение, 1 = запись)
    • dataFile (имя шестнадцатеричного файла)
    • eeprom (0 = Flash, 1 = eeprom)
    • версия (0 = 25, 1 = 45, 2 = 85)

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

ip / edit дает доступ к файлам; ip / firmware дает доступ к обновлениям OTA.

Шестнадцатеричный формат файла - это записи в стиле Intel, совместимые с форматами, созданными Arduino IDE. Если присутствует запись начального адреса, то будет инициирована вставка инструкции RJMP в ячейку 0. Это позволяет запрограммировать файлы загрузчика micronucleus в стертый чип и работать. Для удобства также могут быть прочитаны и использованы простые шестнадцатеричные файлы, состоящие из четырехзначного шестнадцатеричного адреса, за которым следуют 16 шестнадцатеричных байтов данных.

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