Прошивка PIC микроконтроллеров с "нуля".

Итак, пришло время изучать микроконтроллеры, а потом и их программировать, а так же хотелось собирать устройства на них, схем которых сейчас в интернете ну просто море. Ну нашли схему, купили контроллер, скачали прошивку….а прошивать то чем??? И тут перед радиолюбителем, начинающим осваивать микроконтроллеры, встает вопрос – выбор программатора! Хотелось бы найти оптимальный вариант, по показателю универсальность — простота схемы — надёжность. «Фирменные» программаторы и их аналоги были сразу исключены в связи с довольно сложной схемой, включающей в себя те же микроконтроллеры, которые необходимо программировать. То есть получается «замкнутый круг»: что бы изготовить программатор, необходим программатор. Вот и начались поиски и эксперименты! В начале выбор пал на PIC JDM. Работает данный программатор от com порта и питается от туда же. Был опробован данный вариант, уверенно запрограммировал 4 из 10 контроллеров, при питании отдельном ситуация улучшилась, но не на много, на некоторых компьютерах он вообще отказался что либо делать да и защиты от «дурака» в нем не предусмотрено. Далее был изучен программатор Pony-Prog. В принципе, почти тоже самое что и JDM.Программатор «Pony-prog», представляет очень простую схему, с питанием от ком-порта компьютера, в связи с чем, на форумах, в Интернете, очень часто появляются вопросы по сбоям при программировании того, или иного микроконтроллера. В результате, выбор был остановлен на модели «Extra-PIC». Посмотрел схему – очень просто, грамотно! На входе стоит MAX 232 преобразующая сигналы последовательного порта RS-232 в сигналы, пригодные для использования в цифровых схемах с уровнями ТТЛ или КМОП, не перегружает по току COM-порт компьютера, так как использует стандарт эксплуатации RS232, не представляет опасности для COM-порта.Вот первый плюс!
Работоспособен с любыми COM-портами, как стандартными (±12v; ±10v) так и с нестандартными COM-портами некоторых моделей современных ноутбуков, имеющих пониженные напряжения сигнальных линий, вплоть до ±5v – еще плюс! Поддерживается распространёнными программами IC-PROG, PonyProg, WinPic 800 (WinPic800) и другими – третий плюс!
И питается это все от своего собственного источника питания!
Было решено – надо собирать! Так в журнале Радио 2007 №8 был найден доработанный вариант этого программатора. Он позволял программировать микроконтроллеры в двух режимах.
Известны два способа перевода микроконтроллеров PICmicro в режим программирования:
1.При включённом напряжении питания Vcc поднять напряжение Vpp (на выводе -MCLR) от нуля до 12В
2.При выключенном напряжении Vcc поднять напряжение Vpp от нуля до 12В, затем включить напряжение Vcc
Первый режим — в основном для приборов ранних разработок, он накладывает ограничения на конфигурацию вывода -MCLR, который в этом случае может служить только входом сигнала начальной установки, а во многих микроконтроллерах предусмотрена возможность превратить этот вывод в обычную линию одного из портов. Это еще один плюс данного программатора. Схема его приведена ниже:

Крупнее
Все было собрано на макетке и опробовано. Все прекрасно и устойчиво работает, глюков замечено небыло!
Была отрисована печатка для этого программатора.
depositfiles.com/files/mk49uejin
все было собрано в открытый корпус, фото которого ниже.


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

Итак, программатор собран, кабель тоже, наступил черед проверки всего этого хозяйства на предмет работоспособности, поиск глюков и ошибок.
Сперва наперво устанавливаем программу IC-prog, которую можно скачать на сайте разработчика www.ic-prog.com, Распакуйте программу в отдельный каталог. В образовавшемся каталое должны находиться три файла:
icprog.exe — файл оболочки программатора.
icprog.sys — драйвер, необходимый для работы под Windows NT, 2000, XP. Этот файл всегда должен находиться в каталоге программы.
icprog.chm — файл помощи (Help file).
Установили, теперь надо бы ее настроить.
Для этого:
1.(Только для Windows XP): Правой кнопкой щёлкните на файле icprog.exe. «Свойства» >> вкладка «Совместимость» >> Установите «галочку» на «Запустить программу в режиме совместимости с:» >>выберите «Windows 2000».
2.Запустите файл icprog.exe. Выберите «Settings» >> «Options» >> вкладку «Language» >> установите язык «Russian» и нажмите «Ok».
Согласитесь с утверждением «You need to restart IC-Prog now» (нажмите «Ok»). Оболочка программатора перезапустится.
Настройки" >> «Программатор

