Программатор пзу своими руками

Добавил пользователь Алексей Ф.
Обновлено: 30.08.2024

__________________
"Словом можно убить, словом можно спасти, Словом можно полки за собой повести." (с) Шефнер Вадим

Необходим быстродействующий преобразователь питания средней мощности с высоким КПД? Он должен быть компактным и недорогим? Решение – карбид-кремниевые модули средней мощности WolfPACK производства Wolfspeed. В статье рассмотрены основные особенности модулей WolfPACK и показано, что переход на эту универсальную и масштабируемую платформу позволяет не только быстро разработать новые устройства, но и без значительных затрат времени и средств модернизировать уже существующие схемы на традиционной элементной базе.

Я хочу прошить ПЗУ 2764, 27С512 Пытаюсь писать программы для легендарной NES.. Кроме эмулятора нигде не испытываю. Надо железку (приставку) купить с братского Китая. Поэкспериментировать. Вот, собственно, зачем он (программатор ПЗУ) мне и нужен
Интересный программатор Хлюпина, не особо сложный, однако более дискретен нежели программатор kovlev'а. Да и у kovlev'а программатор уже не нов.
COM PCI адаптер при желании достать можно, в т.ч. эмулировать с PL2303, но и это вчерашний день.
Был у меня AutoProg, который шил все подряд. Были в нем интефейсы USB и COM. Шились исключительно ПЗУ кассовых аппаратов, таких как ЭКР2102, ОКА102 и т.д. Встречались как УФ стираемые, так и электрически стираемые. Сейчас его нету, продан за копейки (впрочем, как и куплен был мной когда-то).
Чуть чуть времени будет побольше, сваргопупю USB программатор на PIC18F2550 для картриджей.

__________________
"Словом можно убить, словом можно спасти, Словом можно полки за собой повести." (с) Шефнер Вадим

Компания Mornsun выпустила три серии источников питания с креплением на DIN-рейку в форм-факторе Home Automation на популярные значения выходной мощности 30, 60 и 100 Вт (серии LI30-20/PR2, LI60-20/PR2, LI100-20/PR2). Эти источники питания относятся ко второму поколению продукции (R2) и характеризуются высокой надежностью и хорошей стоимостью.

Приветствую!
Схем программаторов развелось, что порой думаешь, что людям заняться больше нечем, как делать что-то неуниверсальное.
Ищу давно уже схему нормального универсального программатора, который:
1. Стоил бы недорого по изготовлению;
2. Был универсален во всех случаях, мог бы программировать любые микросхемы, как ПЗУ, EPROM, EEPROM, Flash, возможно даже 155РЕ3. Микроконтроллеры любые PIC, AVR, NEC и другое. ;
3. Можно было бы подключить по USB или COM (Никаких LPT!)
4. Несложным в изготовлении и настройке.

Есть ли такая схема?
Давайте подумаем. Промышленные, скажем Sterh - шьют все. Был бы промышленный по цене хотя бы в два раза дешевле - я бы возможно, купил. Поэтому промышленные не будем рассматривать.
Из радиолюбительских видел Turbo-6, довольно неплохая схема, есть много возможностей, но схема мне не нравится по причине (3), не хочу палить порт LPT, далее, в схеме стоят КРЕН1 и КРЕН2, это усложняет схему вдвое, хоть я и электронщик, но переделывать что-то мне бы не хотелось. А вдруг программно не будет поддерживаться моя переделка?
Что еще из программаторов? Другие, что я видел - это заточенные под определенный тип микросхем памяти, возможны варианты, типа EEPROM, EPROM, Flash, зато не поддерживают некоторые микроконтроллеры, очень много читал отзывов по этим программаторам, очень лестных.
А представьте такую ситуацию. Приносят на ремонт контроллер HDD, например, там микруха стоит FLASH Winbond, хорошо, подобрал схему программатора, собрал ее, запрограммировал - работает (это у меня так было, однажды), а если надо 16-тибитную Flash перепрограммировать на HDD? Если надо проверить микроконтроллер на предмет правильности прошивки и перепрограммировать его, если не правильно? Даже телевизор тут пытаюсь починить, у него стоит 24С02 (точно не помню, неохота смотреть), бывают еще разные нужды, типа, прошить AtMega-8, AtMega-16, 2313, PIC-и. Да много ли чего еще существует в природе, что принести могут на ремонт или что-то захочешь собрать для собственных нужд. Хочу, например собрать на микроконтроллере управление поливом и открывание форточки в теплице, подбирать микроконтроллер под программатор, который умеет писать лишь определенный тип микроконтроллеров - это очень глупо. А если я не программист? Точнее могу разобраться в коде, но программирование у меня вызывает большие трудности. Для меня проще на логике что-то собрать, ибо я электронщик. Но схема получится как ЭВМ ЕС-1045
При этом, вышесказанном - человек, который принес ту или иную схему - не хочет ждать месяц, чтобы мне собрать успеть программатор и проверить лишь одну микруху на предмет ее работоспособности и (или) правильности прошивки.

