Общие вопросы
Как изменить прошивку в программаторе на более новую?
Необходимо заменить прошивку контроллера AT89C52(в моделе Мастер AT89C51). Для этого нужно или имеющийся контроллер перешить на другом программаторе или, при наличии, дополнительной м.с AT89C52 запрограммировать ее и заменить на плате программатора. Микроконтроллеры Atmel применяются в моделях Мастер, Мастер+, Мастер Про, Мастер Лайт.
Для модели Мастер-02 порядок аналогичный за исключением того, что применяется микроконтроллер Winbond. Для программаторов Мастер-02 с микроконтроллерами W78E58B можно использовать программное обновление прошивки. Как это сделать см. ниже.
Как установить м/с в ZIF-панель?
Установка всех микросхем в DIP-корпусах(при условии, что м.с поддерживается без переходного адаптера) в ZIF-панель осуществляется с первой ножки(от рычажка ZIF-панели). Единственное исключение составляют м.с SEEPROM 93Cxxx и 25Cxxx, которые модель Мастер Про поддерживает без адаптера, но устанавливать их нужно с 11 ножки ZIF-панели. В Мастер-02 это ограничение устранено и все микросхемы, программируемые без применения адаптера, устанавливаются с 1 ножки.
Поддерживается ли скорость 115,2 кб/с?
Начиная с версии прошивки 4.30 добавлена поддержка скорости 115,2 кб/с. При замене прошивки на ранее выпущенных программаторах максимальная скорость часто не работает. Как правило, это можно исправить соединив базу КТ502 на входе с +5В через резистор 1 к , но выигрыш в скорости при этом будет примерно 20%. Реальное повышение скорости работы программатора в два раза можно получить за счет использования кварцевого резонатора с удвоеннной тактовой частотой и с поддержкой скорости 115,2 кб/с . Получить прошивку и рекомендации по модернизации программатора можно по запросу на masterra@mtu.ru.
Неправильно работает в программе встроенный шестнадцатеричный редактор.
Проявляется при работе программы под Windows 2000/XP. Ошибки в программе исправлены в новой версии программного обеспечения, начинаюя с версии 5.03. Необходимо загрузить новое ПО. Также может быть неверное отображение данных в редакторе при использовании в настройках экрана нестандартного шрифта. Необходимо установить в свойствах экрана размер шрифта по умолчанию (мелкий).
Ошибка при чтении некоторых HEX-файлов.
Проявляется при чтении HEX-файлов, в которых информация располагается не последовательно(по увеличению адреса), а случайным порядком. Необходимые доработки внесены в новой версии программного обеспечения, начинаюя с версии 5.03. Необходимо загрузить новое ПО.
Как узнать версию прошивки программатора?
В программе, начиная с версии 5.03 предусмотрена возможность узнать версию прошивки программатора по команде "Ctrl+Z". Если по этой команде, при подключенном программаторе будет ответ "Ошибка обмена", значит в программаторе прошивка не поддерживает такую команду( 4.28 или более ранняя)
Программное обновления прошивки.
Для программаторов Мастер-02 с микроконтроллерами W78E58B можно воспользоваться режимом программного обновления прошивки. Для этого сначала нужно убедиться в наличии запасного рабочего(прошитого) контроллера или возможности перешить контроллер на другом программаторе(это нужно для того чтобы не остаться без программатора, в случае возникновения ошибки при обновлении. Например, можно ошибиться при выборе новой прошивки или произойдет нештатная ситуация во время обновления). Далее нужно найти в паспорте устройства отметку о наличие такой возможности или убедиться в этом следующим образом:проверяем наличие м.с W78E58B, далее выдаем команду "Ctrl+R"для переключения на "boot"-ую прошивку и команду "Ctrl+Z, чтобы узнать версию прошивки. Ответ должен быть строго 4.32 для "boot"-ой прошивки или 4.31, 4.41 . для рабочей. Для возрата на рабочую прошивку нужно программатор сбросить по питанию. Если версия прошивки по "Ctrl+R" не меняется, значит либо контроллер не W78E58B, либо в него не записана резервная прошивка. Когда установили, что прошивка 4.32 имеется, можно выполнить само обновление: устанавливается скорость обмена 9600 б/с, считывается новая прошивка в буфер, сверяется контрольная сумма и выдается команда "Ctrl+U" для обновления. После завершения обновления, выдается сообщение о необходимости сбросить программатор по питанию.
Восстановление прошивки
На платах Мастер-02 USB с маркировкой mast2009 предусмотрена возможность для принудительной загрузки из области LDROM. В этом случае необходимо установить джампер на штыревые контакты, отмеченные LDROM, при отключенном программаторе. После подключения программатора выполняется загрузка программы из области LDROM. Затем считывается файл прошивки, сверяется правильность контрольной суммы прошивки и выполняется загрузка прошивки в основную область по команде Ctrl+U. После этого программатор отключается и джампер снимается. Подключив программатор нужно убедиться в нормальной загрузке прошивки по команде Ctrl+Z. Такая возможность отсутствовала в версии прошивки 4.32, поэтому контроллеры с такой версией прошивки необходимо обновить на внешнем программаторе. На платах с маркировкой mast2003 и mast2008 также можно предусмотреть возможность восстановления основной прошивки на самом программаторе, для этого в контроллере необходимо обновить прошивку LDROM до версии 5.02 и при необходимости обеспечить принудительную загрузку из области LDROM соединить на плате контакт P4.3 контроллера с землей при включении программатора.
Максимальная скорость обмена
Составляет 460 кб/с. Реализована в модели программатора "Мастер-x2 USB" за счет применения контроллера с удвоенной тактовой частотой Nuvoton W78E058D. Скорость работы программатора при чтении-программировании микросхем увеличивается до двух раз, что особенно актуально при работе с Flash-памятью(NOR, DATA,SPI, NAND) большого объема.
Как долго будет поддерживаться программатор "Мастер-xx"
Мы стараемся максимально продлять активную жизнь устройства за счет выпуска обновлений ПО и прошивки микроконтроллера. В настоящее время поддерживаются все модели с интерфейсом USB. Поддержка более ранних моделей (с внешним блоком питания и COM-портом) прекращена, при этом на сайте доступны последние версии прошивок для устаревших устройств.
Установка драйвера для подключения USB-программатора
При первом подключении программатора к USB-порту компьютера необходимо установить драйвер для контроллера FT232 с CD-диска (CDM v..). После установки драйвера должно появиться новое устройство - виртуальный COM-порт. Номер виртуального COM-порта должен быть в диапазоне от Com1 до Com4.
Как добавить поддержку новой микросхемы
В случае отсутствия поддержки нужной микросхемы необходимо направить запрос по адресу support@mprog.ru. Если в программаторе реализована поддержка аналога, добавление новой микросхемы выполняется расширением списка. При необходимости выполнения доработок, Вам будет сообщена возможность и ориентировочный срок реализации поддержки. При расширении списка поддерживаемых микросхем мы стараемся учитывать запросы клиентов, а также востребованность поддержки среди других пользователей.
Программирование FLASH, FWH, LPC
Адаптер для программирования i82802, SST49LF002/004
Для программирования i82802, SST49LF002/004 и аналогов требуется адаптер DIP32-PLCC32-FWH, который отличается от стандартного DIP32-PLCC32 следующим образом:контакты 25,27,29 нужно соединить с Vcc (32), а 26,28 с GND (16). В последней прошивке 4.41 предусмотрена возможность программировать i82802 с помощью универсального адаптера, но для других микросхем FWH и LPC Flash адаптер DIP32-PLCC32-FWH требуется.
Программирование Flash PMC PM29F002 ..
При программирования Flash PMC типа PM29F002.. возможны ошибки, которые проявляются в невозможности записать первый байт. Режимы чтение, стирание работают правильно, но не записывается первый байт. Эта проблема устраняется обновлением прошивки программатора.
Программирование boot block'а страничных Flash AT29C010, W29C020..
Такой тип микросхем имеет режим установки защиты boot block'а от перезаписи. Если он установлен, область boot block'а нельзя стереть и запрограммировать. Проверить установку защиты boot block'ат можно с помощью специальной команды программатора (отсутствует в ранних моделях).
Программирование страничных Flash W29EE011, SST29EE010..
Серии микросхем 29EExxx (также как и 29Cxxx) не требуют стирания микросхемы перед записью. Микросхема SST29EE010 имеет режим SDP и, если он включен должна программироваться как W29EE011.
Программирование Flash AMIC A29xxx..
Все режимы программирования микросхем AMIC полностью поддерживаются программаторами "Мастер-02" и "Мастер-32" . На "Мастер Про" для работы с ними нужно выбирать аналоги 29F00x, поддержка этих м.с не гарантируется.
Поддержка Flash AMD AM29Fxxx..
Для микросхем AMD серий 29Fxxx реализовано четыре разных режима программирования. Например, для 5V мискросхем 128кб объема памяти это: 29F010, 29F010B, 29F001, 29F100( базовые типы). При отсутствии микросхемы с списке следует ориентируясь по маркировке выбрать соответствующих базовый тип.
Стирание Flash i28F001, i28F002/004
Микросхемы i28F001/002/004 стираются по секторам и при выборе типа следует точно идентифицировать микросхему по расположению boot block'а ( в названии микросхемы символы B или T), т.к. они имеют различную схему размещения секторов.
Программирование Flash MX28F1000..
При стирании этого типа Flash возможно сообщение "Ошибка обмена". Сама операция стирания выполняется нормально, но в программе мало время ожидания завершения стирания. Устраняется обновлением программного обеспечения.
Поддержка Flash SST 28SF040
Этот тип микросхем поддерживается на всех моделях, начиная с "Мастер+" 4.28. Микросхема имеет специальный режим разрешения стирания и записи, в остальном соответствует 29F040.
Поддержка 3V Flash
Микросхемы Flash памяти с пониженным напряжением питания(серии 29LVxxx, 29BVxxx и т.д.) поддерживаютя только на моделях "Мастер-02" и "Мастер-32"
NAND Flash Samsung
Модель Мастер-02 (прошивка 4.61) поддерживает микросхемы Samsung K9F4008, K9F6408.. и их аналоги других производителей. Для программирования этих м.с необходимо использовать адаптер DIP32-TSOP2-44.
Поддержка 8/16-битных Flash
Модели Мастер Про и Мастер-02 поддерживают 8/16 битные м.с Flash памяти 28Fx00, 29Fx00 .. , причем Мастер Про поддерживает м.с с объемом памяти до 8 Мб (28F800,29F800), а модель Мастер-02 дополнительно поддерживает м.с с объемом памяти до 32 Мб (29F160, 29F320). При этом требуются переходники DIP40-TSOP48(для корпусов TSOP48) и DIP40-PSOP44 (для корпусов PSOP44). Чтение/запись информации в м.с осуществляется в режиме 8 бит. Начиная с прошивки 4.61 в Мастер-02 добавлен алгоритм ускоренной записи для м.с типа 29W800, 29W160, 29W320. При выборе режима ускоренной записи появляется признак 'Fast'. В адаптере DIP40-TSOP48 не используется сигнал WP (14 ножка), поэтому при работе с м.с типа 29DL163/29DL323 нельзя стереть/записать 'boot block'. Это ограничение можно снять, если на плате адаптера соединить 14 ножку панели TSOP48 c 40 ножкой ZIF-панели через резистор 1к.
Поддержка 16-битных Flash
Поддержка 16-битных м.с Flash-памяти с объемом памяти до 64 Мб реализована в моделе Мастер-02 (прошивка 4.71). Для этого требуется адаптер DIP32-TSOP48. Его можно также использовать для программирования Flash c 8/16 битным режимом (в т.ч. типа 29DL163/29DL323), только чтение/запись при этом выполняется словами (по 16 бит).
Программирование NAND Flash
В программаторе реализована поддержка NAND Flash (Samsung / k9f1g08u0d; Toshiba / tc58bvg0s3; Hynix / H27U1G8F2B и т.д.). Для корпусов TSOP-48 необходимо использовать адаптер DIP32-TSOP48 NAND. Сложность при прошивке микросхем NAND состоит в наличии "плохих" (bad block) блоков, из-за чего нельзя скопировать информацию из исходной микросхемы в программируемую "один в один". Необходимо при копировании скорректировать таблицу "bad block" в зависимости от их расположения в конкретной микросхеме. При этом существуют различные алгоритмы обработки "плохих" блоков, а также различные форматы таблицы (карты) "плохих" блоков. При необходимости запрограммировать NAND микросхему можно рекомендовать прошивку "загрузчика", вероятность нахождения "плохих" блоков в области загрузчика минимальна. Далее основную прошивку восстанавливать непосредственно в устройстве с помощью зазрузчика.
Программирование NAND Flash
В программаторе реализована поддержка NAND Flash (Samsung / k9f1g08u0d; Toshiba / tc58bvg0s3; Hynix / H27U1G8F2B и т.д.). Для корпусов TSOP-48 необходимо использовать адаптер DIP32-TSOP48 NAND. Сложность при прошивке микросхем NAND состоит в наличии "плохих" (bad block) блоков, из-за чего нельзя скопировать информацию из исходной микросхемы в программируемую "один в один". Необходимо при копировании скорректировать таблицу "bad block" в зависимости от их расположения в конкретной микросхеме. При этом существуют различные алгоритмы обработки "плохих" блоков, а также различные форматы таблицы (карты) "плохих" блоков. При необходимости запрограммировать NAND микросхему можно рекомендовать прошивку "загрузчика", вероятность нахождения "плохих" блоков в области загрузчика минимальна. Далее основную прошивку восстанавливать непосредственно в устройстве с помощью зазрузчика.
Поддержка Flash в корпусе Tsop56
Поддержка параллельных Flash до 256Мгб S29GL128, S29GL256 и т.д. добавлена в программатор "Мастер-02", для корпуса TSOP необходимо использовать адаптер Dip40-Tsop56.
EPROM, EEPROM ,SEEPROM
Программирование 16-битных EPROM
микросхемы EPROM с 16-битной организацией (27C1024, 27C2048, 27C4096..) поддерживаются через адаптер всеми моделями программаторов "Мастер", кроме Мастер-32. Адаптер EPROM-16 имеет панельки для корпусов DIP и PLCC, причем для программаторов "Мастер Про" и "Мастер-02" адаптеры EPROM-16 несколько отличается и имеют разную маркировку.
EPROM с электрическим стиранием
Микросхемы EPROM с электрическим стиранием (W27C512-W27C040(E)..) поддерживаются на всех моделях, начиная с Мастер+.
Программирование SEEPROM
Поддержка м.с SEEPROM 24Cxxx/93Cxx/25Cxxx реализована для наиболее распространенных фирм Atmel, Microchip, ST и т.д. Если нужная м.с отсутствует в списке, следует установить ее аналог среди известных производителей или попробовать запрограммировать ее выбрав похожий тип по названию. Для серии 93Cxx чтение/запись информации из м/с выполняется в режиме 8 бит или 16 бит. Для работы с м/с серии 93Cxx в режиме 16 бит необходимо установить тип 93CxxB(например, 93C46B и т.д.).
Программирование M35080
Программатор поддерживает запись микросхемы M35080 согласно документации, соответсвенно запись инкрементальной области идет только в увеличение. Алгоритмы стирания инкрементальной области не реализованы. В устройстве можно заменить микросхему на новую, предварительно считав информацию с оригинала.
Программирование к573рф2
Все модели программаторов "Мастер", в т.ч. современные модели с USB-интерфейсом, программируют отечественные ПЗУ к573рф2, рф5, рф4 и т.д.
Микроконтроллеры
Поддержка MCS-51
Все модели, кроме Мастер-32 поддерживаются разнообразные популярные микроконтроллеры семейства MCS-51 производства Atmel, Intel, Winbond, Phillips, AMD и т.д. Микросхемы в корпусе DIP-40 программируются в ZIF-панели программатора, для остальных типов корпусов имеются дополнительные адаптеры. Список поддерживаемых микросхем по моделям можно посмотреть на http://masterra.webzone.ru.
Поддержка AT89Cx051
Микроконтроллеры AT89Cx051 также поддерживаются всеми моделями программатора "Мастер"(кроме Мастер-32), только модель Мастер-02 программирует их без применения адаптера, тогда как для более ранних моделей(Мастер ПРО, Мастер Лайт, Мастер+, Мастер) требуется адаптер DIP40-DIP20.
Поддержка PIC-контроллеров
Программаторы "Мастер" поддерживают микроконтроллеры Microchip следующих серий: PIC16F84, PIC16F87x, PIC12Cxxx, PIC16F62x, PIC18Fxxx и т.д. Для всех корпусов PIC-контроллеров, в т.ч. DIP-корпусов требуются дополнительные адаптеры. Их можно заказать у нас или изготовить самостоятельно, требуется всего 5 сигналов. Распайка адаптеров для PIC-контроллеров находится на http://masterra.webzone.ru.
Последовательное программирование микросхем Attinyxx, Atmegaxxxx, AVR90Sxxxx
Все модели программаторов Мастер поддерживают последовательный режим программирования Atmegaxxxx, AVR90Sxxxx, Attiny.Для програмирования микросхем Attiny и Atmega, AVR в режиме последовательного программирования требуются дополнительные адаптеры, исключение составляют микросхемы Attiny11/12/15, AVR90S8515, Atmega8515, которые в моделе Мастер-02( начиная с версии прошивки 4.41) можно программированить в основной ZIF-панели без адаптера. Микросхемы Attiny(в корпусе DIP8) можно программировать также без адаптера на программаторе Мастер-32, при этом есть ограничение, программирование без переходника невозможно, если в микросхеме установлен режим использования внешнего генератора.
Параллельное программирование микросхем Atmegaxxxx, AVR90Sxxxx
Для програмирования микросхем Atmega и AVR в режиме параллельного программирования требуются дополнительные адаптеры. Исключение составляют микросхемы AVR90S2313/1200.. в корпусе DIP20, которые в моделе моделе Мастер-02( начиная с версии прошивки 4.41) можно программированить в основной ZIF-панели без адаптера.
Переходники для программирования AVR90Sxxxx , Atmegaxxxx
Для программирования микросхем Atmegaxxxx, AVR90Sxxxx, Attiny, как правило, для последовательного и параллельного режима требуются разные переходники. Кроме этого, для некоторых микросхем в одном случае переходник может требоваться, а для другого режима нет. Так например, для AVR90s2313/1200 при последовательном программировании требуется переходник, а для параллельного режима нет. Для AVR90s8515, Atmega8515 наоборот, при последовательном программировании не требуется переходник, а для параллельного требуется.
Микроконтроллеры Winbond
Микроконтролеры Winbond W78E51/52/54/58 поддерживаются начиная с модели Мастер+. Версия прошивки 4.30 Мастер Про(Лайт), а также модель Мастер-02 поддерживает новые контроллеры Winbond W78E54B/58B/516/W78LE54/W78LE58. Чтобы добавить их поддержку в более ранние модели программаторов(модель Мастер+, Про, Лайт), необходимо заменить прошивку и загрузить новое ПО.
Микроконтроллеры Philips
Микроконтроллеры Philips P89C58x2, P89C60x2.. поддерживаются только моделью Мастер-02 начиная с прошивки 4.61, добавлять поддержку этих м.с в модель Мастер Про не планируется.
Самостоятельное расширение списка AVR
Все поддерживаемые типы AVR разделяются на классы: AT90S, Atmega, Attiny, причем окончание –I в названии м.с определяет последовательный алгоритм программирования. При отсутствии окончания –I в названии м.с используется параллельный режим программирования. Различные алгоритмы программирования определяются с помощью перечня базовых типов в файле prgplus.lst. Например, для Atmega8 строка параметров имеет следующий вид: 6 45 8 3 1 5 16 1 1 1 1 0 0 1 1 1 16 0 0 0 1 0 0 1 0 1 ATmega8 93 07 'SPI AVR'; Первый параметр, 6 – AVR, следующий – 45, определяет базовый тип для всего семейства Atmega. Шестой параметр определяет конфигурацию Fuse битов, порядковый номер строки в файле prgatmel.lst Пример строки для AtMega8: E1D9 CKSEL0,CKSEL1,CKSEL2,CKSEL3,SUT0,SUT1,BODEN,BODLEVEL,BOOTRST,BOOTSZ0,BOOTSZ1,EESAVE,CKOPT,SPIEN,WDTON,RSTDISBL AtMega8 Важен также 17 параметр, тип используемых адаптеров для разных корпусов, в данном случае число 16, порядковый номер строки в файле prgadapt.lst Dip :DIP20-Atmega8;TQFP:DIP40-TQFP32-mega8 16 mega8 Остальные параметры определяют объем Flash и Data-памяти, поддержку различных режимов при работе с программатором. Таким образом, добавление м.с возможно в случаях, когда аналогичные типы уже поддерживаются, но необходимо изменить объем памяти, конфигурацию Fuse-битов, либо корпус м.с. Для этого нужно скопировать строку с ближайшим аналогом и изменить название м.с, а также скорректировать отличающиеся параметры. При необходимости можно добавить новую строку в файл prgatmel.lst, добавив описание Fuse-битов, а также в файл prgatmel.lst, задав набор адаптеров.
Как считать информацию из контроллера с установленным битом защиты
С помощью программатора нельзя считать информацию из памяти микроконтроллера с установленным "битом защиты". Иногда в результате ошибок на этапе проектирования микросхемы защита микроконтроллера оказывается несовершенна, но такие контроллеры не применяются в серийных изделиях для защиты авторских прав разработчика микропрограммы.
Режим In-System Programming
Программатор поддерживает программирование микросхемы в последовательном режиме (режим In-System Programming), в том числе, и в устройстве пользователя, при выполнении определенных условий:
- микросхема допускает данный режим программирования;
- программатор поддерживает данный режим программирования;
- устройство пользователя предусматривает подключение данного режима.