Как выбрать программатор

Инструкция по классификации программаторов от Суперайс

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

Одним из первых устройств со встроенной памятью считается Антикитерский механизм (3 век до н.э.). Но большинству нам оно известно, как кулачковый валик. Он применяется в шарманках, музыкальных шкатулках, часах с боем и иных механизмах.

Развитие компьютерной техники, микроэлектроники память устройств «перекочевала» в полупроводниковые элементы. Они получили название постоянное запоминающее устройство (ПЗУ), флэш-память. Транзисторная техника позволяет записывать, читать информацию при помощи программатора.

Время чтения: 18 минут

Программатор

Важное в статье:


Представляет собой устройство, содержащее аппаратную и программную часть, предназначенное для чтения, записи информации в ПЗУ, флэш-память или внутреннюю память микроконтроллеров (МК).

Они получили широкое распространение в ремонтных работах, в разработке, конструировании схем и устройств на базе таких чипов памяти как: PROM, EPROM, EEPROM, Flash-память, eMMC, MRAM, FeRAM, NVRAM.

Появление устройств программируемой логики, таких как: PLD, PLA, PAL, GAL, CPLD, FPGA также потребовало разработки специализированных программаторов.

Рост производительности, уменьшение техпроцесса и цены сделали МК более доступными для рядовых потребителей. Поэтому потребовалось появление недорогих, конструктивно простых программаторов.

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

Программатор CH341A

Программатор CH341A

Программаторы делят по следующим признакам:

  • По типу микросхем;
  • По способу подключения к компьютеру
  • Интерфейсу передачи данных
  • Наличию дополнительных функций.

По типу программируемых микросхем


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

Существуют универсальные программаторы, позволяющие работать практически со всеми устройствами, они обладают продвинутой начинкой, обновляемым программным обеспечением (ПО) и поддержкой производителя. Однако в них нуждаются единицы пользователей.

Поэтому чаще можно встретить программаторы для работы с конкретным видом устройств, например, для:
  • Чтения/прошивки чипов энергонезависимой памяти;
  • Работы с ПЛИС;
  • Программирования МК одной или нескольких серий;
  • Работы со специализированными чипами.

Давайте подробнее рассмотрим их классификацию.

Работа программатора с чипами памяти


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

Наиболее популярными объектами, для прошивки которых приобретается прибор, являются микросхемы EPROM/EEPROM серий 24, 25 и 93, а также FLASH 25 серии. Это с вязано с тем, что чипы этих серий широко применяются в компьютерной технике, электронике для хранения BIOS (basic input/output system).

EEPROM


EEPROM (Electrically Erasable Programmable Read-Only Memory) — электрически стираемое перепрограммируемое постоянное запоминающее устройство (ПЗУ). Этот вид энергонезависимой памяти способен выдержать миллион циклов записи/стирания.

FLASH


FLASH – разновидность полупроводниковой технологии электрически перепрограммируемой памяти (EEPROM). Свое наименование (FLASH) получила из-за высокой скорости стирания записанной информации. Выделяют двумерную память – NOR с трехмерным массивом ячеек NAND, 3D NAND. Максимальное число циклов перезаписи памяти NAND не превышает 100 тысяч.

Программаторы EEPROM

Программаторы EEPROM: а) Программатор CH341A; б) EZP2019; в) SkyPRO II

Чаще всего недорогие программаторы используются в любительских целях для перепрошивки энергонезависимой памяти собственных устройств, малой техники или BIOS компьютеров. Однако при выборе стоит четко осознавать, что работа с более современными типами памяти, а также иными устройствами может быть не доступна.

Это связано с тем, что на функционал любого прибора значительно влияет тип применяемого контроллера, версия его прошивки и программное обеспечение. Поэтому не стоит ожидать от дешевого «no name» функционала профессионального устройства.