1.Проверьте установки, выберите используемый вами COM-порт, нажмите „Ok“.
2.Далее, „Настройки“ >> „Опции“ >> выберите вкладку „Общие“ >> установите „галочку“ на пункте „Вкл. NT/2000/XP драйвер“ >> Нажмите „Ok“ >> если драйвер до этого не был устновлен на вашей системе, в появившемся окне „Confirm“ нажмите „Ok“. Драйвер установится, и оболочка программатора перезапустится.
Примечание:
Для очень „быстрых“ компьютеров возможно потребуется увеличить параметр „Задержка Ввода/Вывода“. Увеличение этого параметра увеличивает надёжность программирования, однако, увеличивается и время, затрачиваемое на программирование микросхемы.
3.»Настройки" >> «Опции» >> выберите вкладку «I2C» >> установите «галочки» на пунктах: «Включить MCLR как VCC» и «Включить запись блоками». Нажмите «Ok».
4.«Настройки» >> «Опции» >> выберите вкладку «Программирование» >> снимите «галочку» с пункта: «Проверка после программирования» и установите «галочку» на пункте «Проверка при программировании». Нажмите «Ok».
Вот и настроили!
Теперь бы нам протестировать программатор в месте с IC-prog. И тут все просто:
Далее, в программе IC-PROG, в меню, запустите: Настройки >> Тест Программатора

Перед выполнением каждого пункта методики тестирвания, не забывайте устанавливать все «поля» в исходное положение (все «галочки» сняты), как показано на рисунке выше.
1.Установите «галочку» в поле «Вкл. Выход Данных», при этом, в поле «Вход Данных» должна появляться «галочка», а на контакте (DATA) разъёма X2, должен установиться уровень лог. «1» (не менее +3,0 вольт). Теперь, замкните между собой контакт (DATA) и контакт (GND) разъёма X2, при этом, отметка в поле «Вход Данных» должна пропадать, пока контакты замкнуты.
2.При установке «галочки» в поле «Вкл. Тактирования», на контакте (CLOCK) разъёма X2, должен устанавливаться уровень лог. «1». (не менее +3,0 вольт).
3.При установке «галочки» в поле «Вкл. Сброс (MCLR)», на контакте (VPP) разъёма X3, должен устанавливаться уровень +13,0… +14,0 вольт, и светиться светодиод D4 (обычно красного цвета).Если переключатель режимов поставить в положение 1 то будет светится светодиод HL3
Если при тестировании, какой-либо сигнал не проходит, следует тщательно проверить весь путь прохождения этого сигнала, включая кабель соединения с COM-портом компьютера.
Тестирование канала данных программатора EXTRAPIC:
1. 13 вывод микросхемы DA1: напряжение от -5 до -12 вольт. При установке «галочки»: от +5 до +12 вольт.
2. 12 вывод микросхемы Da1: напряжение +5 вольт. При установке «галочки»: 0 вольт.
3. 6 вывод микросхемы DD1: напряжение 0 вольт. При установке «галочки»: +5 вольт.
3. 1 и 2 вывод микросхемы DD1: напряжение 0 вольт. При установке «галочки»: +5 вольт.
4. 3 вывод микросхемы DD1: напряжение +5 вольт. При установке «галочки»: 0 вольт.
5. 14 вывод микросхемы DA1: напряжение от -5 до -12 вольт. При установке «галочки»: от +5 до +12 вольт.
Если все тестирование прошло успешно, то программатор готов к эксплуатации.
Для подключения микроконтроллера к программатору можно использовать подходящие панельки или же сделать адаптер на основе ZIF панельки (с нулевым усилием прижатия), например как здесь radiokot.ru/circuit/digital/pcmod/18/.
Теперь несколько слов про ICSP — Внутрисхемное программирование
PIC-контроллеров.
При использовании ICSP на плате устройства следует предусмотреть возможность подключения программатора. При программировании с использованием ICSP к программатору должны быть подключены 5 сигнальных линий:
1. GND (VSS) — общий провод.
2. VDD (VCC) — плюс напряжение питания
3. MCLR' (VPP)- вход сброса микроконтроллера / вход напряжения программирования
4. RB7 (DATA) — двунаправленная шина данных в режиме программирования
5. RB6 (CLOCK) Вход синхронизации в режиме программирования
Остальные выводы микроконтроллера не используются в режиме внутрисхемного программирования.
Вариант подключения ICSP к микроконтроллеру PIC16F84 в корпусе DIP18:

1.Линия MCLR' развязывается от схемы устройства перемычкой J2, которая в режиме внутрисхемного программирования (ICSP) размыкается, передавая вывод MCLR в монопольное управление программатору.
2.Линия VDD в режиме программирования ICSP отключается от схемы устройства перемычкой J1. Это необходимо для исключения потребления тока от линии VDD схемой устройства.
3.Линия RB7 (двунаправленная шина данных в режиме программирования) изолируется по току от схемы устройства резистором R1 номиналом не менее 1 кОм. В связи с этим максимальный втекающий/стекающий ток, обеспечиваемый этой линией будет ограничен резистором R1. При необходимости обеспечить максимальный ток, резистор R1 необходимо заменить (как в случае c VDD) перемычкой.
4.Линия RB6 (Вход синхронизации PIC в режиме программирования) так же как и RB7 изолируется по току от схемы устройства резистором R2, номиналом не менее 1 кОм. В связи с этим максимальный втекающий/стекающий ток, обеспечиваемый этой линией будет ограничен резистором R2. При необходимости обеспечить максимальный ток, резистор R2 необходимо заменить (как в случае с VDD) перемычкой.
Расположение выводов ICSP у PIC-контроллеров:

Эта схема только для справки, выводы программирования лучше уточнить из даташита на микроконтроллер.
Теперь рассмотрим прошивку микроконтроллера в программе IC-prog. Будем рассматривать на примере конструкции вот от сюда rgb73.mylivepage.ru/wiki/1952/579
Вот схема устройства

вот прошивка
Прошиваем контроллер PIC12F629. Данный микроконтроллер для своей работы использует константу osccal — представляет собой 16-ти ричное значение калибровки внутреннего генератора МК, с помощью которого МК отчитывает время при выполнении своих программ, которая записана в последней ячейке данных пика. Подключаем данный микроконтроллер к программатору.
Ниже на сриншоте красными цифрами показана последовательность действий в программе IC-prog.

1. Выбрать тип микроконтроллера
2. Нажать кнопку «Читать микросхему»
В окне «Программный код» в самой последней ячейке будет наша константа для данного контроллера. Для каждого контроллера константа своя!Не сотрите ее, запишите на бумажку и наклейте ее на микросхему!
Идем далее

3. Нажимаем кнопку «Открыть файл...», выбираем нашу прошивку. В окне программного кода появится код прошивки.
4. Спускаемся к концу кода, на последней ячейке жмем правой клавишей мыши и выбираем в меню «править область», в поле «Шестнадцатеричные» вводим значение константы, которую записали, нажимаем «ОК».
5. Нажимаем «программировать микросхему».
Пойдет процесс программирования, если все прошло успешно, то программа выведет соответствующее уведомление.
Вытаскиваем микросхему из программатора и вставляем в собранный макет. Включаем питание. Нажимаем кнопку пуск.Ура работает! Вот видео работы мигалки
video.mail.ru/mail/vanek_rabota/_myvideo/1.html
С этим разобрались. А вот что делать если у нас есть файл исходного кода на ассемблере asm, а нам нужен файл прошивки hex? Тут необходим компилятор. и он есть — это Mplab, в этой программе можно как писать прошивки так и компилировать. Вот окно компилятора

Устанавливаем Mplab
Находим в установленной Mplab программу MPASMWIN.exe, обычно находится в папке — Microchip — MPASM Suite — MPASMWIN.exe
Запускаем ее. В окне (4) Browse находим наш исходник (1) .asm, в окне (5) Processor выбираем наш микроконтроллер, нажимаем Assemble и в той же папке где вы указали исходник появится ваша прошивка .HEX Вот и все готово!
Надеюсь эта статья поможет начинающим в освоении PIC контроллеров! Удачи!

142 комментария

avatar
Мне статья очень понравилась все подробно в картинках разложено по полочкам, жаль прочел немного с опозданием т.к. стадию с изготовлением PIC JDM и Pony-Prog и их глюками я уже с грехом пополам прошел… :). Думаю начинающим и не только Ваша работа очень пригодиться., так держать буду ждать продолжения!
Спасибо Вам большое!!!
  • JDI
  • 0
avatar
Буду стараться!
avatar
скажите пожалуйста — будет работать данный программатор с виртуальным СОМ (микросхема PL2303)?
Было ли опробовано? Возможно ли опробовать?
  • BWS
  • 0
