Перейти к содержимому

Что такое программатор для прошивки

  • автор:

AVR. Учебный курс. Трактат о программаторах

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

Программаторы бывают разные под разные семейства контроллеров существуют свои программаторы. Впрочем, бывают и универсальные. Более того, даже ту же простейшую AVR’ку можно прошить несколькими способами:

Внутрисхемное программирование (ISP)
Самый популярный способ прошивать современные контроллеры. Внутрисхемным данный метод называется потому, что микроконтроллер в этот момент находится в схеме целевого устройства — он может быть даже наглухо туда впаян. Для нужд программатора в этом случае выделяется несколько выводов контроллера (обычно 3..5 в зависимости от контроллера).

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

  • MISO — данные идущие от контроллера (Master-Input/Slave-Output)
  • MOSI — данные идущие в контроллер (Master-Output/Slave-Input)
  • SCK — тактовые импульсы интерфейса SPI
  • RESET — сигналом на RESET программатор вводит контроллер в режим программирования
  • GND — земля

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

Для внутрисхемной прошивки контроллеров AVR существует не один десяток разнообразных программаторов. Отличаются они в первую очередь по скорости работы и типу подключения к компьютеру (COM/LPT/USB). А также бывают безмозглыми или со своим управляющим контроллером.

Безмозглые программаторы, как правило, дешевые, очень простые в изготовлении и наладке. Но при этом обычно работают исключительно через архаичные COM или LPT порты. Которые найти в современном компьютере целая проблема. А еще требуют прямого доступа к портам, что уже в Windows XP может быть проблемой. Плюс бывает зависимость от тактовой частоты процессора компьютера.

Так что твой 3ГГЦ-овый десятиядерный монстр может пролететь, как фанера над Парижем.

Идеальный компьютер для работы с такими программаторами это какой-нибудь PIII-800Mhz с Windows98…XP.
Вот очень краткая подборка проверенных лично безмозглых программаторов:

  • Программатор Громова.
    Простейшая схема, работает через оболочку UniProf(удобнейшая вещь. ), но имеет ряд проблем. В частности тут COM порт используется нетрадиционно и на некоторых материнках может не заработать. А еще на быстрых компах часто не работает. Да, через адаптер USB-COM эта схема работать не будет. По причине извратности подхода 🙂
  • STK200
    Надежная и дубовая, как кувалда, схема. Работает через LPT порт. Поддерживается многими программами, например avrdude. Требует прямого доступа к порту со стороны операционной системы и наличие LPT порта.
  • FTBB-PROG.
    Очень надежный и быстрый программатор работающий через USB, причем безо всяких извратов. C драйверами под разные операционные системы. И мощной оболочкой avrdude. Недостаток один — содержит редкую и дорогую микросхему FTDI, да в таком мелком корпусе, что запаять ее без меткого глаза, твердой руки и большого опыта пайки весьма сложно. Шаг выводов около 0.3мм. Данный программатор встроен в демоплаты Pinboard

Программаторы с управляющим контроллером лишены многих проблем безмозглых. Они без особых проблем работают через USB. А если собраны на COM порт, то без извращенских методик работы с данными — как честный COM порт. Так что адаптеры COM-USB работают на ура. И детали подобрать можно покрупней, чтобы легче было паять. Но у этих программаторов есть другая проблема — для того чтобы сделать такой программатор нужен другой программатор, чтобы прошить ему управляющий контроллер. Проблема курицы и яйца. Широко получили распространение такие программаторы как:

  • USBASP
  • AVRDOPER
  • AVR910 Protoss

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

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

Параллельное программирование во много раз быстрей последовательного (ISP), но требует подачи на RESET напряжения в 12 вольт. А также для параллельной зашивки требуется уже не 3 линии данных, а восемь + линии управления. Для программирования в этом режиме микроконтроллер вставляется в панельку программатора, а после прошивки переставляется в целевое устройство.

Для радиолюбительской практики он особо не нужен, т.к. ISP программатор решает 99% насущных задач, но тем не менее параллельный программатор может пригодиться. Например, если в результате ошибочных действий были неправильно выставлены FUSE биты и был отрублен режим ISP. Параллельному программатору на настройку FUSE плевать с высокой колокольни. Плюс некоторые старые модели микроконтроллеров могут прошиваться только высоковольтным программатором.
Из параллельных программаторов для AVR на ум приходит только:

  • HVProg от ElmChan
  • Paraprog
  • DerHammer