Я создал тему в микроконтроллерах, что запутался совсем. Собрал PonyProg, работает, но через раз. Нет надежности никакой. А если я куплю дорогой микроконтроллер и буду его шить самоделкой, которая лишь испортит все. Боязненно.
Неужто нет никаких нормальных радиолюбительских программаторов? Есть лишь Turbo-6?

А, может, попробовать самим разработать программатор? Не сомневаюсь, что тут есть люди, кто умеет программировать на PC, соображает в микроконтроллерах не хуже производителей этих микроконтроллеров , да и неплохие электронщики.
У меня есть некоторые наработки в электронной части программатора, который будет уметь делать ВСЕ!

1. Управление выводами любых вставленных микросхем с помощью программы на PC и микроконтроллера программатора. При этом питание и напряжение программирования может подаваться на любой из выводов. Также и другие сигналы, данные, адрес, запись-чтение и прочее. Главное - правильно организовать управление микроконтроллером в программаторе.
2. Только DIP-панель на 40 выводов (как стандарт везде), лишь адаптеры под SOiC, PLCC, и прочее. То есть адаптеров уже на DIP не будет существовать, как в некоторых самоделках.
3. Управление программатором с помощью PC должно быть таким. Вся информация о микросхеме будет содержаться в нормально-редактируемом в текстовом редакторе. Добавление информации по любому даташиту, при этом любой малопросвященный человек мог бы закинуть дополнительно свою микросхему памяти. Например, количество выводов, что означает каждый вывод (присвоить значения переменным по определенному стандарту), напряжение программирования (например у 27Сххх или советских К573РФх), порой бывают микросхемы Intel Flash, которые надо программировать на запись, типа, защита, значит и это надо каким-то образом помещать в этот файл. Вообщем, суть такова. При выборе какой-то микросхемы, считывается информация из файла, подается сигнал микроконтроллеру в программаторе, типа, на первую ногу надо подать +24 вольта, на 28 ногу надо подать +5 вольт, шина данных на таких-то выводах, шина адреса - на таких-то, сигнал записи туда-то, GND - вывод 14. Ну, это к примеру. Микроконтроллер в программаторе это все выставляет и ждет загрузки данных. Передача может осуществляться в кэш-память программатора, либо, что проще - непосредственно через микроконтроллер в ПЗУ. Чтение также. Но уже не подается программируемое напряжение.

Программатор предназначен для программирования РПЗУ 573РФ2, 573РФ4, 573РФ5, 573РФ6 и их аналогов на компьютерах IBM любого поколения. Программатор подключается к PC через порт принтера.

Принципиальная схема

Принципиальная схема программатора показана на рис.1. Микросхема DD1 обеспечивает установку адреса ПЗУ (порт РВ и часть PC), записываемых данных (порт РА) и выдачу управляющих процессом записи импульсов (шины РС5РС7).

Принципиальная схема программатора

