Программатор |
+7-978-708-85-73 Дроссель Amadeus Productions. Быстрый заказ по телефону. (Viber, WhatsApp, Telegram) |
Программатор |
20.3.2010, 12:54
Сообщение
#1
|
|
Технический Маньяк-Гуру Группа: Технический Маньяк Сообщений: 7049 Регистрация: 3.6.2009 Из: Армения На форуме Авто: Lancer IX, AT Репутация: 265 |
Что-ж, имея уже несколько устройств на МК и, надеюсь, таковые будут и в дальнейшем - пора научиться прошивать их. Для этого, ясно, нужен программатор. По большому счету термин "программатор" относится скорее к софту, чем к аппаратной части, которая в большинстве случаев представляет собой простой интерфейс для согласования того или иного компьютерного порта с выводами программирования контроллеров.
Ну, если с софтовой частью проблем нет, в сети выложено множество оболочек, то аппаратную часть придется паять. В качестве базового блока выбран так называемый интерфейс JDM на основе которого работает подавляющее большинство как софтовых так и хардовых любительских программаторов. Задача упрощается тем, что для программирования абсолютно всех типов МК производства Microchip (pic-контроллеров) требуются одни и те же сигналы, только для разных МК, вернее для МК в разных корпусах надо подсоединить эти сигналы к нужным ногам. Таблица выводов программирования МК здесь уже выкладывалась, просто продублирую Как видно - 8, 14 и 20-ножечные МК совпадают даже по расположениям выводов, 18-ножечные имеют свое собственное расположение, 28-ножечные совпадают с 40. Т.е. имея базовый блок с соотв. выходами можно впоследствии подсоединять к ним нужные выводы МК и программировать его. Кстати те же сигналы используются и для прошивки некоторых EEPROM, опять же соорудив "переходник" при желании можно будет прошивать и их. Про USB-шные программаторы уже писалось, конечно желательно иметь такой, но если не занимаешься постоянно программированием, то сойдет и простой, на СОМ порт. Уверяю - в хозяйстве всегда пригодится... В качестве основы, как уже говорил, выбран JDM программатор, вернее его усовершенствованная версия SOLO-GWR, а еще точнее - переработанный мной этот самый SOLO, без GWR Немного отвлекусь на счет GWR. Эта аббревиатура - Gold Wafer Ready - свидетельствовала о том, что указанным программатором можно было прошивать Gold Wafer (золотая вафля) карточки, которые представляли собой карточку типа кредитки, но не с магнитной полосой а с встроенным МК и EEPROM. С внешним миром такая карточка соединялась всего 5 контактами, как раз теми, которые были необходимы для программирования. Их применяли, например, для эмуляции карточек условного доступа для просмотра платного спутникового ТВ. Но сейчас с появлением ресиверов с встроенными эмуляторами (OpenBox и т.д.) надобность в таких карточках как и прошивке их отпала. Интересный момент - прошивка этих карт. Встроенный EEPROM не имел выхода "наружу", все его выводы были подключены к выводам МК внутри карты. А для эмуляции карт условного доступа коды записывались именно в EEPROM, внутренняя память самого МК не позволяла зашивать туда, если не ошибаюсь, всего 4 кода. Для решения этой проблемы применялся так называемый режим Phoenix, суть которого состояла в том, что карта прошивалась в несколько этапов. На первом этапе в МК заливалась программа - загрузчик, единственной задачей которой было "пропихнуть" заливаемое на следующем, втором, этапе содежимое памяти в EEPROM, и последним, третьим, этапом было уже перепрошивка МК управляющей программой. Т.е. на 2-м этапе МК как бы сам становился программатором, а для его работы нужны были тактирующие импульсы, поэтому в программаторах предусматривали кварцевые генераторы (как в оригинальном SOLO-GWR). Т.к. все это нам не надо, выкинем из оригинального все ненужное и будем собирать просто JDM. Ниже приведена переделанная схема и разводка. На разводке левая часть - собственно программатор, правая, совершенно автономная часть - адаптер под различные корпуса МК, ну и 24 и 93 память. Соединяются обе части небольшим 5-контактным шлейфом, вместо которого можно было бы установить перемычки, но, думаю, так лучше, чтоб при необходимости иметь возможность применения программатора в качестве внутрисхемного. На разводке адаптера отсутствуют панельки под 14 и 20 выводные корпуса. Такие микросхемы вставляются в 8-выводную панельку нижней частью (имеется в виду начиная с 1-го вывода), остальные выводы пусть висят в воздухе - они при прошивке не нужны. Вернемся к нашему программатору. Как уже отмечалось - собран по схеме JDM, поэтому будет работать с любым софтом, поддерживающим данный режим. Помимо pic-контроллеров им можно прошивать также EEPROM 24хх и 93хх серий. Схема программатора приведена ниже: Разводка: JDM.rar ( 24,18 килобайт ) Кол-во скачиваний: 67712 Фотографии печатной платы и собранного программатора: (На фотографии - неправильная микросхема - SN74LS00 - с ней программатор не будет работать. Надо ставить то, что обозначено на схеме и разводке.) Как видно - плата состоит из двух отдельных частей - собственно программатора и адаптера. Правильно собранный программатор (из исправных деталей конечно )должен заработать сразу. В след. постах постараюсь описать процедуру проверки-отладки, если возникнут проблемы, ну и естественно про софт и как прошивать. Ну и напоследок, нашел в архивах один из моих любимых программаторов - JonisProg. В нем до сих пор еще торчит Gold Wafer |
|
|
20.3.2010, 13:56
Сообщение
#2
|
|
Don Amadeus Группа: Главные администраторы Сообщений: 29946 Регистрация: 19.2.2009 Из: Russia, Sevastopol Вне форума Авто: Lancer IX-1.6 MT Turbo, Honda Accord IX-2.4 AT Executive. Репутация: 466 |
Спасибо большое, Сереж
Заказал платку в изготовление |
|
|
20.3.2010, 14:12
Сообщение
#3
|
|
Технический Маньяк-Гуру Группа: Технический Маньяк Сообщений: 7049 Регистрация: 3.6.2009 Из: Армения На форуме Авто: Lancer IX, AT Репутация: 265 |
Несколько слов о деталях
Выпрямительный мост - любой, желательно маломощный чтоб не занимал много места на плате. Можно и другой формы (есть в DIP корпусах) - единственно - надо будет подправить топологию печатки. А можно и 4 диода типа 4001, включеных мостом. Логическая микросхема - из КМОП серии, 2И-НЕ или 2ИЛИ-НЕ (К561ЛА7, К561ЛЕ5, и их зарубежные аналоги, 74НС, 40 серий) Стабилитрон у кренки - на напряжение от 4,7 до 6,2 В. Диод Шоттки (BAT41) - любой маломощный, или его можно заменить германиевым (Д311 и т.д.) Конденсаторы обвязки МАХ232 зависят от модификации микросхемы, надо справляться в даташите. Цвета свечения светодиодов естественно - не критичны - ставим то, что нравится. Транзистор - любой маломощный n-p-n структуры Плата, как уже указывалась, состоит из двух частей, соединеными перемычками. Это сделано специально для того, чтобы при необходимости можно было-бы разъединить перемычки и использовать программатор в качестве внутрисхемного, т.е. прошивать МК уже установленные на плату. Еще я постарался сделать расположение контактов программирование сделать совместимым с PicKit, в дальнейшем это может быть полезным. Программатор по выложенной схеме мною собран, испытан со всеми заявленными типами микросхем кроме 28-ножечных корпусов - под рукой не оказалось ни одной... |
|
|
20.3.2010, 14:15
Сообщение
#4
|
|
Технический Маньяк-Гуру Группа: Технический Маньяк Сообщений: 7049 Регистрация: 3.6.2009 Из: Армения На форуме Авто: Lancer IX, AT Репутация: 265 |
Цитата Заказал платку в изготовление Уже? Кстати, насчет USb - адаптер-то у меня есть но никак не найду драйвера к нему - надо попробовать, а то что делать людям у которых СОМ-а нет... |
|
|
20.3.2010, 15:10
Сообщение
#5
|
|
Don Amadeus Группа: Главные администраторы Сообщений: 29946 Регистрация: 19.2.2009 Из: Russia, Sevastopol Вне форума Авто: Lancer IX-1.6 MT Turbo, Honda Accord IX-2.4 AT Executive. Репутация: 466 |
|
|
|
20.3.2010, 23:29
Сообщение
#6
|
|
Технический Маньяк-Гуру Группа: Технический Маньяк Сообщений: 7049 Регистрация: 3.6.2009 Из: Армения На форуме Авто: Lancer IX, AT Репутация: 265 |
Вкратце о программном обеспечении. Одним из самых распространенных программаторов является ICProg - www.ic-prog.com
Скачиваем сам программатор и драйвер к нему. Распаковываем все в одну папку и запускаем ехе. При первом запуске программа ругнется на отсутствие драйвера, открываем Settings -> Oprions -> Misc и ставим галку в окошке "Enable NT/2000/XP Driver". Перезапускаем программу. Далее открываем Options -> Hardware и выбираем в качестве протокола JDM, соотв СОМ порт и интерфейс - Direct I/O Программатор готов к работе. При программировании той или иной микросхемы выбираем её из ниспадающего списка в правом верхнем углу. Загружаем нужный hex, жмем F5 и все, через несколько секунд микросхема запрограммирована. Естественно, предварительно надо соединить по СОМ порту аппаратную часть Этим же самым ICProg-ом можно провести тестирование "железа" если вдруг что-то не заработало. Вообще-то на сайте есть и русский help к ICProg, так, что, можно и оттуда почерпнуть много полезного. |
|
|
21.3.2010, 13:29
Сообщение
#7
|
|
Технический Маньяк-Гуру Группа: Технический Маньяк Сообщений: 7049 Регистрация: 3.6.2009 Из: Армения На форуме Авто: Lancer IX, AT Репутация: 265 |
Ну и в последнюю очередь - процедура отладки железа, если что-то не заладилось (надеюсь не понадобится)
Запускаем IC-Prog, выбираем Settings -> Hardware Check Ставим и снимаем галочки. В таблицах 1-й столбик - точка подключения вольтметра, 2-й - напряжение со снятой галкой, 3-й - с установленной. Код 1. Enable Data Out Data In - при выставленной Data Out галке здесь тоже появляется, при снятии - исчезает, дальнейшие параметры - смотрим вольтметром на указанных точках собранного программатора, номера выводов относятся к микросхеме MAX232. 11 +5 0 14 -9 +9 12 +5 0 13 -5 +5 2. Enable Clock 8 -5 +5 9 +5 0 3. Enable MCLR RST 0 +9 Напряжения +/-9В могут быть и немного другими, в зависимости от многих факторов (компьютер, микросхема и т.д.) - это нормально и на работу программатора не влияет. |
|
|
4.4.2010, 15:58
Сообщение
#8
|
|
Технический Маньяк-Гуру Группа: Технический Маньяк Сообщений: 7049 Регистрация: 3.6.2009 Из: Армения На форуме Авто: Lancer IX, AT Репутация: 265 |
Никогда не занимался микроконтроллерами AVR, a тут на тебе - вдруг понадобилось. Так что, делать еще программатор под этот тип? Хотя эти МК можно программировать непосредственно через LPT порт, просто соединив соотв. контакты микросхемы и порта, но такой способ не очень надежный в том смысле, что можно легко сжечь порт. Еще одна особенность этих МК - при программировании используется внутренний генератор, который включен в них по умолчанию. Если в процессе программирования его отключить (скажем надо, чтобы МК работал в схеме от внешнего кварца или же по неосторожности), то для последующих перепрошивок надо на соотв вывод МК подавать внешнюю тактирующую частоту.
Для того, чтобы не собирать новое устройство, которое в принципе не так часто будет использоваться, просто добавил к описанному здесь 3 детальки и 8-контактную колодку-гребенку для подключения нового типа МК. Благополучно прошил и МК с установленным внутр. генератором и с отключенным. Вот теперь получилось на самом деле универсальное устройство. |
|
|
11.4.2010, 15:08
Сообщение
#9
|
|
Технический Маньяк-Гуру Группа: Технический Маньяк Сообщений: 7049 Регистрация: 3.6.2009 Из: Армения На форуме Авто: Lancer IX, AT Репутация: 265 |
Ура! Запустил наконец собранный аж 3...4 года назад AVR910 совместимый USB-шный программатор Atmel-овских микроконтроллеров. Сам программатор собран в корпусе от wireless адаптера.
P.S. бумажка на микруху приклеена не ради сокрытия чего-то а просто чтоб микросхема не просвечивала через дырку на корпусе . Микросхема - Atmega8, программатор - http://www.prottoss.com/projects/AVR910.us..._programmer.htm |
|
|
11.4.2010, 15:25
Сообщение
#10
|
|
Don Amadeus Группа: Главные администраторы Сообщений: 29946 Регистрация: 19.2.2009 Из: Russia, Sevastopol Вне форума Авто: Lancer IX-1.6 MT Turbo, Honda Accord IX-2.4 AT Executive. Репутация: 466 |
Красавец!
|
|
|
22.4.2010, 8:38
Сообщение
#11
|
|
Технический Маньяк-Гуру Группа: Технический Маньяк Сообщений: 7049 Регистрация: 3.6.2009 Из: Армения На форуме Авто: Lancer IX, AT Репутация: 265 |
Что добавить к JDM-программатору для прошивки AVR? Почти ничего, цепочку из стабилитрона на 4,7...5,6В и резистора 4,7кОм для задания необходимого уровня сигнала "Reset", и кварцевый резонатор с соотв. емкостями - нужен только для прошивки тех МК у которых скинуты биты внутр. генератора. По дефолту эти биты стоят и резонатор не нужен.
Вот схема дополнений |
|
|
22.4.2010, 9:17
Сообщение
#12
|
|
Технический Маньяк-Гуру Группа: Технический Маньяк Сообщений: 1802 Регистрация: 21.2.2009 Из: Екатеринбург Вне форума Авто: Lancer IX 1.6MT (105HP) Репутация: 108 |
А ПИК-ам на Reset-е нужно больше 5 вольт?
Я вот думаю, если схемку перелопатить слегка - убрать MAX232, вместо нее вставить FT232... ps. Тут недавно странная история со мной приключилась. Собрал очередное устройство на AVR-ке, подключил к компу, залил в него программу, пытаюсь проверить работу - а нифига не работает. Долго бился, пока не выяснилось, что в цепи питания был обрыв... При этом сигналов приходящих с программатора хватило, чтобы МК завелся и запрограмировался... Во чудеса! -------------------- Lancer IX 1.6 MT 2006г. & клубные рамки NLC
-------------------- |
|
|
22.4.2010, 9:36
Сообщение
#13
|
|
Технический Маньяк-Гуру Группа: Технический Маньяк Сообщений: 7049 Регистрация: 3.6.2009 Из: Армения На форуме Авто: Lancer IX, AT Репутация: 265 |
Цитата А ПИК-ам на Reset-е нужно больше 5 вольт? Да, порядка 10В. Цитата Я вот думаю, если схемку перелопатить слегка - убрать MAX232, вместо нее вставить FT232 Если только под AVR - думаю не стоит, есть неплохие USB-шные программаторы, которые при этом совместимы со стандартными, например тот о котором я писал выше - AVR910. А простой заменой может создадим сами себе доп. трудности, Фт-шка же по большому счету является просто виртуальным СОМ портом, после инсталляции устройства, выполненного на этом чипе он займет первый попавшийся СОМ. И если это СОМ5 или выше, то, например, ICProg его уже не увидит. Цитата странная история со мной приключилась. Бывает... Они же все нанопотребляющие. |
|
|
28.6.2010, 8:52
Сообщение
#14
|
|
Технический Маньяк-Гуру Группа: Технический Маньяк Сообщений: 7049 Регистрация: 3.6.2009 Из: Армения На форуме Авто: Lancer IX, AT Репутация: 265 |
Нашел схему программатора собранного вообще без микросхем (те, что изображены на самой схеме - не микросхемы а панельки под них)
http://radiohlam.ru/control/RCD_pic_prog.htm Единственно что смущает - по-видимому не со всеми компьютерами будет работать, т.к. все питание берется с СОМ порта а по стандартам напряжение на СОМ может быть в пределах от +/- 6,5 до +/- 12,5 Вольт. У меня были случай когда один и тот же программатор работал от одного компа и наотрез отказывался работать от другого (особенно от ноутбука). С древними компьютерами указанный программатор работать будет. |
|
|
15.8.2010, 12:51
Сообщение
#15
|
|
Начинающий Технический Маньяк Группа: Технический Маньяк Сообщений: 53 Регистрация: 24.6.2010 Из: Екатеринбург Вне форума Репутация: 0 |
С удовольствием бы спаял Ваш программатор, но облазил все фирмы торгующие электронными компонентами в Екатеринбурге, нигде нет в наличии LM78L05 и LM7812. Можно их заменить на какие то аналоги имеющиеся в наличии на этих двух сайтах:
http://www.marketmec.ru/ http://www.promelec.ru/ или искать другую схему программатора из более доступных деталей? Заказывать в интернете смысла большого не вижу, так как и срок большой, и отправка заказа от 500 руб. плюс пересылка... |
|
|
15.8.2010, 13:54
Сообщение
#16
|
|
Технический Маньяк-Гуру Группа: Технический Маньяк Сообщений: 7049 Регистрация: 3.6.2009 Из: Армения На форуме Авто: Lancer IX, AT Репутация: 265 |
Да распространеннее этих деталей и быть не может 7805 и 7812 с любыми префиксами. Или отечественные аналоги - так называемые кренки на 5 и 12В соответственно |
|
|
15.8.2010, 14:45
Сообщение
#17
|
|
Начинающий Технический Маньяк Группа: Технический Маньяк Сообщений: 53 Регистрация: 24.6.2010 Из: Екатеринбург Вне форума Репутация: 0 |
Вот нашел КР1157ЕН502А аналог 78L05, КР142ЕН8Б аналог 7812C. Такие подойдут?
А у Вас какая модификация микросхемы МАХ232 с обвязкой конденсаторами 1mF ? Что бы поставить такую же и не лазить по даташитам. И еще на фото что за элемент стоит на месте диодного моста? Я понял что это мост в DIP корпусе? Какая у него маркировка? А 4 диода типа 4001 имеются в виду 1N4001?
Прикрепленные изображения
|
|
|
15.8.2010, 16:43
Сообщение
#18
|
|
Технический Маньяк-Гуру Группа: Технический Маньяк Сообщений: 7049 Регистрация: 3.6.2009 Из: Армения На форуме Авто: Lancer IX, AT Репутация: 265 |
Ну если это стабилизаторы на 5 и 12В соотв. то подойдут. Просто проверь по даташитам - совпадает ли цоколевка или нет. Общий у обоих должен быть посередине.
Модификация интерфейсной микросхемы - MAX232CPE На месте диодного моста стоит диодный мост - любой маломощный, я этот выдернул кажется со старого модема. Если нет такого - разводку легко переделать под любой имеющийся, она же в SprintLayout-e 4001 диодов на схеме вообще нет. Используются - 1N4148 - на средней ноге стабилизатора на 12В (опять же можно ставить любой маломощный кремниевый) - BAT41 или любой другой маломощный Шоттки, в крайнем случае можно использовать германиевый (сейчас они более дефицитны чем Шоттки ) Маломощные стабилитроны: - на 5,6В - на базе транзистора - на 4,7В - только если надо программировать EEPROM 93XX серии - на 5,1В - только если предполагается програмировать этим же программатором и AVR контроллеры Напряжения стабилизации стабилитронов тоже некритичны, подойдут любые в диапазоне 4,7...5,6В То же самое касается кварца на 8 МГц вместе с конденсаторами 22 пф - используются только для программирования AVR, да и то со случайно скинутыми битами внутреннего осциллятора. |
|
|
15.8.2010, 17:54
Сообщение
#19
|
|
Технический Маньяк-Гуру Группа: Технический Маньяк Сообщений: 1802 Регистрация: 21.2.2009 Из: Екатеринбург Вне форума Авто: Lancer IX 1.6MT (105HP) Репутация: 108 |
В промэлектронике есть в наличии стабы на 5В в TO-92 корпусе:
L78L05ACZ, MC78L05ABP, MC78L05AСP, L78L05ABZ 12 вольт в корпусе TO-220: L7812ABV, L7812CV, MC7812ABTG, MC7812ACTG, MC7812CTG Похожий ассортимент на Красноармейской, но там обычно подороже... -------------------- Lancer IX 1.6 MT 2006г. & клубные рамки NLC
-------------------- |
|
|
15.8.2010, 18:30
Сообщение
#20
|
|
Начинающий Технический Маньяк Группа: Технический Маньяк Сообщений: 53 Регистрация: 24.6.2010 Из: Екатеринбург Вне форума Репутация: 0 |
А LM78L05 и MC78L05, а также LM7812 и MC7812 это одно и тоже?
По параметрам вроде одинаково. |
|
|
+7-978-708-85-73 Дроссель Amadeus Productions. Быстрый заказ по телефону. (Viber, WhatsApp, Telegram) |
Текстовая версия | © 2006-2025 Форум Технических Маньяков. |
|