А также есть универсальные вроде TurboProg 6, BeeProg, ChipProg++, Fiton которые могут прошивать огромное количество разных микроконтроллеров, но и стоят неслабо. Тысяч по 10-15. Нужны в основном только ремонтникам, т.к. когда не знаешь что тебе завтра притащат на ремонт надо быть готовым ко всему.

Прошивка через JTAG
Вообще JTAG это отладочный интерфейс. Он позволяет пошагово выполнять твою программу прям в кристалле. Но с его помощью можно и программу прошить, или FUSE биты вставить. К сожалению JTAG доступен далеко не во всех микроконтроллерах, только в старших моделях в 40ногих микроконтроллерах. Начиная с Atmega16.

Компания AVR продает фирменный комплект JTAG ICEII для работы с микроконтроллерами по JTAG, но стоит он (как и любой профессиональный инструмент) недешево. Около 10-15тыр. Также есть первая модель JTAG ICE. Ее можно легко изготовить самому, а еще она встроена в мою демоплату Pinboard.

Прошивка через Bootloader
Многие микроконтроллеры AVR имеют режим самопрошивки. Т.е. в микроконтроллер изначально, любым указанным выше способом, зашивается спец программка — bootloader. Дальше для перешивки программатор не нужен. Достаточно выполнить сброс микроконтроллера и подать ему специальный сигнал. После чего он входит в режим программирования и через обычный последовательный интерфейс в него заливается прошивка. Подробней описано в статье посвященной бутлоадеру.
Достоинство этого метода еще и в том, что работая через бутлоадер очень сложно закосячить микроконтроллер настолько, что он не будет отвечать вообще. Т.к. настройки FUSE для бутлоадера недоступны.

Бутлоадер также прошит по умолчанию в главный контроллер демоплаты Pinboard чтобы облегчить и обезопасить первые шаги на пути освоения микроконтроллеров.

Pinboard II
Прошивка AVR с помощью демоплаты Pinboard II (для Pinboard 1.1 все похоже)

Спасибо. Вы потрясающие! Всего за месяц мы собрали нужную сумму в 500000 на хоккейную коробку для детского дома Аистенок. Из которых 125000+ было от вас, читателей EasyElectronics. Были даже переводы на 25000+ и просто поток платежей на 251 рубль. Это невероятно круто. Сейчас идет заключение договора и подготовка к строительству!

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

89 thoughts on “AVR. Учебный курс. Трактат о программаторах”

А что это делает в учебном курсе? чего не на главной странице?
Здарова, Артем, вот я и зашел, чего то не мог зайти долго…

Я постепенно правлю и переписываю старые статьи, чтобы привести их в более стройный и завершенный вид.

Рейтинг лучших программаторов и дебаггеров на 2023 год

Рейтинг лучших программаторов и дебаггеров на 2023 год

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

  • 5.1 AVR USBASP
  • 5.2 Turbosky PMT-1
  • 5.3 MiniPro TL866
  • 5.4 USB EZP2019
  • 5.5 RT809F
  • 6.1 CH341A
  • 6.2 IDA Pro
  • 6.3 SWD DEBUGGER (ОТЛАДЧИК-ПРОГРАММАТОР PADI)

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

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

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

Приборы для считывания и записи данных можно классифицировать по некоторым характеристикам таким как:

  • по типу микросхем;
  • по их присоединению;
  • по сложности самих программаторов.

По присоединению микросхем приборы подразделяются на:

  • параллельные;
  • внутрисхемные.

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

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

Дебаггер

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

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

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

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