Рис. 1. Принципиальная схема программатора.

Запись необходимой информации в DD1 происходит через порт принтера PC, который подключается к разъему Х1. Следует отметить, что нумерация контактов разъема Х1 (РПМ736Г) не совпадает с нумерацией разъема стандартного кабеля принтера, который применяется для подключения программатора к PC. Поэтому на схеме приведены номера контактов разъема РПМ736Г и стандартного разъема в скобках.

Поскольку порт принтера однонаправленный, то для возможности чтения информации из ПЗУ используются четыре шины: ASK, BUSY, РЕ и SLCT. Для передачи байта в PC необходимо разделить байт на части по четыре разряда и передать их по очереди. Эту функцию выполнит мультиплексор DD2.

Программируемое РПЗУ устанавливают в колодку Х2. РПЗУ 573РФ2 и 573РФ5 следует устанавливать со сдвигом на два гнезда (1-й вывод МС в 3-е гнездо колодки). Переключение программатора в режим программирования РФ2, РФ5 или РФ4, РФ6 осуществляется переключателем SA2.

Управление режимом работы РПЗУ программно. Управляющие импульсы поступают с выводов 10-12 DD1, формируются с помощью DD3 в соответствии с требованиями и подаются на РПЗУ. Ключ на транзисторах VT2 и VT3 формирует высоковольтные импульсы напряжения программирования.

Питание программатора от сети через Т1. Выходные напряжения выпрямителя: 30 В (С1) и 15 В (С2). Для получения напряжения +5 В используется стабилизатор на DA1. Напряжение программирования формируется стабилизатором на VT1.

В положении SA3 "Выключено" выходное напряжение стабилизатора около 24 В. При программировании РФ2 и РФ5 оно подается через VT3 на вывод 21 РПЗУ (SA2 в верхнем по схеме положении), а при программировании РФ4 и РФ6 через дополнительные VD3 и VD4 на вывод 1 РПЗУ, что обеспечивает напряжение программирования около 21 В. В режиме чтения на эти выводы через VD1 и VD2 подается +5 В.

В положении SA3 "Включено" выходное напряжение стабилизатора около 14 В (12 В на выводе 1 Х2). При программировании напряжение программирования выбирается в соответствии с требованиями технической документации на конкретный тип МС. Для некоторых типов напряжение программирования указывают на корпусе МС. Светодиод VD10 сигнализирует о процессе записи.

Собранный программатор в наладке не нуждается. При исправных деталях и правильном монтаже начинает работать сразу. Однако до подключения программатора к компъютеру небходимо проверить работу стабилизаторов на DA1 и VT1, а при опробовании программатора в режиме записи осциллографом проверить амплитуду импульсов напряжения программирования на С5, которая должна быть 24+1 В или 14+1 В в зависимости от положения SA3.

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

После запуска программы пользователь должен, используя пункт меню Select, выбрать тип РПЗУ и номер параллельного порта (LPT1, LPT2), к которому подключен программатор. Перемещение по меню программы выполняется клавишами управления курсором, а подтверждение выбора - клавишей Enter. При нажатии клавиши F1 можно получить краткую справку о выбранном пункте меню программы.

При разработке программы авторы проанализировали опыт работы с различными программаторами и постарались предоставить пользователю максимум возможностей для выполнения работ по программированию МС РПЗУ.

Пункты меню программы рг.ехе

Read - чтение содержимого РПЗУ в буфер программатора. Процесс чтения отображается на экране. В конце выводится значение подсчитанной контрольной суммы содержимого РПЗУ.

Печатная плата

Рис. 2. Печатная плата.

Печатная плата - детали