Так как у большинства любителей требования не велики, то чаще они приобретают несколько приборов направленных на работу с конкретными устройствами. Универсальные, специализированные программаторы востребованы в мастерских и сервисных центрах по ремонту техники, электроники.

Работа программатора с ПЛИС


ПЛИС или FPGA (field-programmable gate array) – это программируемая логическая интегральная схема. Этот электронный компонент ведет свою «родословную» от таких интегральных микросхем как:
  • PAL (programmable array logic) — программируемый массив логики;
  • GAL (generic array logic) — универсальный логический массив;
  • CPLD (complex programmable logic device) — сложное программируемое логическое устройство.

Программаторы FPGA

Программаторы FPGA: а) USB Blaster V2 (ALTERA); б) XILINX DLC9LP

ПЛИС обладает большим потенциалом, в первую очередь это возможность конструирования на его базе практически любой логической схемы или МК.

Возможности FPGA ограничиваются только числом встроенных транзисторов, фантазией самого разработчика. Так как технология FPGA достаточно уникальна, различные производители используют различные архитектуры, то для программирования требуется индивидуальный, профессиональный инструмент.

Популярными ПЛИС являются компании Intel (Altera) и Xilinx. Однако, в настоящее время число производителей, выпускающих FPGA значительно растет, что ведет к снижению цены, доступности этих устройств.

Работа программатора с MCU


Микроконтроллер или MCU (Micro Controller Unit) — это микросхема, способная управлять другими электронными устройствами. Её особенность — это не только процессор, но встроенная: оперативная и постоянная память (ОЗУ, ПЗУ), устройство ввода-вывода, таймер, иные периферийные устройства.

В настоящее время МК выпускаются многими производителями. Различные MCU различаются не только архитектурой, но рабочей частотой, объемом памяти, типом протокола обмена данных, шириной интерфейса ввода-вывода.

Можно выделить следующие, наиболее популярные, семейства микропроцессоров: ESP8266, ESP32, ARM, STM32, AVR, PIC, STM8.

Для микроконтроллеров выпускаются как в специализированном исполнении – для конкретного семейства МК, так в универсальном – для нескольких семейств.

Программаторы микроконтроллеров

Программаторы микроконтроллеров: а) PICkit3.5 (PIC); б) STK500 AVRISP (AVR); в) USB-UART (STC)

По способу подключения к компьютеру


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

Для подключения программаторов могут применяться:
  • Параллельный порт;
  • Последовательный порт;
  • Интерфейсная плата, подключаемая через шину PCI;
  • USB порт;
  • Ethernet.

Параллельный порт


Параллельный порт предназначен для подключения к компьютеру различных периферийных устройств. Больше он известен как LPT. Интерфейс появился в 70-х годах в разных формах и числах контактов. К 80-м годам стандартизировался в двух вариантах: 36-контактный Centronics (IEEE 1284-B), 25-контактный DB-25 (IEEE 1284-A). Centronics чаще использовался на стороне оборудования, но постепенно от него отказались и оставили разъем DB-25 male/female.

Порт использует 8 сигнальных проводов для передачи данных, что позволяет передавать 8 сигналов параллельно друг другу, за это он получил свое название. Максимальная скорость передачи данных LPT достигает 16-20 Мбит/с.

Постепенно параллельный порт был вытеснен с большинства устройств более скоростным интерфейсом USB, в настоящее время не используется для подключения.

На базе параллельного порта существует много схем самодельных программаторов различной сложности, которые можно использовать по сей день для прошивки некоторых E/EPROM, ряда MCU.

Последовательный порт


Последовательный порт, COM-порт (communications port) или RS-232, в отличие от параллельного передает информацию побитно всего по двум проводам. Изначально интерфейс создавался для присоединения телефонных модемов и обмена данными с некоторыми устройствами. В свое время порт широко использовался для подключения некоторых моделей, в том числе конструировались самодельные устройства. Максимальная скорость передачи данных интерфейса RS-232 достигает 115200 бод. Однако в настоящее время СОМ-порт активно вытесняется его «сородичем» – USB интерфейсом. В связи с этим программаторы, подключаемые через последовательный порт, практически не выпускаются. Однако существуют схемы для самостоятельной сборки, подключаемых через данный интерфейс.

В настоящее время COM-порт чаще используется для обмена данными с устаревшими устройствами, а также в сочетании с преобразователями RS-232/RS-485 для создания промышленных сетей, используемых в промышленной автоматизации.

Программаторы с параллельным и последовательным портом

Программаторы с а) параллельным б) и последовательным портом

USB порт


Хорошо известный всем интерфейс обмена данными USB (Universal Serial Bus) появился в 1995 году. Как и СОМ-порт относится к последовательному интерфейсу передачи данных. Интерфейс использует всего четыре провода: два для питания устройства, два для передачи данных. За счёт высокой скорости передачи данных (от 1,5 Мбит/с для USB 1.0 до 20 Гбит/с для USB 3.2), простоты конструкции, малых размеров, он быстро вытеснил другие интерфейсы.

Интерфейс USB 3.2 имеет четыре пары дифференциальной сигнализации, используемых для высоких скоростей передачи данных: две пары для данных TX, две пары для данных RX. Они обеспечивают полнодуплексную связь на полной скорости. Также есть два новых сигнала SBU с одной боковой полосой для вспомогательной связи, а также линии конфигурации CC, которые могут использоваться для определения режимов работы, уровня мощности и скорости подключенного оборудования.

На данный момент USB-интерфейс активно развивается, большинство устройств используют именно его для обмена данными. А все современные программаторы используют именно его для обмена данными с компьютером. Однако некоторые могу сочетать USB-интерфейс с LPT или COM-портом.

LAN и WLAN соединение


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

Также преимуществом таких сетей являются: высокая скорость передачи данных до 10 Гбит/с (LAN соединение).

Интерфейсная плата


Интерфейсные платы или платы расширения применяются при отсутствии необходимых портов или нехватке существующих. Они подключаются к материнской плате компьютера через шину PCI или PCI-E. Плата расширения позволяет добавить не только устаревшие разъемы LPT или COM, но создать LAN или WLAN соединение..

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

Интерфейсные платы портов

Интерфейсные платы портов а) LPT, б) СОМ, в) LAN, г) Wi-Fi.

По способу подключения микросхем


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

По подключению микросхемы принято выделять:
  • Параллельное программирование;
  • Последовательное или внутрисхемное программирование.

Параллельное программирование


Параллельное программирование было достаточно популярным методом прошивки микросхем. Его особенность заключается в высокой скорости передачи данных, однако для его реализации требуется 8 линий для передачи данных, примерно столько же служебных. Поэтому физически такой способ программирования можно осуществить только через параллельный порт LPT или его эмуляцию. При этом программируемая микросхема должна иметь соответствующее число ножек.

Параллельное программирование практически полностью вытеснено последовательным и связано это с тем, что:
  • Конструировать чипы с малым объемом памяти, большим числом «ног» невыгодно;
  • Снижение числа контактов позволяет миниатюризировать чипы;
  • Необходимость унификации чипов, методов программирования;
  • Появление технологии внутрисхемного программирования.

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

Последовательное или внутрисхемное программирование


Последовательное или внутрисхемное программирование ISP (in-system programming), получило широкое распространение это обусловлено следующими причинами:
  • Появление FLASH-памяти;
  • Миниатюризацией чипов;
  • Повышение скорости интерфейса.

Появление флэш-памяти позволило быстро стирать данные. Уменьшение технологического процесса потребовало уменьшения размеров чипа, снижения числа рабочих контактов. Все это в сочетании с увеличением скорости передачи сигналов нивелировало недостатки данного способа программирования.

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

В микропроцессорах, за интерпретацию последовательного интерфейса также отвечают внутренние блоки логики. Они определяют способ загрузки напрямую или через внутренний загрузчик – bootloader (не у всех MCU реализовано).

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

Виды разъемов для подключения микросхем к программатору


Тип применяемого разъема напрямую зависит от протокола передачи данных, от типа, модели EEPROM/MCU.

ZIF


Разъем ZIF (Zero Insertion Force) наиболее часто встречается. Он предназначен для прошивки микрочипов в корпусе DIP. В бюджетных версиях чаще встречаются 16 контактные ZIF-разъемы. В более дорогих моделях устанавливают 40 контактные.

ZIF разъем в программаторах

ZIF разъем в программаторах

JTAG


JTAG (Joint Test Action Group) применяют для внутрисхемного программирования. Разъем можно встретить в различных исполнениях, но чаще это 10 и 20-пиновые разъемы.

JTAG разъем в программаторах

JTAG разъем в программаторах

SWD


SWD – штыревой разъем. Он часто встречается в бюджетных программаторах, представлен 4 или 5 штырями, однако его можно встретить в 20-пиновом исполнении.

Специализированные разъемы


Такие разъемы применяются для подключения конкретных устройств. Можно выделить такие, как:

VGA, HDMI – для внутрисхемного программирования аудио, видео приборов;

Контактные площадки – для параллельного программирования чипов в корпусах SOP, BGA;

Адаптеры – для параллельного программирования чипов в корпусах SOP, PLCC, TSOP и других;

Прищепки – для подключения к чипам без их выпаивания с платы;

Специализированные кабели - для присоединения специализированных устройств (LED матрицы, экраны).

По дополнительным функциям


Дополнительные функции расширяют возможности:
  • Наличие программного обеспечения (ПО) под различные операционные системы;
  • Поддержка стороннего ПО;
  • Возможность самостоятельного обновления прошивки;
  • Проверка исправности;
  • Проверка правильности подключения микросхемы;
  • Возможность подключения адаптеров;
  • Наличие функции быстрого стирания, проверки записи/стирания микрочипа;
  • Наличие функции копирования;
  • Возможность автономной работы;
  • Наличие встроенного HEX-редактора.

ТОП программаторов для прошивки памяти

ТОП программаторов для ПЛИС

  1. ISP программатор XILINX DLC9LP – (Virtex и Spartan);
  2. Внутрисхемный программатор Lattice HW-USBN-2A – (Lattice);
  3. Высокоскоростной JTAG программатор USB Blaster V2 – (MAX, Stratix, Cyclone, EPCS);
  4. JTAG программатор Altera USB Blaster (FT245 + CPLD) – (MAX, Stratix, StratixII, Cyclone, CycloneII, Acex, APEX, FLEX, EPCS, EPC);
  5. Программатор Altera USB Blaster – (MAX, Stratix, StratixII, Cyclone, CycloneII, Acex, APEX, FLEX, EPCS, EPC).

ТОП программаторов для микроконтроллеров

  1. Универсальный программатор RT809F – (AVR, ATMEGA, Attiny, PIC, AT90, AT89S);
  2. Программатор автомобильных микросхем Xhorse VVDI PROG – MC9S08, MC68HC(9)12, MC9S12, V850, H8X, R8C, PCF79XX, контроллеры Atmega, микросхемы памяти EEPROM);
  3. Программатор Nu-Link для микроконтроллеров NuMicro – (микроконтроллеры NuMicro);
  4. Внутрисхемный программатор-отладчик PICkit3 – (микроконтроллеры PIC);
  5. Программатор/отладчик Risym ST-LINK V2 mini – (микроконтроллеры STM8 и STM32);
  6. USBASP ISP программатор v2.0 для AVR – (микроконтроллеры AVR);
  7. Преобразователь USB-UART программатор STC – (микроконтроллеры STC).

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

Количество показов: 1091
30.11.2021

Возврат к списку