Покупая программатор, следует учитывать некоторые моменты, которые помогут правильно подобрать устройство:

  • качество, от этого пункта зависит как долго, проработает прибор, а от качества программирования зависит, как долго прослужит микросхема. Перед приобретением следует убедиться, что программатор соответствует рекомендациям компании производителя микросхемы;
  • время программирования, тут уже пользователь сам решает насколько быстрый инструмент ему нужен, время программирования может варьироваться от секунд до часов. Естественно если устройство выбирается для серийной работы, то следует остановиться на выборе того, который работает быстро и наделен способностью группового программирования;
  • цена, она разная, на ней отражается бренд, качество, скорость программирования и многое другое;
  • количество программируемых микросхем. Как правило, производители указывают количество микросхем, к которым подходит программатор, но не всегда эти сведения соответствуют действительности, нередко в перечне оказываются виды микросхем, которые уже не используют. В большинстве случаев достаточно программатора, который совместим с популярными типами микросхем;
  • возможность обновления программного обеспечения, при работе с программаторами нередко требуется обновление, например, в случае ошибок, потери софта. А также же если вышли новые микросхемы после обновления не потребуется приобретать новый прибор. Перед покупкой следует уточнить как обновить устройство и сколько это будет стоить. Что касается обновления, то некоторые производители заявляют о возможности бесплатного обновления и, как правило, это правда. Но стоит знать, что со временем сама модель программатора устаревает и обновления на нее не будут загружаться, что в любом случае приведет к потребности приобрести новый;
  • наличие технической поддержки, она должна быть качественной так как могут возникнуть вопросы при работе с прибором;
  • комплектность устройства, при программировании матриц могут понадобиться различные специальные адаптеры-переходники.

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

На что обратить внимание при выборе отладчика

Выбирая отладчик (дебаггер) покупатель также должен обратить внимание на такие пункты как:

  • качество;
  • компанию производителя;
  • время, которое тратится на отладку.

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

Лучшие программаторы

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

Модель AVR USBASP относится к универсальным USB программаторам, поддерживает десяти штырьковые флэш-микроконтроллеры с возможностью установить дополнительно шесть штырьковых адаптеров. Прибор имеет два варианта питания (5 и 3,3 вольта), которые осуществляются через специальную перемычку. Несмотря на преимущества устройства, стоимость его относится к доступным.

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

Данная модель представлена в виде кабеля, с одной стороны которого расположена флешка, являющаяся отладчиком, с помощью нее и происходит настройка радиостанции, таких как Walkie-Talkie. Аппарат позволяет выбрать и установить назначение клавишам радиостанций те функции, которые необходимы, поставить шумоподавление нужного уровня, выбрать звук вызова и подключения каналов. Отладчик совмещается не только с товарами компании Turbosky, но и синхронизируется с такими моделями станции, у которых кодировка осуществляется при помощи CTCSS, DCS кодов.

  • размеры от очень компактный;
  • идеальный вариант для настройки радиостанции;
  • есть поддержка для пользователей;
  • качественный.
  • узконаправленная специализация.

Высокоскоростной китайский программатор MiniPro TL866 подходит для программирования всех современных систем Windows: 7, 8, 10, 32 и 64 бита. При помощи данной модели возможно провести SRAM тест, также прибор поддерживает такие чипы как NAND Flash объемом до 8 Gbits. Помимо всего, MiniPro TL866 оснащен рядом дополнительных функции таких как, автоматический поиск плохих пин-контактов, вывод порядкового номера и проведение тестов алгоритмов. Потребление энергии микросхемами минимально. При помощи DLL библиотек, программисты способны создавать всевозможные алгоритмы, даже могут устанавливать уникальные коды, позволяющие защищать авторские права на прибор.

  • высокая скорость программирования;
  • функциональные возможности;
  • комплектация;
  • качество.
  • цена.

Еще одна модель USB программатора, выпускаемая на территории Китая, отличающаяся высокой скоростью работы. Корпус прибора оснащен световыми индикаторами, которые показывают питание и процесс программирования. Устройство относится к универсальным и подходит для ремонта бытовой техники и промышленного оборудования. После включения прибор дает возможность автоматически проверять соответствует ли МК нормам безопасности, а также позволяет загружать нужное программное обеспечение. С ограничением, но USB EZP2019 позволяет проверить целостность BIOS материнской платы у персонального компьютера. Прибор работает со скоростью до 12 м/с, таким образом период установки драйверов значительно ускоряется.

  • габариты прибора;
  • обширная сфера использования;
  • располагается в корпусе;
  • высокая скорость работы.
  • не выявлены.

