Форум » Программирование микроконтроллеров. » ExtraPIC » Ответить

ExtraPIC

Dmitry Dubrovenko: Пользуюсь в/у программатором, с софтом IC-Prog. Правда, поскольку он не поддерживает второй режим программирования, пришлось его малость доработать. Информацию по доработке выложил на своём сайте, в разделе "Электроника" (пардон за рекламу). Как недавно выяснил, используя PonyProg, данным программатором, с незначительными переделками, можно программировать и AVR'ы. Схему доработал и опробовал на ATTiny45. Всё работает.

Ответов - 169, стр: 1 2 3 4 5 All

vadglebov: Здравствуйте уважаемые коллеги,уже несколько дней пытаюсь собрать и запустить программатор (клон ЕКСТРАПИКА, Внутрисхемный программатор для PIC-контроллеров и I2C EPROM www.cqham.ru),ссылка была на форуме,всё безрезультатно, напряжения на программируемом контроллере необходимые есть ,пакеты на шинах clock ,data под час считывания- программирования есть ,настройки компьютера соответствующие делал результат ноль.Поменял уже 3 микросхемы МАХ 232СРЕ,короче всё что знал уже перепробывал не идет он и всё .Сейчас пока остановился ,хочу заказать опять мах,и родную 74ALS00(по -моему),у меня стоит 555ла3 .Но меня больше интересует,кто может посоветовать чем можно проверить параметры сигналов в домашних условиях ,clock ,data?Ну понятно ,что это можно сделать осциллографом ,с функцией запоминания и воспроизведения сигналов. А так чтобы подать с компьютера ,пачку испытательных пакетов на какую нибудь шину ,и проверить параметры ?!?Может кто может что подсказать посоветовать. У меня получается так что , компьютер не видит программатор, кабеля целые ,сигналы на контроллере есть ,а он неработает . Может кто работал с программой и устройством UniLogic ?И может подсказать .

vintik: vadglebov пишет: Может кто работал с программой и устройством UniLogic ? Я когдато пробовал, но там ограничение по частоте, сейчас не помню, вроде 800Гц.

Dmitry Dubrovenko: vadglebov пишет: клон ЕКСТРАПИКАПро клон не знаю, а доработанный оригинал у меня работает без проблем. Статья здесь.


vadglebov: доработанный оригинал у меня работает без проблем. Да ,и у многих работает без проблем.А у меня как в пословице- заблудился в трёх соснах.Три детали и пробую- пробую ,толку никакого. Я уже думаю может поставить 74ALS00 вместо555 ла3 ,74 -я по-моему ТТЛШ структуры ,а 555- ТТЛ вроде как!?!?,потом может то что стоит мах232СРЕ именноСРЕ, а не с буквой А.Где то читал что разница есть . И на десерт ,думаю что может перепутал местами clock c data шиной(если такое возможно!?!?),уже всё пересмотрел ,просто при считывании одни нули в регистрах на экране.Кому интерестно могу передать свою плату печатную.

Dmitry Dubrovenko: vadglebov пишет: 74 -я555 - тоже 74-я, только AL (если память не изменяет). А ALS, это, по-моему, как-раз 1533. Вообще-то, вроде, не должно это влиять. разница естьНасколько помню, разница, у них, в "умножительных" конденсаторах. заблудился в трёх соснахПолагаю, надо сперва сделать ТОЧНО ТАК, как написанно в оригинале, а уж потом потихоньку вводить изменения.