Рис. 3. Печатная плата - детали.

  • Check - подсчет контрольных сумм буфера и РПЗУ.
  • Verify - сравнение содержимого РПЗУ с буфером программатора. В случае несовпадения данных выводится на экран протокол несоответствия.
  • Select - выбор типа РПЗУ, а также номера параллельного порта, к которому подключен программатор. Выбор отображается в верхней части экрана.
  • Input - ввод данных из файла в буфер программатора. Выводится запрос на ввод имени читаемого файла. После ввода имени данные файла переписываются в буфер.
  • Output - вывод содержимого буфера программатора в файл. Выводится запрос на ввод имени файла. После ввода имени данные буфера записываются в файл. Если файл с таким именем уже существует, то его содержимое будет затерто.
  • Modify - данный пункт используется для подготовки и редактирования содержимого буфера программатора и содержит следующее подменю.
  • Dump - постраничный вывод содержимого буфера программатора на экран для просмотра. Для смены страницы нажать клавишу пробела.
  • Fill - заполнение указанной области буфера программатора заданным байтом. Выводится запрос на ввод начального адреса, конечного адреса и значения байта. Значение адреса четырехразрядное шестнадцатиричное, ввод ведущих нулей обязателен. Ввод производить аккуратно, так как отсутствует возможность редактирования.
  • Edit - редактирование содержимого буфера. Реализовано экранное побайтное редактирование. Клавишами управления курсором можно перемещать курсор по экрану для выбора нужного байта, а клавишами PgUp и PgDn выбрать нужную страницу. После ввода байта (две цифры) происходит замена байта, а курсор переходит на следующую позицию. Для ввода значений байта доступны клавиши 0,1 . 9, A, B, C, D, E, F.
  • Move - копирование данных из одной указанной области буфера в другую. Задается начальный и конечный адрес области, из которой копируются данные, и начальный адрес области, в которую копируются. Требования к вводу значений адресов аналогичны пункту Fill.
  • Summa - подсчет контрольной суммы содержимого буфера программатора. Значение выводится на экран.
  • Quit - выход в главное меню.

Для выхода из программы используется команда Quit главного меню.

Таким образом, для проведения программирования при выключенном компьютере отключите кабель от принтера и подключите к программатору. Запустите компьютер для работы в DOS. Включите программатор и установите тип программируемого РПЗУ и необходимое напряжение программирования. Запустите программу pr.exe и, используя соответствующие пункты меню, выберите тип РПЗУ и порт.

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

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

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

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

Фактически это AVR-910 популярной схемы Prottoss-a. USB программатор надежен и имеет в своем арсенале функцию, позволяющая восстанавливать микроконтроллеры с неверно установленными фьюзами.

Следует отметить, что для прошивки самого микроконтроллера Atmega8 программатора понадобится простой LPT-программатор.

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


Теперь необходимо занести программу в память Atmega8. В качестве программного обеспечения можно применить Uniprof или Code Vision AVR. Перед программированием необходимо выставить следующие фьюзы (для Uniprof):

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

Поговорим о программном обеспечении которое необходимо для работы с данным программатором. Он поддерживает такие оболочки как: AVR Prog, AVR Studio, ChipBlasterAVR и, конечно же, Code Vision AVR.

Достаточно удобной программой, я считаю, является Code Vision AVR, пример работы, которой подробно написано здесь.

Для справки, приведем типовую распиновку USB:

Список необходимых деталей:

  • Atmega8 — 1 шт.
  • Кварц 12МГц — 1 шт.
  • Диод 1N4007 – 2 шт.
  • Светодиод — 3 шт.
  • Резисторы: 68 Ом — 2 шт., 330 Ом — 8 шт., 1,5 Ом — 1 шт., 100 Ом -1 шт., 1,5 кОм -1 шт., 10 кОм -1 шт., 1 мОм -1 шт.
  • Конденсаторы: 0,1мк — 3 шт., 22мк х 10В — 1 шт., 22p — 2 шт.

Похожие записи:


редактор

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

Обработал протокол USB на обычтном AVR через внешние прерывания?! Браво!

На программе Code Vision AVR какие фюзи поставит

Здравствует админ я собрал программатор и у меня в запасе есть ltp программатор чтобы прошить мк провода от ltp на собранную программатор под соединять или просто к мк надо соединять