Модель RT809F разработана для работы с электронно-вычислительной и периферийной техникой, а также прибор поддерживает электрически стираемое перепрограммируемое ПЗУ I2C EEPROM Memory и оперативное запоминающее устройство (ОЗУ) DDR1/DDR2/DDR3. Помимо этого RT809F совместим с МК MCU RTD2120, 93 MircroWire, Micom. WINBOND расширяет способности аппарата тем самым привлекая внимание лиц занимающихся ремонтов различной техники (радио, телемастеров и т.д.) независимо от уровня их квалификации. Рассматривая параметры модели, можно сказать, что она относится к самым выгодным, так как в ней совмещены невысокая стоимость и широкая совместимость с микроконтроллерами.

  • универсальность применения;
  • цена в соотношении с его возможностями приемлемая;
  • возможность подключения через USB, VGA, SOP-адаптер и интернет;
  • хорошая комплектация.
  • не замечены.

Лучшие дебаггеры

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

CH341A аппарат, созданный для прошивки SPI и EEPROM памяти, наделенный функцией отладчика. Интерфейс модели на русском языке, что упрощает работу с ним, само устройство поддерживает около 700 МК. Прибор предназначен для работы с прошивкой микроконтроллеров, отладки материнских плат, располагающихся в ПК и накопительной памяти, а также актуализации BIOS. Для стабильности работы материнских плат пользователь может отключить функцию установки драйверов по умолчанию и самостоятельно подключить нужную версию.

  • небольшие размеры;
  • работает с большим количеством микросхем;
  • простота использования;
  • комплектация.
  • необходимы навыки для использования;
  • рабочий процесс длится около часа, что довольно долго.

IDA Pro является одновременно и дизассемблером и отладчиком, позволяющим превращать бинарный код в ассемблерный текст, используемый для анализа работы программы. Это программа наделена обширными возможностями, что делает ее популярной среди пользователей, занимающихся профессионально в сфере программирования. Итак, среди способностей можно выделить такие как, распознание стандартных библиотечных функций (технология FLIRT), наличие открытой и модульной архитектуры и встроенного языка программирования IDC, способность работать почти со всеми распространенными процессорами и форматами файлов и многие другие. Благодаря своим возможностям устройство выполняет такие функции как проверка на наличие различных вредоносных программ и вирусов, поиск и изучение ошибок в коде, валидизация и оптимизация программ.

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

Модель PADI SWD Debugger относится к отладчикам программаторам, за основу при разработке был взят дебаггер J-Link от Segger. Аппарат позволяет заливать прошивку в бинарном формате, используя специальные средства разработки отлаживать программы путем остановки и пошаговой отладки. Для подключения к PADI IoT Stamp используют всего два провода – Serial Wire Data и Serial Clock. Шнур Reset не требует обязательного подключения. Для поддержания работы дебаггера используют стандартный программный комплекс J-Link и средами разработки IAR, Keil. Устройство подходит для отладки программ, для прошивки в микроконтроллеры типа Cortex-M, осуществлять питание PADI на период пока проектируется девайс.

  • цена;
  • для работы требуется подключение всего лишь двух проводов;
  • питание PADI возможно непосредственно от самого отладчика;
  • подключение происходит при помощи гнезда USB-Mini, что очень удобно.
  • отсутствуют.

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

Программаторы. Краткий обзор.

Материалы предоставлены Гуриным Александром,
руководителем проекта «Терраэлектроника — разработчикам» ООО «Терраэлектроника».

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

Программаторы — это устройства, предназначенные для программирования микросхем памяти (EPROM, EEPROM, FLASH), внутренней памяти микроконтроллеров и микросхем программируемой логики (PLD).

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

  • специализированные программаторы для микросхем памяти (EPROM, EEPROM, FLASH)
  • специализированные программаторы для микросхем памяти и внутренней памяти отдельных семейств микроконтроллеров
  • универсальные программаторы микросхем памяти, внутренней памяти микроконтроллеров, микросхем программируемой логики (PLD)

Основные функциональные возможности современных программаторов:

  • тестовая колодка с нулевым усилием (ZIF socket), обеспечивающая многократный надежный контакт с программируемой микросхемой в корпусе DIP
  • для программирования микросхем с корпусами, отличными от DIP, программаторы снабжаются специальными адаптерами под соответствующий тип корпуса
  • возможность обновления программного обеспечения для расширения количества программируемых микросхем
  • программная установка параметров программирования: Vccp, Vvpp
  • самотестирование при включении питания
  • тестирование правильности установки микросхем
  • проверка качества контакта по всем выводам программируемой микросхемы
  • защита всех выводов микросхемы от перенапряжения и статического электричества
  • возможность работы автономно от компьютера

Области применения программаторов:

  • разработка и производство электронной аппаратуры
  • ремонт и модернизация электронной аппаратуры

Что программируют ремонтники? Микросхемы памяти кассовых аппаратов, телевизоров, видеомагнитофонов, спутниковых ресиверов и другой бытовой техники, мобильных телефонов, кассовых аппаратов…

«Терраэлектроника» предлагает широкий выбор программаторов от ведущих отечественных и зарубежных производителей, от самых простых и недорогих моделей до мощных многофункциональных универсальных устройств.

В настоящем обзоре мы остановимся на наиболее интересных из них.

Универсальный программатор ПЗУ, производитель — «ROMSERVICE»

  • одна из самых дешевых и простых моделей программаторов ПЗУ
  • бескорпусное исполнение
  • режимы работы: автономный и в качестве приставки к компьютеру

Типы программируемых микросхем:

  • EPROM 27(C)16/32/64/128/256/512/010/020/040 (УФ-стираемые и однократно программируемые)
  • К573РФ2/4/5/6/7/8/9
  • КС1626РФ1

Универсальный программатор для микросхем памяти и внутреннего ППЗУ микроконтроллеров, производитель -«ROMSERVICE»

  • автономный режим — 32 символа двуязычный дисплей, 5-кнопочная клавиатура, 8 Мбит энергонезависимой памяти
  • программно регулируемое питание микросхем при записи, чтении, проверке
  • программное обновление, добавление поддержки новых микросхем через Internet
  • автономное питание с помощью аккумулятора

Типы программируемых микросхем:

  • микросхемы памяти EPROM, EEPROM, FLASH (27XXX; 28XXX; 28FXXX; 29XXX; 24XXX; 39XXX; 49ХХХ; 58ХХХ; 93XXX), SEEPROM, последовательные FLASH
  • микроконтроллеры MCS-48; MCS-51; Microchip PIC (серий 12XXX, 14XXX, 16XXX) Atmel (AVR, MegaAVR, TinyAVR)
  • проверка статических ОЗУ (SRAM) до 4 Мегабит

Специализированный программатор для микроконтроллеров семейства MCS51, Atmel AVR, производитель — «ELNEC»

  • одна из самых популярных моделей программаторов
  • высокоскоростной интерфейс IEEE 1284 через принтерный порт (до 1Мбайт/сек)
  • режим внутрисхемного последовательного программирования (ISP)
  • самотестирование при включении питания
  • тестирование правильности установки микросхем
  • проверка качества контакта по всем выводам программируемой микросхемы
  • программная установка параметров программирования: Vccp, Vvpp

Универсальный расширяемый многофункциональный программатор последнего поколения, производитель — «ELNEC»

  • программирование практически всех известных микросхем памяти и микроконтроллеров
  • универсальный аппаратный драйвер на 48 выводов, расширяемый до 256 выводов
  • высокоскоростной интерфейс IEEE 1284 через принтерный порт (до 1Мбайт/сек)
  • возможность одновременного программирования до 8 микросхем
  • тестирование правильности установки микросхем
  • проверка качества контакта по всем выводам программируемой микросхемы
  • защита всех выводов от перенапряжения и статического электричества
  • программная установка параметров программирования: Vccp, Vvpp
  • поддержка изделий с напряжением питания от 1,8 В

Универсальный программатор для микросхем памяти, внутреннего ППЗУ микроконтроллеров и программируемой логики, производитель — «Фитон»

Программатор для начинающих

Программатор это программно аппаратное устройство, предназначенное для записи информации в постоянное запоминающее устройство (ПЗУ). Помимо записи, подобное устройство должно обеспечивать возможность считывания информации из ПЗУ микросхемы. Наряду с основными режимами записи и чтения, многие микросхемы имеют ряд дополнительных режимов: стирание, защита от чтения, защита от программирования и т.п. Для начинающих пользователей программатора, в материале «программирование микроконтроллеров для начинающих», представлена классификация устройств со встроенным ПЗУ. Принято считать, что устройство поддерживает микросхему, если оно:

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

