Наш магазин на eBay Наш магазин на AliExpress Наш канал в telegram

101 применение шлюза UART-to-I2C/SPI/1W (RH-0004). Часть 2. USB программатор микросхем EPROM с интерфейсом SPI

Сегодня мы будем превращать UART-to-I2C/SPI/1W шлюз в USB-программатор микросхем памяти с интерфейсом SPI (EPROM-ки серий 93Сxx, AT59Cxx, 25xxx и им подобные). Также как и полученный нами ранее USB-программатор I2C, этот программатор будет отличаться повышенной скоростью работы в сравнении с JDM-клонами. Отдельно Microware микрухи рассматривать не будем, поскольку Microware — это фактически один из режимов SPI.

USB-программатор SPI EPROM

С точки зрения железа всё абсолютно аналогично USB-программатору I2C. То есть нам опять потребуется соединить вместе шлюз и конвертер USB-to-UART + запитать шлюз. Как и в прошлый раз, нас устроит любой китайский USB-to-UART, однако лучше взять вот такой (с нашего сайта). Во-первых, его разъём UART — это ответная часть разъёма UART шлюза, поэтому для их соединения вам не придётся ничего изобретать. Во-вторых, наш конвертер позволяет не только организовать обмен данными между шлюзом и компьютером, но и запитать шлюз (причём любым напряжением: +3,3В или +5В, оба они присутствуют на разъёме конвертера как раз в нужных местах). Вариант со шлюзом и нашим USB-to-UART показан на фотографии справа.

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

Во-первых, нужно установить на компьютер драйвера для USB-to-COM преобразователя. Преобразователь, предлагаемый на сайте, сделан на базе чипа cp2102 фирмы silabs, дрова для него (VCP Drivers) можно скачать на их официальном сайте, вот по этой ссылке.

программа для работы с USB-программатором I2C EPROM

После установки драйверов на USB-to-UART конвертер у вас на компьютере появляется виртуальный com-порт, через который специально написанная программа может общаться со шлюзом. Эта программа сама устанавливает нужный для данного чипа режим SPI и реализует алгоритмы чтения/записи. Список версий и ссылки для скачивания смотрите в конце статьи).

Главное окно программы показано на картинке слева. Тут всё достаточно просто, — выбираем com-порт, выбираем чип, подключаемся и можем этот чип читать/писать. Чтобы было удобнее, в правом верхнем углу программы отображается схема подключения шлюза к выбранному чипу (к каким ногам что подключать).

Если нужного чипа нет в списке — можно написать на форум или в личку админу (rhf-admin) письмо с указанием того, какой чип вы хотели бы добавить. Если интересно — можете попробовать добавить нужный чип сами, все версии программы выложены с исходниками, программа написана в C++ Builder.

Протокол SPI подробно описан вот здесь.

Список функций и регистров шлюза можно посмотреть здесь.

Программа Исходники Описание (поддерживаемые чипы, изменения в коде и т.д.) Поддерживаемые ОС
SPI Programmer v.1.0 v.1.0 sources 93C06, 93C46, 93C57, 93C56, 93C66, 93C76, 93C86, NM93C13, NM93C14, AT59C11, AT59C22, AT59C13, AK6420A, AK6440A, AK6480A, 25010, 25020, 25040, 25080, 25160, 25320, 25640 Windows XP, Windows Vista, Windows 7, Windows 8
SPI Programmer v.2.0 v.2.0 sources 1) исправлен баг с неправильной загрузкой прошивок для микрух с организацией памяти по 16 бит в слове
2) реализована полноценная работа с hex-файлами (загрузка/сохранение)
SPI Programmer v.2.1 Duo v.2.1 Duo sources добавлена возможность работы со шлюзом RH-0010

Небольшое видео, демонстрирующее работу программатора.

  1. Часть 1. USB программатор микросхем EPROM с интерфейсом I2C
  2. Часть 2. USB программатор микросхем EPROM с интерфейсом SPI
  3. Часть 3. USB-термометр на DS18B20 с передачей данных по сети
  4. Часть 4. USB программатор микросхем EPROM DS2430
  5. Часть 5. USB программатор микросхем EPROM DS24B33
  6. Часть 6. Подключение 3-осевого гироскопа/акселерометра MPU6050 к компьютеру
  7. Часть 7. USB-программатор микросхем EPROM DS2431
  8. Часть 8. USB программатор микросхем с интерфейсом 1-Wire
  9. Часть 9. USB программатор SPI-flash серии W25Qxx
  10. Часть 10. USB программатор для микроконтроллеров AVR (последовательное программирование через SPI)

Добавить комментарий