avatar
Работать будет не стабильно или вообще не заработает, почему… подробно можно почитать здесь forum.ixbt.com/topic.cgi?id=48:4133
avatar
даже наличие MAX232 не помогает, так как там временные интервалы при программировании не выдерживаются
avatar
а выставление задержек в программах и настройках порта тоже не поможет?
значит только с реальным портом можно?
avatar
Выставление задержек не помогает, переходник все равно вносит свои задержки, которые предугадать невозможно… в этом случае USB программатор можно сделать, есть довольно простые схемы
avatar
я только встречал с микроконтроллером, который опять же нужно запрограммировать…
avatar
ну тут да, у меня например на стационарном компьютере экстрапик трудится, а на работе ноут, там usb программатор стоит, который и прошивался экстрапиком
avatar
спасибо) соберу ваш… буду мучить) потом соберу usb! прошью где нибудь…
avatar
экстрапик программатор очень удачный, в интернете отзывы о нем только положительные, да и пригодится еще если микросхемы последовательной памяти прошивать понадобиться!
avatar
Статья хорошая, все подробно расписано. Только вот вступительное слово кажется знакомым. Где-то на просторах интернета встречалось уже.
avatar
Ну вступительное слово может быть с моего личного сайта, вот ссылка radiosxema.jimdo.com/%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D1%8B/%D0%BF%D1%80%D0%BE%D1%81%D1%82%D0%BE%D0%B9-%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B0%D1%82%D0%BE%D1%80-extra-pic/, тут статья более подробная, материал собирался с различных сайтов и был скомпилирован в одну статью, так что ничьих авторских прав я думаю не задел!
avatar
А зачем ПИК то юзать? когда есть Atmega8, Attiny32 ну и т.д и т.п. С ними проще, +есть программаторы на USB… программа — AVRstudios, язык — С… я так считаю…
avatar
Странный вопрос. ПИКИ тоже неплохи, тоже есть программаторы USB… программа MPLAB IDE — www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en019469&part=SW007002, на языке Си можно писать программы под любые контроллеры, не только под авр. Статья для тех кто хочет освоить пики
avatar
Абсолютно согласен. Не замечал преимуществ AVR перед PIC-ами. Шило на мыло.
у C8051 от силабса прекрасная аналоговая часть, низкое потребление и классный кроссбар. У C8051 от ADI аналоговая часть просто великолепная. ST8 имеют весьма интересный наборчик на борту и стоят две копейки. Мотороловские процессоры тоже радуют низким потреблением и невысокой ценой.
Микрочипы снабдили прекрасными примерами радиолюбительскую братию, отчего и стали несказанно популярны в любительской среде.
Atmel — популяризовал Flash память на борту контроллера, чем покорил сердца любителей и начинающих разработчиков.
Поэтому, каждый из контроллеров хорош в своем применении.
avatar
Поэтому, каждый из контроллеров хорош в своем применении.
абсолютно согласен!
avatar
А чем данная схема отличается от этой miliamper.narod.ru/Extra-PIC/Extra-PIC.htm
И какой плюс выбора способа программирования?
Что посоветуете выбрать?
avatar
Схемы в принципе равнозначные. Второй режим в описываемом программаторе необходим для контроллеров старых выпусков, у меня были случаи когда прошивались только во втором режиме
avatar
собирайте что в моей статье, деталей не так уж и много, а второй режим мож когда и пригодится!
avatar
буду пробовать)
avatar
Удачи!
avatar
Пасиб)
avatar
avatar
Еще раз повторяю — все эти схемы равнозначны, все работают отлично, различия в них минимальны, какая вам приглянулась, ту и повторяйте!
avatar
А как насчет других микроконтроллеров?
avatar
Для AVR лучше собрать отдельный программатор, дорабатывают и экстра пик, но иногда возникают глюки при прошивке… я для AVR на данный момент использую самодельный STK200/300, в проекте собрать USB AVR910
avatar
я на днях (недавна) получил willem true usb GQ-4x www.mcumall.com/comersus/store/comersus_dynamicIndex.asp
но чета не врублюса,-как он работает как JTAG...?
са сваим софтам www.mcumall.com/comersus/store/mcumall_download.asp? или с софтам идущем к опр. проге jitag -овской…
— за 120 с мелачью взял тама (канада),-пока до мене прилетель,-уже в 160 $ встал…
avatar
инструкций ивошняя (GQ-4x):- www.mcumall.com/downloads/download.asp?DownloadID=51
avatar
навеное, если он как JITAG исползуется, то вроди как железо, а прога навеное с житага надо исползоват..?
avatar
Та все там просто… выбрали тип контроллера, который будет шиться по интерфейсу jtag, соединили его с программатором, как показано на странице 16
мануала и вперед… он сам все определяет и автоматом шьет по технологии jtag, дали мне таким как то поиграться, так я спокойно прошивал
avatar
а если напр. процессора, каторый нужно подцепить и прошит по JITAG -нет в списка поддержки, то-неполуч. работат с таким процессорам?
avatar
скорее всего да
avatar
thank's mr.Sayron!
avatar
Все-таки како-то адаптер они пихают в ZIF колодка.
Его отд. продают тама (Canada) и на UA (Ukraine)
видео и форуми (канатский и украина-отд.вилема)
www.mcumall.com/comersus/store/comersus_viewItem.asp?idProduct=4310
www.youtube.com/watch?v=RBLEZNL3L2Q
www.mcumall.com/forum/forum.asp?FORUM_ID=9
www.willem-ua.com/shop/16/desc/adapter-jtag-spi-adp-056
avatar
Все-таки како-то адаптер они пихают в ZIF колодка.
Его отд. продают тама (Canada) и на UA (Ukraine)
видео и форуми (канатский и украина-отд.вилема)
www.mcumall.com/comersus/store/comersus_viewItem.asp?idProduct=4310
www.youtube.com/watch?v=RBLEZNL3L2Q
www.mcumall.com/forum/forum.asp?FORUM_ID=9
www.willem-ua.com/shop/16/desc/adapter-jtag-spi-adp-056
(для програмированию по джитаг сустем)
avatar
так купите какие проблемы то!
avatar
А что скажете насчет PonyProg ver2.2?
avatar
ссылочку дайте с описанием, а то я как то не очень слежу за развитием пони
avatar
avatar
в принципе схемы то эти все рабочие, но возникают иногда проблемы взаимодействия с ком портом, потому, что преобразование логических уровней сигналов на выходах порта в требуемые для программирования осуществляется простейшим способом — с помощью ограничителей напряжения из резисторов и стабилитронов, а у резисторов и стабилитронов есть свой разброс параметров, следовательно требуемые уровни могут и не выдерживаться, тогда начинаются сыпаться всякие ошибки, типа программа не может обнаружить контроллер или сам программатор, можно конечно подобрать все эти элементы… но В RS-232 используются два уровня сигналов: логические 1 и 0. Логической 1 соответствуют отрицательные уровни напряжения, а логическому 0 — положительные. Поэтому просто на делителях сложно получить необходимые уровни… для этих целей и придумали микросхемы типа MAX232 которые преобразуют уровни RS232 в уровни TTL… проще говоря если настроить этот программатор с одним ком портом, то он то работать будет, а если подключить к другому компу, то мож и не заработает, так как уровни RS232 могут отличаться на разных мат.платах…
avatar
ясненько, разъяснил
avatar
если возникнут вопросы еще, пиши!
avatar
Просьба, проверь работает ли твой программатор с программой PonyProg?
avatar
И заодно посмотри, что можешь сказать? aes.at.ua/publ/programmator_dlja_avr_pic_i2ceprom/23-1-0-224
avatar
ну этот знаю, работает, переделан немного под авр
avatar
У вас был опыт с металлоискателями? в моем случае кощей 5.Я никогда не перепрашивал, опыт в программировании есть, но вот чтоб сразу изменить прошивку и перепрошить – страшно… Есть желание у меня покопаться в его прошивке…… убить можно процессор прошивкой???
avatar
На сколько я помню в 5 кощее стоит Atmega 16? прошивкой самой процессор убить сложно, а вот неправильно выставленными фьюзами очень как можно
avatar
у меня не получается поставить точку к (прямой доступ к портам) вылетает ошибка Previleged instruction Даже программатор не подключал еще.
avatar
скорее всего неверно выбран номер com порта
avatar
Не понял, а в Ic-Prog программе еще надо установить порт com(к каторому подключен программатор) в смарт карте?
avatar
причем тут смарт карта????
а в Ic-Prog программе еще надо установить порт com(к каторому подключен программатор)
Ну, конечно, нужно указать правильный номер com порта, к которому подключен программатор… без этого никак… номер com порта относится к программатору, а не к выбранному типу прошиваемой микросхемы
avatar
установил
все равно выскакивает ошибка по адресу 0000H
avatar
А, если галочки снять ( в проверки до программирования, и проверки после программирования ) то ошибка не выскакивает, ну и прошивка то же не идет
avatar
ищите косяк в программаторе или подключение к контроллеру… сперва протестируйте программатор Настройки >> Тест Программатора… в статье описано как тестировать… проверьте правильность распайки com кабеля-самая частая ошибка, неправильно распаивают
avatar
программатор на другом компе работает, на моем не хочет.
avatar
попробуйте номера com портов поменять
avatar
а, как понизить скорость компа, под программу IC-Prog
avatar
попробуйте подвигать ползунок задержка ввода/вывода
avatar
да это я делал.Эффекта не какого
avatar
проведите тест программатора и выясните каких сигналов нет, какие есть
avatar
обычно такие ошибки лезут, когда железо программатора глючит, у меня такая фигня была, когда в кабеле обрыв был
avatar
может com порт чем-то другим занят, мож его в биосе включить надо (например — Peripheral-> Com(X)->Enable, где X — номер порта)
avatar
сом порт у меня один, и он не чем кроме программатора не занят.Я на программе PONI шил ним 24 93 серии
avatar
кабель экранированный.Я проверил обрывов нет
avatar
Тест программатора я провел.Значит при записи на MCLR -13 вольт
напряжение питания на 14 выв VCC 5 вольт (при записи и чтении не меняеться)
У меня просто впечатление, что микросхемы эти, что в железе стоят они глючат сами по себе...?
avatar
а вот по этой методике тестировали
Далее, в программе IC-PROG, в меню, запустите: Настройки >> Тест Программатора

Перед выполнением каждого пункта методики тестирвания, не забывайте устанавливать все «поля» в исходное положение (все «галочки» сняты), как показано на рисунке выше.
1.Установите «галочку» в поле «Вкл. Выход Данных», при этом, в поле «Вход Данных» должна появляться «галочка», а на контакте (DATA) разъёма X2, должен установиться уровень лог. «1» (не менее +3,0 вольт). Теперь, замкните между собой контакт (DATA) и контакт (GND) разъёма X2, при этом, отметка в поле «Вход Данных» должна пропадать, пока контакты замкнуты.
2.При установке «галочки» в поле «Вкл. Тактирования», на контакте (CLOCK) разъёма X2, должен устанавливаться уровень лог. «1». (не менее +3,0 вольт).
3.При установке «галочки» в поле «Вкл. Сброс (MCLR)», на контакте (VPP) разъёма X3, должен устанавливаться уровень +13,0… +14,0 вольт, и светиться светодиод D4 (обычно красного цвета).Если переключатель режимов поставить в положение 1 то будет светится светодиод HL3
Если при тестировании, какой-либо сигнал не проходит, следует тщательно проверить весь путь прохождения этого сигнала, включая кабель соединения с COM-портом компьютера.
Тестирование канала данных программатора EXTRAPIC:
1. 13 вывод микросхемы DA1: напряжение от -5 до -12 вольт. При установке «галочки»: от +5 до +12 вольт.
2. 12 вывод микросхемы Da1: напряжение +5 вольт. При установке «галочки»: 0 вольт.
3. 6 вывод микросхемы DD1: напряжение 0 вольт. При установке «галочки»: +5 вольт.
3. 1 и 2 вывод микросхемы DD1: напряжение 0 вольт. При установке «галочки»: +5 вольт.
4. 3 вывод микросхемы DD1: напряжение +5 вольт. При установке «галочки»: 0 вольт.
5. 14 вывод микросхемы DA1: напряжение от -5 до -12 вольт. При установке «галочки»: от +5 до +12 вольт.
Если говорили, что на другом компе работает, то вряд ли микрухи глючат… где-то все-таки в портах загвоздка…
avatar
а, что есть другая методика?
avatar
да нет, нету, а по этой все сигналы в норме?
avatar
Вы не поверите у меня тоже все сигналы в норме тесты проходит а шиться не хочит.Я не думал, что эта ошибка может задать такой тупик
avatar
на другом компе все нормально.Программатор тот же.
avatar
а какой контроллер пытаетесь прошить?
avatar
PIC 16F628
avatar
вывод PGM контроллера на общий провод через 1 к резистор садили?
avatar
Я забыл дописать букву А в конце.Pic16F628A.
Да нет.По идеи и так должно быть.Попробую отпишусь.Это 10 выв пика на землю?
avatar
да, через 1 килоомный резистор
avatar
Ладно.Спасибо.Довайте до завтра.А то голова уже не варит от этого.Я завтра попробую и отпишусь.
avatar
ну, удачи, до завтра!!!
avatar
Попробовал через 10 выв эффект тот же
И тут меня осенило: На том компе, что прошивает установлен винд 98, а на моем XP
Вопрос можно получить драйвер под XP но, чтобы оболочка программы SI-Prog не изменилась.
avatar
И еще один вдогонку точку где правильно уст
В прямом доступе к портам или в испльзовании драйвер WINDOWS?
avatar
ставите точку на использовании драйвера WINDOWS
avatar
И тут меня осенило: На том компе, что прошивает установлен винд 98, а на моем XP
вот с этого надо было и начинать, вот ссылка на Ic-prog с драйвером под виндовс ХП, у меня на хп работает четко
avatar
у меня тоже стоит Icprog 105d
а другого нету? abc например.
avatar
может перегрузить программу.
Т.е удалить ее вообще а потом по новой загрузить?
avatar
вот есть 106С пробуйте, драйвер возьмите тот же самый, что и в 105b стоит
avatar
Прогу переустанавливать?
Что-бы с драйверов не получилось каши
Этот на тот и т.д
avatar
да ic-prog без установки работает, а драйвер должен лежать в папке, где запускающий программу файл находится
avatar
а можно узнать данные вашего компа?
интересует память и материнка.
avatar
У меня память 1.72Ггц 632Мв Озу
может память не успевает…
avatar
у меня на работе комп с 512 метрами озу, и тактовой 920 Мегагерц проц… все работает
avatar
может у вас порт дохлый?
avatar
Ллюди помогите с программматором тест прошёл как описано выше всё нормально при прошивке нового контроллера вроде прошил а при повторном стирании и прошивание выдаёт ошибку
avatar
а ошибка какая?
avatar
ошибка программирования кода по адресу 000h
avatar
контроллер какой?
avatar
16f873
avatar
а после такой прошивки, контроллер читается?
avatar
вчера взял все свои прибамбасы на работу и попробывал там.там всё прошилось с первого раза но при проверке опять выдавал ошибку что нельзя произвести чтение садреса 000h. сегодня попробывал опять на своём компе стал и прошивать и проверку после проходит ипишет что всё ок но если после этого запускаеш читать микросхему то считывает везде 3fff.
avatar
попробуйте в программе winpic800 прошить, взять можно тут
avatar
Остался без COM порта, только USB.Порекомендуйте, плиз, проверенное схемное решение для прошивки PIC пофункциональнее.Спасибо.
avatar
Тоже спаял по схеме, но программатор не проходит тест, на Date не появляется логическая единица, там постоянно 0.9в, также нет галочки в поле «Вход Данных», куда копать?
avatar
проверьте сперва — 13 вывод микросхемы DA1: напряжение от -5 до -12 вольт. При установке «галочки»: от +5 до +12 вольт, потом 12 вывод микросхемы Da1: напряжение +5 вольт. При установке «галочки»: 0 вольт, потом 6 вывод микросхемы DD1: напряжение 0 вольт. При установке «галочки»: +5 вольт… еще проверить исправность и правильность установки VD5… таким образом проверите весь канал DATA
avatar
Проверил нашёл одну соплю(не датравил), Галочка загорается сразу, и сбрасывается только при перемыкании даты если не стоит галачка на вкл вых данных, если включить то будет гореть всегда перемыкай не перемыкай, без первой галочки если перемыкать, то она наоборот загарается, а размыкании тухнет, на 12 ноге от -8в до +8(от галочки), на одинацатой точно как ты описал с 12 ногой 0 — +5в
avatar
НА 13 ноге от состояния галочки от напряжение от -5 до -12 вольт При установке «галочки»: от +5 до +12 вольт
avatar
что после DD1.1?
avatar
У меня только 2 транзистора развёрнуты не как на фотках(фотки слабоваты еле разглядел), но я по даташит сверял, это кт 345б они у меня с 4мя точками цветными, других не нашёл, специально в двух разных местах покупал, думал 1 раз нае… ли
avatar
да, микросхему может и запороли… можно поставить транзисторы BC547, так же ставил 2N2222
avatar
Подскажите пожалуйста какой диодный мост вы использовали?
avatar
диодный мост наш, КЦ407
avatar
Собрал программатор, все работает, запускал на старом ноутбуке IBM 600, операционка ХР, правда сначало не прошивалось, писал ошибку по адресу 0000h, после чего в окне настройки программатора за место прямого доступа к портам поставил-использовать драйвер ХР, в результате все закончилось успехом. Спасибо за статью!
avatar
Здраствуйте!!! Хорошая статья.Спасибо.Буду собирть, но у меня много вопросов.Я живу в деревне.Источников информации мало.Можно Вам вопросы задавать.
  • IL76
  • 0
avatar
да пожалуйста
avatar
Добрый день!!! Наконец-то собрал детали.Возник вопрос разъем соединения с компьютером у Вас на 9 гнезд а у нас в деревне в компьютере на 15 гнезд.Подскажите как быть? Спасибо!
avatar
Еще вопрос на плате V1 с 6 выводами а в схеме нет.Если можно то обьясняйте попроще.Большое СПАСИБО!
avatar
На этом программаторе можно прошивать PIC, а Attiny2313 можно?
  • IL76
  • 0
avatar
пики можно, attiny нет, только с доработкой
avatar
Не могу прошить 16F628a. Красный светодиод светится в полнакала, когда не надо и выключается только когда поставишь галочку «инверсия сброса MCLR». При попытке програмирования, мигает и комп пишет, ошибка при програмировании 0000h.
Все много раз проверено, ошибок нет, при тестировании программатора, если поставить галочку «Вкл выход данных, пропадает галочка на Вход данных.» Может компорты битые?
avatar
попробуйте в окне настройки программатора за место прямого доступа к портам поставить — использовать драйвер ХР, должно помочь
avatar
попробуйте еще программу winpic800 попробовать
avatar
Все уже перепробовано много раз. Надо попробовать на другом компе. Выключил FIFO и галочка стала работать как надо.
avatar
Cпасибо всем за помощь, как и предполагал, виноват был компьютер. На другом все прошилось мнгновенно! EXTRA-PIC рулит!
avatar
Подскажите, какая скорость должна стоять в параметрах компорта?
avatar
у меня все по умолчанию стоит
avatar
Пытаюсь понять, почему неправильно работают компорты на компьютере. По логике, вроде бы оба порта не должны быть битые. На другом компьютере все прошилось по умолчанию, но я не догадался, посмотреть аппаратные настройки в WinPic 800 и параметры ком порта в компьютере.
avatar
Товарищи помогите пожалуйста с распиновкой PIC16F628 какие вывода подключать /VPP-GND-VCC-DATA-CLOSK-PGM/ если не трудно на почту Iurynesterov@yandex.ru спасибо с/у юра
avatar

Итак, Vpp(он же Vdd, он же Vcc)- 14 вывод, GND — 5 вывод, Data — 7 вывод, Clock — 8 вывод, PGM — 10 вывод
avatar
«В окне «Программный код» в самой последней ячейке будет наша константа для данного контроллера. Для каждого контроллера константа своя! Не сотрите ее, запишите на бумажку и наклейте ее на микросхему!»
— Скажите, а если константу удалил(по глупости) то контроллер можно выбросить? Или можно её каким либо образом считать? В частности интересует PIC16F786A.
avatar
считать уже ее не сможете, можно восстановить если у вас есть программатор pickit2… без константы пик будет не точно рассчитывать временные интервалы и прочие параметры… где высокой точности не нужно можно оставить так, но не известно как он может себя повести
avatar
Др. Sayron! Если использовать внешний кварц, нужна ли константа(Pic18F2525)?
avatar
всем доброго вечера.помогите кто может надо программировать PIC16F684. IC PROC не содержит.есть WIN PIC 800. c этой программой не умею залить прошивку.кто нибудь не сделает доброе дело.все подробно по шагам желательно с картинками.за работу ЗАПЛАЧУ.есть программатор EXTRA PIC + доработанный. почта iurynesterov@yandex.ru за ранее спасибо с/у юра
avatar
В схеме программатора транзистор VT1 защищен диодом VD6, а транзистор VT3 не защищен. Может пристроить диод для защиты VT3.
avatar
Добрый день!!! Наконц то собрал все детали.Буду собирать.Появились вопросы.Можно в качестве питания использовать готовый бп.Какие должны быть параметры напряжения и тока.Спасибо!!!
avatar
Уважаемые знатоки и не только!
Вобщем своял програматор облегченный вариант от сюда radiomaster.com.ua/page,1,2,602-universalnyj-programmator-pic-kontrollerov.html#comment
Тесты все прошел, но есть одна заковыка, в первом тесте "...1.Установите «галочку» в поле «Вкл. Выход Данных», при этом, в поле «Вход Данных» должна появляться «галочка»,...«Галочка не появляется(Win xp sp3 жулезо 2001 года 663AS Ultra ).
На другом компе (железо MSI combo под Win 7 64 sp1)если в „Настройка програматора“ выбрать „Прямой доступ к портам “также в поле «Вход Данных» галочка не появляется, а если выбрать»Используя драйвер Windows«появляется но при замыкании контакта (DATA) и контакт (GND) не пропадает
radikal.ru/fp/d3c647c81f0844a7bab3ac00d10f1519
Понимаю, что причина скорее всего в самом девайсе, но все остальные условия тестов проходит на ура, напряжения тоже соответствуют прописанным в тестах.Может у кого есть мнения, в чем может быть причина? Прошу помогите кто-нить т.к. опыт с програматорами прервый.(Прошу сильно не пинать)Буду рад любым мнениям и советам.
avatar
Объясните пожалуйста по подробнее как подключить микроконтроллер к программатору
avatar
какой контроллер?
avatar
PIC16F628A
avatar
Vpp(он же Vdd, он же Vcc)- 14 вывод, GND — 5 вывод, Data — 7 вывод, Clock — 8 вывод, PGM — 10 вывод
avatar
Подскажите пожалуйста, при распечатке платы нужно ли делать зеркальность (я просто до этого печатные платы не делал, если нужно то как?
avatar
Как сделать копию прошитого PIC16F877A-I/P?
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.