Для выполнения своих функций, нормальный программатор, как минимум должен содержать:

— колодку, в которую можно вставить выбранную микросхему. Колодка должна обеспечивать электрический контакт с выводами микросхемы;

— интерфейс, позволяющий осуществлять ввод/вывод записываемой и считываемой информации;

— программно аппаратные драйвера, способные формировать и считывать логические уровни и сложные тактовые сигналы.

Классификация программаторов.

По типу поддерживаемых микросхем

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

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

Аппаратная часть наиболее простых программаторов, позволяющих запрограммировать микросхемы одной серии, как правило, представляет собой кабель и несколько резисторов, которые подключаются к одному из портов PC.

Универсальный программатор строится на базе универсальных аппаратных драйверов. Аппаратные драйвера подключаются к выводам колодки, и должны обеспечивать:
— подачу и считывание логических уровней;
— подачу сложных тактовых последовательностей в широком диапазоне частот;
— подачу напряжения в широком диапазоне и с высокой точностью.

В общем случае, чем более универсальны аппаратные драйвера, и чем больше их количество — тем более универсально подобное устройство.

По способу программирования микросхем

  1. Параллельный программатор. Программирование микросхем происходит в колодке программатора;
  2. Внутрисхемный, или ISP программатор. Программирование микросхем происходит непосредственно в устройстве пользователя. в режиме ISP (внутрисхемного) программирования, иногда его называют режимом последовательного программирования.

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

Колодка должна обеспечивать надежный электрический контакт между выводами микросхемы и аппаратными драйверами устройства. Как правило, универсальный программатор оснащается колодкой под DIP корпус микросхемы. Наиболее надежными и удобными для пользователя являются специальные колодки (сокетки) с нулевым усилием — (ZIF socket).

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

Внутрисхемный программатор. Внутрисхемное программирование возможно только тех микросхем, которые рассчитаны на данный режим. Как правило, подобные микросхемы имеют встроенные схемы, которые:
— из внешнего напряжения питания генерируют напряжения необходимые для программирования;
— обеспечивают коммуникацию с внутрисхемным прoгрaммaтором по последовательному интерфейсу (вариации протокола JTAG, SPI, UART).

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

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

Отличительной особенностью моделей серии ChipProg-xx является то обстоятельство, что помимо поддержания параллельного режима программирования (программирования в колодке), они поддерживают и режим внутрисхемного программирования.

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

Как правило, для подключения современного программатора к PC используется порт USB. Раньше для этих целей использовались LPT и/или COM порты. Некоторые модели могут работать и в автономном режиме, без подключения к PC. Например, ChipProg-ISP2 помимо обычного управления от PC допускает управление:
— кнопкой на корпусе;
— через Ethernet (с гальванической развязкой);
— от внешних программно аппаратных комплексов.
При этом, программируемая информация, все режимы и опции программирования хранятся на встроенной SD карте (до 256 проектов).

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

Как правило, универсальный программатор может работать одновременно не более чем с одной микросхемой. Обычно, для целей разработки, ремонта или обслуживания различных электронных устройств и блоков, этого вполне достаточно. Для тиражирования микросхем выпускаются специализированные промышленные копировщики. Так например, наш ChipProg-G41 снабжен четырьмя ZIF сокетками, что позволяет в асинхронном режиме программировать до 4 микросхем одновременно, а нутрисхемный промышленный ISP CPI2-Gxxxx позволяет в асинхронном режиме программировать до 14 микросхем одновременно. Другая возможность существенно увеличить скорость тиражирования партий микросхем – воспользоваться функциональными возможностями некоторых устройств. В частности, модели ChipProg-XX с USB интерфейсом предоставляют возможность мультипрограммирования. Что позволяет обеспечить программирование практически любого количества микросхем одновременно.

По дополнительным функциональным и сервисным возможностям

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

Программатор для начинающих.

Начинающему пользователю программатора — завтрашнему коллеге:

1. Если Вам нужно устройство для программирования ограниченной номенклатуры микросхем, и в далнейшем Вы не планируете заниматься программированием микросхем профессионально — скорее всего Вы сможете найти в интернете описание подходящего устройства, которое можно воспроизвести обладая даже начальными радиолюбительскими навыками. Удачи.

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

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

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

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