LPT программатор подключите к ISP разъему. Не забудьте переключатель SA2 перевести в положение МОД

Можно изменить резисторы R3, R6, R9-R15 330Ом на другую?
И конденсаторов С1, С4, С6 0,1Мкф?

Доброго времени суток! Автор, спасибо за статью, программатор спаял — работает штатно. К делу подошел с размахом и сделал сразу три платы: программатор, плату переходников и еще одну. Вопрос, для чего третья плата? И если, есть, принципиальная схема.

Извиняюсь за драйвера не ту папку глянул. Всё равно не обновляются.

Добрый вечер.
Объясните почему после прошивки атмеги 8 и установки Fuse как показано на фотке, программатор перестает видеть контроллер вообще, все проги выдают ошибку, что не могут связаться с контроллером, что я сделал не так.

Все дело в том, что после прошивки, микроконтроллер начинает работать от внешнего задающего генератора (кварца). Подключите кварц (можно на 8МГц) на выводы 9 и 10.

Спасибо, заработало)) Подскажите с какими программами avr910 работает?

Я использую Khazama AVR Programmer

В Usbasp (китайский) применен кварц 12 мгц, можно его заменить на кварц 8мгц?

Здравствуйте!
В программаторе ATmega8A-PU, будет работать?
Программатор поддерживает ATmega328P-PU ?

Подскажите, как в Proteus поставить ISP.

спасибо большой уважаемый админ

день добрый ребят размер печатной платы какой

ширина 80мм, высота 55мм

Добрый вечер, спасибо за статью.
Подскажите можно ли в место Atmega8
использовать Atmega328p-pu

можно ли вместо LTP программатора прошить COM-программатором Громова?

Можно ли им прошить Pic 18f 2685?

Подскажите, в чем может быть проблема, все сделал правильно, перепроверил раз 10. При подключении 3 раза мигают лампочки чтения и записи и на компе определяется как неизвестное устройство с ошибкой дескриптора. Кстати, я так понял нужна Атмега8 16pu, у меня Atmega8A-pu, это ни на что не влияет?

Скажите люди,зачем в списке деталей присутствует резистор 1.5 Ом,если в схеме его нет? И Рез. 330 Ом там 9 а не 8 судя по схеме.

Вроде все на месте:
Резистор 330 Ом (R3,R5,R8,R9,R11,R12,R13,R14,R15).
Резистор на плате указан 1,5к (R4).

В списке деталей и 1,5 Ом, и 1,5кОм. Как раз 1,5 Ом на схеме нет, а вот 330 Ом на схеме 9 штук, а в списке 8. Детали покупал по списку — как раз 1,5 Ом лишний, а 330 не хватило (

В архиве есть схемка переходника,на ней есть кондеры и кварц. Но какие?? Кто подскажет?

Кварц поставьте на 8 Мгц, конденсаторы 15…22 пФ (хотя можно и без них)

Добрый вечер.
Объясните почему после прошивки атмеги 8 и установки Fuse как показано на фотке, программатор перестает видеть контроллер вообще, все проги выдают ошибку, что не могут связаться с контроллером, что я сделал не так.

А какие меги он может шить, конкретного списка нет?Буду очень признателен.

Какой тип программатора выбирать в Codevision, com порт порт смотреть в системе?

ПРОШИВАЙТЕ ПРОШИВКУ АВРДОПЕР ДЛЯ АВР 910, (перезагруска)

собрал данный программатор на SMD компонентах(ток микруха в DIP-e),как и полагается фьюзы в первой микрухе не так выставил-в итоге залочил ее,вторую прошил корректно,ничего не греется,светодиоды горят только в момент прошивки,на LED-меандр 1MHz…теперь еще один программатор в коллекции….в общем все мучения того стоили.
Рекомендую к повторению.

подскажите новичку!! тока без умничания) куда подключается разъем ISP? и зачем его подключили к простому LPT-программатору.

Читайте также: