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


Программа́тор — аппаратно-программное устройство, предназначенное для записи/считывания информации в постоянное запоминающее устройство (однократно записываемое, флеш-память, ПЗУ, внутреннюю память микроконтроллеров и ПЛК[1]).

Если радиолюбителю нужно единожды запрограммировать микроконтроллерное устройство, существует возможность обойтись простейшим программатором, подключаемым к COM-, LPT-порту или USB. Например, самый простой программатор для микросхем AVR — это кабель из шести проводов и четырёх резисторов (так называемый программатор PonyProg)[2].

Для радиолюбителей, занимающихся разработкой программ для микроконтроллеров, существуют более сложные программаторы — такие устройства часто содержат свой микроконтроллер. Подобные программаторы удобны тем, что после работы переводят свои выходы в Z-состояние, и запрограммированное устройство можно испытывать, не отключая программатора. Такие программаторы, как правило, работают с одним-двумя семействами микросхем[3]. При самостоятельном изготовлении программатора такого класса может возникнуть «проблема курицы и яйца» — если в схеме программатора присутствует микроконтроллер, то и его необходимо запрограммировать при отсутствии готового программатора[3]. Для её разрешения приходится отдавать микросхему владельцу готового программатора, либо изготавливать простейший программатор для подключения к COM- или LPT-порту компьютера.

В конструкторских бюро и лабораториях применяются универсальные программаторы. Поскольку в таких устройствах каждый из выводов разъёма (а этих выводов может быть до сотни) может подавать на микросхему напряжения от 0 до 27 В с точностью в 0,1 вольт и частотами до 40 МГц, универсальные программаторы бывают очень дороги — до нескольких тысяч долларов. Зато при появлении новой микросхемы достаточно добавить её поддержку на программном уровне[источник не указан 4986 дней].

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