Программатор "ICProg 105c-a".
Описание основных функций и возможностей.

В этой статье я остановлюсь только на основных функциях и возможностях этой программы в отношении программирования PIC контроллеров PIC16F84 и PIC16F628, 628A, 628A-I/P.
ICProg 105c-a имеет в своем составе очень большую базу поддерживаемых  контроллеров, а так же FLASH и EEPROM, что немаловажно: с его помощью можно работать со смарт-картами   (имеется помощник программирования смарт-карт).

Cкачать IC Prog - программатор

Скачать программатор ICProg:

-----

IC Prog  программатор. Скачать программатор ICProg.

IC-prog программатор не требует инсталляции, достаточно распаковать архив, и программа готова к работе.
При своей простоте интерфейса и минимальном размере дистрибутива, (примерно 2,7МБ) IC-prog программатор заметно отличается своими возможностями и эргономичностью от других программаторов подобного типа.
Copyright 2003 Your Web Page Inc. All rights reserved.

------------------------------------
Меню:
Программаторы, программирование микросхем памяти. программаторы микроконтроллеров

Программаторы:
# - Pony Prog
# - ExtraPic
# - EZoFlash+
# - SilPROG
# - PRUF Plus
# - ICProg
На рисунке показан интерфейс ICProg и список поддерживаемых микроконтроллеров семейства PIC

После запуска программы, в большинстве случаев, автоматически происходит инициализация подключенного COM порта, т.е. тест можно не производить, хотя в меню (настройки) функция тестирования имеется.
По всей видимости, это сделано для нестандартных случаев.
Кстати, программа ICProg 105c-a работает так же и с физическими программаторами, поддерживающими LPT -порты. 
Далее, в меню настройки - опции, открываем вкладку программирование, и ставим галочку в окошке проверка при программировании.
Все остальное оставляем по умолчанию.
Хочу отметить, что, при использовании другого JDM программатора под COM порт, эти опции могут отличаться.
Например, в поле параметры сигналов, нужно будет поставить галочку в поле Инверсия Данных Ввода, а Инверсию Данных Вывода снять.
Далее, в окне выбора программируемых устройств, показанном на этом рисунке,

выбираем PIC контроллер, который будет программироваться.
Программируемый ПИК должен выбираться именно тот, который используется в действительности, т.е. если это PIC16F628A то именно его из перечня и выбираем, но никак не PIC16F628, иначе, при программировании, получим сообщение об ошибке типа "неизвестное уст-во".
Через меню файл, открываем подготовленный HEX файл.
После загрузки файла, в окне конфигурация, можно наблюдать состояние битов конфигурации, которые были определены в "шапке" программы.
Здесь показаны все установленные биты конфигурации, а также и тип тактового генератора м/контроллера: в большинстве случаев это будет стандартный кварцевый генератор (XT).
В строке состояния будет указываться тип используемого программатора, номер COM - порта к которому он подключен, а также тип выбранного программируемого устройства.

Строка состояния
После всех этих манипуляций, жмем кнопку    или клавишу F5, и ждем окончания процесса программирования.
Если при старте сообщения об ошибке нет, то, на практике, это, на 99,9%, означает, что процесс программирования пройдет успешно.
Сказанное выше, справедливо для операционных систем Windows 9x и Windows ME.
С Windows XP дело обстоит немного иначе, о чем будет сказано ниже.
Необходимо особо отметить, что в ICProg 105хх имеется очень полезный для программистов встроенный дизассемблер, с помощью которого можно преобразовать "прошивку" (файл с расширением .HEX)  в исходный ассемблерный код (файл с расширением .ASM), а это предоставляет возможность детального разбирательства с восстановленным таким образом текстом программы. 
Дизассемблирование происходит так: сначала стандартным образом открывается HEX файл, после чего щелкаем по кнопке   и получаем ASM файл.
Правда, для того чтобы в полной мере "расшифровать" текст ASM файла, полученного таким образом, и понять алгоритм работы программы, нужно быть программистом и обладать определенными навыками работы, плюс изрядно потрудиться. 
Что бы вернуться обратно к HEX файлу, достаточно нажать кнопку  .
Так  что, в этом отношении, все очень удобно и универсально.
Однако, на мой взгляд, есть у этой программы и некоторые недостатки.
К ним можно отнести:
-        довольно маленькое окно просмотра загружаемого кода, что очень не удобно, особенно для тех, кто привык работать с PonyProg.
-        скоростью программирования данный программатор также уступает PonyProg, вероятно, из-за большого количества предварительных и последующих проверок в процессе программирования. Проверенно на собственном опыте: машина у меня не слабенькая (1700 Atlon, мозгов 512М) и проигрыш в скорости был заметен невооруженным глазом. Хотя, может это и лучше. Как говорят, "маслом каши не испортишь".
И последнее, на чем хотелось бы заострить внимание, это то, что до последней версии указанной в заголовке статьи, ICProg 105xx некорректно работал с операционной системой Windows XP.
В ICProg 105c-a все эти недостатки исправлены, хотя, по этому поводу, еще встречается много кривотолков при обсуждении данной темы на форумах.
Остается только отметить необходимые условия и настройки программы для работы с Windows XP, которые были описаны на форумах и проверены лично мной: у меня, все работало без проблем.
В первую очередь, для тех, кто работает с XP, нужно, с сайта разработчика, помимо самой ICProg105c-a, скачать специальный драйвер (архив icprog - driver), который нужно распаковать в директорию, где находиться сама программа ICProg105c-a.
После запуска программы, в меню настройки - опции, на вкладке общие, устанавливаем опцию Вкл. /NT/2000/XP драйвер.
Далее система спросит, установить драйвер или нет, естественно соглашаемся, и она его находит автоматом, т.к. он лежит там же где и сама прога.
В настройках программатора, т.е. в меню настройки - программатор (F3), оставляем все без изменений.
В заключение хотелось бы отметить, что, благодаря именно этому программатору, мне удалось прошить PIC16F628A - I/P. Запрограммировать его в других программаторах, в том числе и в PonyProg,  было не возможно: при старте появлялось сообщение о неизвестном устройстве.
Если это сообщение игнорировать, то процесс программирования начинался, но в ПИК зашивались все нули.
Хотя в PonyProg 206 и включена поддержка PIC16F628, но это не PIC16F628A, то есть, вероятно, существует явная разница между этими ПИКами.

После выбора  этой опции, сообщение об ошибке будет выдаваться сразу же после ее возникновения, и не нужно будет дожидаться окончания полного цикла программирования и проверки данных, зашитых в ПИК, для того, чтобы получить это сообщение (в случае наличия ошибки).
Здесь же можно выставить и язык интерфейса.
Все остальное оставляем по умолчанию.  
Далее заходим снова в меню настройки - программатор или просто жмем клавишу F3 и попадаем в опции настройки физического программатора: в нашем случае это аппаратная часть программатора PonyProg.
Здесь все должно быть выставлено, как показано на картинке. Программатор PonyProg здесь представляется как (JDM)Programmer:
это что-то вроде универсального программатора, работающего с COM портом.
Имеется большой выбор поддерживаемых программаторов, работающих, как было сказано выше, и с LPT портами.
Proteus-Download.narod.ru

Сайт по программированию микроконтроллеров
Hosted by uCoz