RW1ZK: To vadglebov "Мы не будем полагаться на случай..." (Ирония судьбы или с лёгким паром). Вадим, давай рассмотрим схему с другой стороны (не так как она представлена автором...). Что представляет собой MAX232CPE? Преобразователь уровней RS232 => TTL/CMOS. RS232 => -3..-15 В лог. “1” и +3..+15В лог. “0”. TTL => 0 В лог. “0” и +5 В лог. “1”. М/сх 74LS00 имеет в своём составе 4 элемента 2И-НЕ (т.е. 4 инвертора, в случае если на её входах одинаковые потенциалы). Смотрим на схему, я её специально нарисовал по-другому. Для проверки 74LS00 не устанавливай на плату MAX232CPE, или перережь дорожки, соединяющие выводы MAX с 74LS, или найди БП, в котором выходное напряжение изменяется от -15 до +15 В и можно будет подать его на выв.8 и 13 MAX232CPE. С выв. 9 MAX232CPE лог. уровень (к примеру “1”) поступает на выв. 9 и 10 DD1.3. На выв. 8 DD1.3 должен быть лог. “0” и наоборот, если ты закоротишь 9 и 10 выводы DD1.3 на землю, на выв.8 будет +5 В. Если на выв.4 и 5 DD1.2 подать лог. “1”, то на выв.6 DD1.2 будет лог. “0”, который через открывшийся диод шунтирует линию DATA и выв. 1 и 2 DD1.1 на землю (лог. “0”). Соответственно на выв.3 DD1.1 будет лог. “1”. Если на выв. 4 и 5 DD1.2 лог.”0” то на выв.6 DD1.2 лог.”1”. Диод закрыт, т.к. потенциалы на катоде и аноде равны (+5 В). На выв. 1 и 2 DD1.1 лог. “1” (через резистор 4,7 ком), а на выв. 3 DD1.1 лог. “0”. Проверь напряжения на выводах MAX232CPE. В своём составе для преобразования уровней MAX232CPE имеет 2 преобразователя напряжения (+10 и -10 В). На выв. 6 должно быть -10 В, а на выв. 2 +10 В. На схеме автора не указано подключение контакта 5 DB9F (GND) с землёй программатора. vadglebov пишет: И на десерт ,думаю что может перепутал местами clock c data шиной(если такое возможно!?!?) При программировании сигнал DATA подаётся на выв. RB7, CLOCK на выв. RB6, Vpp на выв. MCLR, Vcc на выв. Vdd. Для использования внутрисхемного программирования необходимо развязывать RB7, RB6 от остальной схемы резисторами с сопротивлением не менее 1 ком и разрывать цепи MCLR и Vdd. Я столкнулся с похожей проблемой при внутрисхемном программировании PIC18F252 (при проверке выдавалась ошибка по адресу 0000h). К портам RB7-RB4 подключён LCD 2x16 (HD44780). С портов RB7 и RB6 на LCD сигналы подаются через резисторы по 1 ком. В случае внутрисхемного программирования обязательно ошибка по адресу 0000h. Проблема оказалась в маленьком сопротивлении резистора на RB6 (Clock). При сопротивлении этого резистора в 10 ком нет сбоев при программировании и нет влияния этого сопротивления на работу LCD. Цепь MCLR развязана резистром в 1 ком и диодом с +5V. Теперь при внутрисхемном программировании достаточно снять всего-лишь 1 перемычку на Vdd.

Dmitry Dubrovenko: RW1ZK пишет: перережь дорожкиИзвиняюсь, но зачем чего-то удалять, или резать? По-моему, достаточно в IC-Prog, через окно отладки программатора, подавать необходимые уровни.

RW1ZK: Можно и так... А почему нет? Был предложен вариан проверки без использования компа.

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

RW1ZK: Вадим, не стОит...(Hi). Земля круглая... Буду рад, если мои рекомендации помогут.

vadglebov: Иван, всё нормально, запустил заработал программатор пока прошивал 16F84,но самое главноё что УРАА-А-А!!! заработало!!!(как утверждал ,кот Матроскин из мультфильма про Простоквашино).А проблема зарыта была вначале в электролитических конденсаторах что к МАХ подключены. У меня СМД выпаяны из какой-платы ,проверял LC-метром показывал 10мкф ,правда на 6 вольт рабочее напряжение ,(должен в принципе работать)ну видимо что-то незахотел. Как только поставил нормальные появились -+9вольт на 2 и 6 выводах МАХ .Проверка 555ла3 вашим методом подтвердило ,то что и эта микросхема рабочая ,осталось один соединительный кабель (комп-программатор),посмотрел более внимательно нашел ошибку.Спасибо за помощь ещё раз ,и вам Иван и всем кто помогал.

RW1ZK: Вадим, я рад за Вас! Удачи!

picpic13: Здравствуйте. Собрал программатор Extra-pic. Столкнулся с проблемой: НЕ РАБОТАЕТ! Все вышеописанные проверки вроде бы выполняются правильно. Вопрос: надо ли соединять землю платы программатора с землей COM-порта. Пересмотрев множество вариантов печатных плат, видно, что это соединение имеет место быть через корпус разъема для COM-порта. Кстати, при чтении например 16F84 иногда ничего не выдает, а иногда выдает некий мусор по разным адресам. Может ли это являться признаком какой-л. ошибки?

Dmitry Dubrovenko: picpic13 пишет: надо ли соединять землюОбязательно. Как же иначе сигналы (относительно чего) подавать? А корпус разъёма может соединяться с "землёй", а может и нет. Софтиной какой пользуетесь? IC-Prog'ом? Если да, то, как уже упоминал, для проверки, там ничего резать в программаторе не надо. Надо на специальной вкладке, в настройках, "включать-выключать" управляющие сигналы, и мерить их на программаторе. Опять же, операционка какая? С НТФСными нужен специальный драйвер. Не работать может, по причине отсутствия второго режима программирования. Дорабатывается легко. Информацию о статье, с доработкой, поместил в "шапку".

picpic13: возможно моя фраза "надо ли соединять землю" показалось глупой, но я имел ввиду другое. Просто в других JDM программаторах, не использующих max232, при соединении именно корпуса com разъема с землей программатора, последний отказывался работать. То, что надо соединять землю программатора с 5(gnd) ногой com порта - это понятно. Драйвер использую. Проверку при помощи специальной вкладки IC-Prog тоже проводил - все в порядке. Однако не работает.

Пётр: picpic13 пишет: Проверку при помощи специальной вкладки IC-Prog тоже проводил - все в порядке А Вы при этом проверяли где какие устанавливаются напряжения в цепях программатора? Возможно такая проверка поможет. Для тестирования программатора можно использовать эту прогу http://purik.nextmail.ru/ComTest.rar

picpic13: Так ведь ваша прога,Петр, в принципе является аналогом того тестера, что встроен в ic-prog, или я не прав? при проверке и вашей прогой и той, которая в ic-prog, все сигналы по плате ходят нормально и имеют нужные значения. Например такие, какие описаны в методике проверки у sjt, описанные выше. Очень подозрительным является появление мусора при прочтении в пика. И надо ли все- таки отключать буфер fifo?

Пётр: picpic13 пишет: И надо ли все- таки отключать буфер fifo Желательно его отключить. Он иногда мешает. Может не совсем точные настройки IC-Prog'а. Например задержка установлена не очень большая, а комп моцный, это приведёт к глюкам. К сожалению что-то посоветовать не могу, поскольку у меня "TAIT Serial Programmer" совместимый программатор, который подключается к паралельному (LPT) порту. С Extra-Pic'ом никогда не пользовался.

Dmitry Dubrovenko: picpic13 пишет: при соединении именно корпуса com разъема с землей программатораВозможно там ещё и экран кабеля задействован? Так его надо только с одной стороны кабеля к "земле" подключать. И всё-таки, что за комп и система (про софт я уже понял)?

picpic13: Система WinXP SP2, проц Атлон 2000, 1Гб ОЗУ. Пробывал выставлять задержку на максимум-ничего. Могут ли быть проблемы со входом пика в режим программирования. Я имею ввиду открытие/закрытие ключевых транзисторов. Может подобрать из обвязку (резюки)? Стоят в принципе те номиналы, что указаны на схеме.

Dmitry Dubrovenko: picpic13 пишет: Система WinXP SP2А дополнительный драйвер установлен? И, насколько помню, надо, в настройках IC-Prog, выбирать обращение через порты. Товарищи! Если вы занимаетесь Электроникой, не спешите выбрасывать старые Pentium-1, особенно, если это ещё и ноутбуки. Они вам ещё пригодяться. Все гонятся за новейшими многоядерными процессорами, что бы увеличить производительность системы. А ведь её можно получить просто используя несколько компьютеров под разные задачи. Уже больше года претворяю этот метод в жизнь, и наконец-то забыл, что такое переустановка системы. А занимаюсь непосредственно работой и творчеством. Кстати. Могу подарить один экземпляр. picpic13 пишет: открытие/закрытие ключевых транзисторовТак Вы же их тестировали из IC-Prog. Они открывались-закрывались? И всё-таки, настоятельно рекомендую "приделать" второй режим.

picpic13: Дополительный драйвер установлен и включен в настройках IC-PROG, прямой доступ к портам включен. Насчет транзисторов я имел ввиду временные соотношения. Для входа пика в режим программирования, на сколько я помню, необходимо чтоб на шинах данных и синхр. удерживались нули в то в то время как на MCLR тоже ноль. Так вот может ли быть что-нить с теми транзисторами, которые этим MCLR (Vpp) и управляют (временные соотношения)?

picpic13: Кстати, заметил только что очень серьезную и, на мой взгляд, важную вещь. Есть у меня JDM-совместимый программатор, работающий по cоm-порту и не требующий питания внешнего. Раньше и сечас шью на нем 16F877. Отлично работает. Только что залил при помощи этого программатора прошиву в 877, вставил этот контроллер в Extra-Pic, прочитал, как всегда ничего хорошего не получил (3fff), хотя там точно есть прошивка. Вставил обратно 877 в старый работающий программатор и, О ЧУДО, контроллер пустой (такое ощущение, что он стерт). Может в этом причина неработоспособности Extra-Pic?

Dmitry Dubrovenko: picpic13 пишет: прямой доступ к портам включенДык, а надо как-раз наоборот.

fox: picpic13 пишет: Вставил обратно 877 в старый работающий программатор и, О ЧУДО, контроллер пустой (такое ощущение, что он стерт). Может в этом причина неработоспособности Extra-Pic? А контроллер теперь точно работает? Почему решил отписаться - до боли знакомая ситуация. Только у меня 16F84, PonyProg и клон JDM с питанием от сом-порта. После аналогичных проб контроллер приказал долго жить. Отказался от JDM - и вообще забил на программаторы с питанием от ком-порта.

Dmitry Dubrovenko: fox пишет: забил на программаторы с питанием от ком-портаТак товарищ говорит, что этот как-раз работает нормально.

picpic13: А вы знаете товарищи, он гад все таки заработал.Но не до конца. Читать то читает, но не стирает и как следствие не программирует. Может еще че не то в настройках IC-PROG

Dmitry Dubrovenko: picpic13 пишет: еще че не то в настройках IC-PROGЗапросто! Я, так понял, поменяли доступ к портам? У меня, например, не хотел шить I2C память, пока не снял "галку" с какого-то пункта, по поводу карт памяти. А вообще, там же где-то русский хелп был.

picpic13: Да, указать то указал использование драйвера для NT/2000/XP. А как оказалось нужно еще было и на вкладке ПРОГРАММАТОР указать Использовать драйвер Windows вместо Прямого доступа к портам.

RW1ZK: Здесь была подобная проблема: http://pic.borda.ru/?1-4-0-00000008-000-0-0-1188727386

Dmitry Dubrovenko: picpic13 пишет: Использовать драйвер Windows вместо Прямого доступа к портам.А я про это и говорил. Может какая-то лишняя инверсия выставлена? RW1ZK пишет: подобная проблемаЧто-то, честно говоря, подобной не обнаружил, кроме, когда МК горелый был. По идее, если чип читается, то он входит в режим программирования. Следовательно и шиться должен. Лично у меня, с данной связкой, было две проблемы. 1. Не шились некоторые чипы. Сделал 2-й режим программатора. 2. Не программировалась 24Cxx. Убрал "галку" в настройках. Использую Pentium-1, Win98. Версии IC-Prog ставил (собственно, там и ставить особенно нечего) разные. Недавно, кстати, новая вышла. Тоже работает без проблем.

RW1ZK: Dmitry Dubrovenko пишет: Что-то, честно говоря, подобной не обнаружил, кроме, когда МК горелый был. Ну почему-же? Вот из вышеуказанного топика: RW1ZK пишет: А какие настройки в IC-Prog? Должно быть: Программатор - JDM, прямой доступ к портам, время задержки в зависимости от частоты процессора компа (на моём проц 3,4 ГГц, задержка 14), в опциях на закладке "общие" поставить галочку Вкл.NT/2000... Dmitry Dubrovenko пишет: Лично у меня, с данной связкой, было две проблемы. Почему-то у меня вообще никаких проблем не возникло. И 24Схх шьются прекрасно, и как видно, комп не последний отстой. А вообще, я уже писАл, что не стоит собирать именно ExtraPIC. Лучше собрать модификацию без лишней КРЕНки. Выше есть ссылка. Dmitry Dubrovenko пишет: Для некоторых ПИКов надо сперва подавать Vpp, а только потом Vcc. Не обижайтесь, для каких? Программатор был проверен с PIC16F84A, PIC16F628A, PIC16F877, PIC16F877A, PIC18F252, PIC18F452, AT24C02, 24LC16, AT24C64A. Всё работает чётко и без сбоев, как в режиме внутрисхемного программирования, так и при установке в панельки. К слову, проверено на 2-х компах. Первый - проц AMD64 => указан выше, второй - проц Pentium(R) D 3,6 Ггц (LGA775). И на том, и на другом WinXP SP2 (лиц). Я не даю рекламу вышеуказанному программатору! Даю рекомендацию, как проверенному временем устройству.

Dmitry Dubrovenko: RW1ZK пишет: 24Схх шьются прекрасноА я разве говорил, что они у меня плохо шьются? Если хотите, могу поискать, как называется, и где находится та "галка". Поэксперементируете. для какихНасколько понимаю, для всех перечисленных (за исключением памяти, разумеется, ей Vpp "фиолетово" ). Сбои были замечены на МК, у которых MCLR запрограмирован, как порт. Выше есть ссылкаИх здесь уже куча. Вы про какую?

RW1ZK: Dmitry Dubrovenko пишет: Вы про какую? Вот про эту: http://www.cqham.ru/ic-progp.htm Сюда залил настройки IC-Prog: http://slil.ru/25070264 (архив, скриншоты). Dmitry Dubrovenko пишет: Насколько понимаю, для всех перечисленных А насколько я понимаю, то для вышеперечисленных PICов сначала подаётся Vcc, а потом Vpp... Смотрим схему: Vcc - оно-же Vdd - напряжение питания PIC +5 V подаётся при включении программатора, Vpp - напряжение программирования (управление с линии TxD COM - порта), подаётся в процессе программирования PICa (т.е. после Vcc). И его величина уже играет свою роль. Для вышеперечисленных PICов Vpp должно быть не менее 12 V (хотя PIC16F628A у меня программировался без проблем и при +10 V). Подача этих напряжений вплоть "до наоборот" (для установки вывода MCLR как один из портов) нужна для PICов серий PIC10 и PIC12 (если судить по статье Н.Хлюпина - Радио №6-2006). Честно говоря, у меня таких не было и думаю, что не будет. В конце 30-й страницы есть упоминание о рекомендии фирмы Микрочип, но я о таких никогда не слышал и с подобными проблемами ещё не сталкивался.

Dmitry Dubrovenko: RW1ZK пишет: рекомендии фирмы МикрочипВот именно. Поэтому я схему и доработал. Как уже говорил, с первым режимом были некоторые проблемы, именно с PIC16, а во втором - нет. Кроме того, с этим режимом, и ещё небольшой доработкой, данным программатором можно и АВРы шить (пока, правда, на деле не опробовал). P.S.: Кстати зря так к PIC12. Есть вполне достойные модели. P.P.S.: А Слил у меня не работает.

RW1ZK: http://slil.ru по моему уже всех достал! Я смог скинуть туда архив только с третьей попытки. У PIC12 может и есть достойные модели, но у нас их в продаже нет. А заказывать для экспериментов - совершенно излишне. Для прошивки AVR я собрал PROTTOSS AVR910 USB Programmer. ATmega8, которая в нём установлена прошивал "5-ю проводами" c LPT. Ну да ладно, у picpic13 программатор заработал или нет?

picpic13: пока не заработал. уже не знаю что и думать. надо попробывать собрать модифицированную версию

RW1ZK: To Dmitry Dubrovenko... Дмитрий, у меня оптический обман, или Вы действительно отредактировали своё сообщение (в части касающейся порядка подачи Vpp & Vcc)?

Dmitry Dubrovenko: RW1ZK, единственное, что я редактировал, это - "шапку". И то, в общем-то просто дополнил, так как появилась новая информация. А Вы про какое сообщение говорите? Сейчас просмотрел последнюю страницу, не понял. По поводу порядка подачи Vpp и Vcc, так тут и редактировать нечего. Подача Vpp, при поданом Vcc - первый режим программирования, подача Vcc, при поданом Vpp - второй. Кстати, я об этом задумался именно после статьи в/у Хлюпина. Между прочим, чем Vcc отличается от Vdd? RW1ZK пишет: их в продаже нетДаже 675 и 629? А экспериментровать там особо не с чем. Работают точно так же, как PIC16. Только маленькие и подешевле. picpic13 пишет: пока не заработалНу, это - к доктору. Но спервапопробывать собрать модифицированную версию

RW1ZK: Dmitry Dubrovenko пишет: Между прочим, чем Vcc отличается от Vdd? По мне, так ничем. Dmitry Dubrovenko пишет: Даже 675 и 629? На Мурманск 2 магазина: "Квант" и "Радиоклуб"... А в Заозерске ничего. В прайсах есть, а в наличии нет... У нас ведь не столица... Dmitry Dubrovenko пишет: единственное, что я редактировал, это - "шапку" Скажем честно, не только шапку. Как сейчас помню, было следующее: Насколько понимаю, для всех перечисленных, сначала подаётся Vpp, а потом Vcc... Дальше по тексту... Ладно, проехали... Кстати, здесь исходная статья автора: http://ra4nal.qrz.ru/main/icd2.html в которой тоже идёт речь о таком способе включения Vpp & Vcc. Цитата: В разных типах контроллеров Microchip рекомендует использовать один из этих способов, в основном в старых разработках - первый, а в более поздних - второй. Но, чёрт меня возьми, никогда даже не задумывался об этом, поскольку никогда проблем не возникало. Если столкнусь с проблемой, когда не будут программироваться PICи, обязательно попробую вариант, где сначала подаётся Vpp, а потом Vcc. Ну а пока сделаю зарубку...



полная версия страницы