«Телесистемы»: Программатор «PICPROG»
«Телесистемы»: Программатор «PICPROG»«Телесистемы»: Программатор «PICPROG» |
Программатор «PICPROG»® V3 предназначен для программирования широкой номенклатуры микросхем как в условиях серийного производства, так и в процессе разработки и отладки изделий. «PICPROG»® соответствует промышленной спецификации фирмы «Microchip Technology Inc.», позволяя программировать следующие семейства выпускаемых ею приборов:
PicMicro(TM):
• 12C(LC, CE)5xx/6xx, 14Cxxx, 16F(LF)8x/87x
• 16C(LC, LV)5x/50x/55x/6x/6xx/71x/7x/77x/8x/92x, 16CE6xx
• 17C(LC)4x/7xx
• 18C(LC)xxx
Кодеры и декодеры KeeLoq®: HCS2xx/3xx/4xx,HCS512
Последовательные EEPROM:
• 24C(LC, AA)xxx, 24C(LC, CS, LCS)xx, 85Cxx, 93C(LC, CS, LCS)Cxx, 25C(LC)xxx
Параллельные EEPROM:
• 28C(LV)xx
PIC программатор PIC microchip PIC программатор PIC microchip PIC программатор PIC microchip PIC программатор PIC microchip Keeloq Keeloq Keeloq Keeloq
Atmel AVR Scenix EEPROM EPROM FLASH
«PICPROG»® V3 обеспечивает также возможность программирования целого ряда семейств, выпускаемых фирмой ATMEL:
AVR:
• AT90Sxxxx, ATmegaxxx(L), ATtinyxx(L,V)
MCS51 MCU:
• AT89Cx051, AT89C(LV)5x, AT87F(LV)5x, AT89(L)Sxxxx
Последовательные EEPROM:
• AT24Cxxx, AT34Cxx, AT93Cxx, AT25(HP)xxx
Параллельные EEPROM и Flash:
• AT28C(BV, HC, LV)xxx, AT29Cxxx, AT49(H)Fxxx
Atmel AVR Scenix EEPROM EPROM Flash Atmel AVR Scenix EEPROM EPROM Flash Atmel AVR Scenix EEPROM EPROM Flash Atmel AVR Scenix EEPROM EPROM Flash Atmel AVR Scenix EEPROM EPROM Flash Кроме того, «PICPROG»® позволяет программировать следующие типы устройств:
SCENIX Semiconductor Inc.
• SXxxxx
Angstrem
• An15Exx/KP1878BEx
Fairchild Semiconductor
• ACE1xxx(B,L)
INTEL Corp.
• 87C5x(Rx,Fx)
• Параллельные Flash: 28Fxxx
Philips Semiconductors
• P87C5x(Rx+,Fx)
Параллельные CMOS EPROM: 27C(LV)64/…/040
Последовательные и параллельные EEPROM/Flash:
• AMD — Am28/29Fxxx
• Macronix — MX28Fxxxx
• Mosel Vitelic — V29(L)C51/31xxx
• NexFlash — NX29Fxxx
• Ramtron — FM24C(L)xx, FM25(C,L,CL)xxx, FM1x(L)xx
• Samsung — KM29N(U, V, W)xxxxx
• SST — SST29EE(LE,VE)xxx, SST39SF(LF,VF)xxx
• ST Micro (SGS-Thomson) — ST(M)24/34/25/93/95xxxx, M28/29(C)Fxxx
• Toshiba — TC58Axxx
• Winbond — W29C(EE)xxx
• Xicor — X25(C)xxx
PIC-контроллеры PIC-контроллеры PIC-контроллеры PIC-контроллеры PIC-контроллеры PIC-контроллеры PIC-контроллеры PIC-контроллеры
Возможности «PICPROG»® позволяют отнести его к категории промышленных программаторов в отличие от подавляющего числа предлагаемых на российском рынке (в том числе популярного «PICSTART+»®, который относится к категории «development»). Это означает, в частности, что «PICPROG»® позволяет программировать и верифицировать микросхемы при различных напряжениях питания, повышая таким образом надёжность процесса программирования. Дело в том, что верификация микросхем при напряжении питания 5 В (как это делается в большинстве программаторов) не обеспечивает гарантии их работоспособности при других напряжениях. Представьте себе ситуацию: вы запрограммировали контроллер, проверили его при 5 В, прошили биты защиты, установили в устройство с напряжением питания 3 В — а устройство либо совсем не работает, либо работает с ошибками. В такой ситуации очень сложно найти причины неработоспособности устройства, не говоря уже о том, что записанный контроллер придётся просто выкинуть. Подобный же случай может произойти во время отладки, если JW-контроллер будет недостаточно стёрт. Для исключения подобных ситуаций и нужен промышленный программатор. «PICPROG»® может работать как совместно с IBM PC, так и автономно, когда после загрузки данных в энергонезависимую память программатора его можно отключить от компьютера и запрограммировать серию микросхем автономно. Это не только делает процесс серийного программирования более удобным, но и позволяет повысить конфиденциальность прошиваемого кода. В «PICPROG»® имеется ряд возможностей, предназначенных для удобства работающих в основном с отладочными (JW) кристаллами разработчиков устройств на PIC-контроллерах. Это, в частности, поддержка облегчённых режимов программирования микросхем, позволяющих существенно повысить их ресурс. Кроме того, поддерживается возможность записи защиты кода с возможностью её последующего стирания для всех типов PIC-контроллеров (включая последние модели с улучшенной защитой), что позволяет использовать их многократно, не опасаясь несанкционированного копирования. Программатор снабжён системой снятия защиты кода программы для микросхем PIC16C8x/16F8x. «PICPROG»® выполнен в виде полностью законченного устройства в элегантном корпусе, подключаемого к параллельному порту компьютера типа IBM PC в режиме, прозрачном для подключенного принтера. К достоинствам «PICPROG»® можно отнести также его универсальность, наличие одной ZIF–панели для любых DIP-корпусов (от 8 до 40 выводов), разъёма для внутрисхемного программирования. Программное обеспечение «PICPROG»® состоит из программы функционального контроля и двух версий управляющей программы, одна из которых предназначена в основном для пакетного режима программирования и работает в среде DOS или в DOS-окне Windows95/98. Вторая версия управляющей программы представляет собой графическую оболочку, работающую под управлением Windows95/98 или WindowsNT, тесно интегрированную как с самой ОС, так и с системой разработки MPLAB фирмы Microchip. Управляющие программы работают с файлами форматов BINARY, Intel HEX, Motorola S, Tektronix Hex, поддерживая информацию о конфигурации, генерируемую ассемблерами фирм Microchip, Parallax и TechTools. В комплекте с программатором поставляются кабель для связи с компьютером, управляющая программа, блок питания. К программатору бесплатно прилагается CD-ROM «Современные микроконтроллеры», содержащий более 600 Мб информации, включая фирменную документацию по различным микросхемам; бесплатные, условно-бесплатные и демо-версии многочисленных систем разработки для микроконтроллеров; примеры программирования и другую полезную для разработчиков электронной техники информацию. Фирма «Телесистемы» предлагает к программатору дополнительные аксессуары: адаптеры LPT > COM для подключения программатора к последовательному порту и переходники для программирования микросхем в различных корпусах. Номенклатура программируемых устройств и функциональные возможности программатора постоянно расширяются. Обновленные версии программного обеспечения всегда бесплатно доступны с вебсайта: http://www.telesys.ru. Поддержка пользователей также бесплатна и осуществляется по E-mail:
Архитектура | Размер пакета | В установленном виде | Файлы |
---|---|---|---|
alpha (неофициальный перенос) | 67,7 Кб | 218,0 Кб | [список файлов] |
amd64 | 68,3 Кб | 206,0 Кб | [список файлов] |
arm64 | 64,2 Кб | 201,0 Кб | [список файлов] |
armel | 63,3 Кб | 185,0 Кб | [список файлов] |
armhf | 63,8 Кб | 173,0 Кб | [список файлов] |
hppa (неофициальный перенос) | 67,4 Кб | 194,0 Кб | [список файлов] |
i386 | 69,9 Кб | 205,0 Кб | [список файлов] |
m68k (неофициальный перенос) | 66,7 Кб | 201,0 Кб | [список файлов] |
mips64el | 64,9 Кб | 213,0 Кб | [список файлов] |
mipsel | 65,0 Кб | 203,0 Кб | [список файлов] |
ppc64 (неофициальный перенос) | 67,1 Кб | 266,0 Кб | [список файлов] |
ppc64el | 67,6 Кб | 265,0 Кб | [список файлов] |
riscv64 (неофициальный перенос) | 65,3 Кб | 186,0 Кб | [список файлов] |
s390x | 63,5 Кб | 201,0 Кб | [список файлов] |
sh5 (неофициальный перенос) | 72,1 Кб | 193,0 Кб | [список файлов] |
sparc64 (неофициальный перенос) | 62,8 Кб | 204,0 Кб | [список файлов] |
x32 (неофициальный перенос) | 68,3 Кб | 193,0 Кб | [список файлов] |
Меня часто спрашивают, чем прошивать AVR-ки, поэтому тут решил выложить ссылки на программаторы. [Программаторы AVR с интерфейсом USB]
[Другие программаторы AVR, подключающиеся через COM и LPT] Эти программаторы уже не так актуальны сегодня, потому что в компьютерах и особенно в ноутбуках портов COM и LPT уже не встретишь.
AVR910 совместимые программаторы. AVR910 хорош тем, что поддерживается avrdude, Atmel AVR Studio и CodeVision, а протокол, схема и исходники firmware открыты. Плох тем, что изначально программатор разрабатывался для COM-порта, поэтому для прикручивания к USB нужен чип типа FT232, либо искать схему и прошивку на основе библиотеки V-USB (старое название AVR-USB). Клонов AVR910 расплодилось много. Вот несколько ссылок: – Программатор микроконтроллеров AVR / 89S совместимый с AVR910 (на основе V-USB. Автор PROTTOSS, чип ATmega8) STK200+/300 – совместимые программаторы [2]. Позволяют по очень простой схеме собрать программатор, подключаемый через порт LPT. Программатор Kanda Systems STK200/STK300 поддерживается многими оболочками для программирования: IC-Prog, PonyProg, UniProf, CodeVisionAVR C Compiler. Olimex. Хорошие, недорогие, компактные программаторы и отладчики AVR (с подключением по USB) предлагает компания Olimex [1]. Компания надежная, в Россию высылает быстро. [Ссылки] 1. Программаторы ISP и JTAG-отладчики компании Olimex. |
Простейший программатор JDM для PIC на пассивных компонентах
За основу предлагаемого программатора взята публикация из журнала «Радио» №2, 2004г, «Программирование современных PIC16, PIC12 на PonyProg». Это мой первый программатор, который я использовал для прошивки PIC микросхем дома. Программатор представляет собой упрощенный вариант JDM программатора, оригинальная схема имеет преобразователь RS-232 на TTL в виде микросхемы MAX232, она более универсальна, но ее «на коленке» уже не соберешь. Данная схема не имеет вообще ни одного активного компонента, не содержит дефицитных деталей и очень проста, может быть собрана без применения печатной платы.
Рис. 1: Принципиальная схема программатора.
Описание работы схемы
Схема программатора представлена на рис. 1. Резисторы по цепям CLK (тактирование), DATA (информационный), Upp (напряжение программирования) служат для ограничения протекающего тока. PIC контроллеры защищены от пробоя встроенными стабилитронами, поэтому получается некоторая совместимость TTL и RS-232 логики. В представленной схеме присутствуют диоды VD1, VD2, которые «отбирают» плюсовое напряжение от COM порта относительно 5 контакта и передают его на питание контроллера, благодаря чему в некоторых случаях удается избавиться от дополнительного источника питания.
Налаживание
На практике не всегда случается, что данный программатор заработает без налаживания, с 1-го раза, т.к. работа данной схемы сильно зависит от параметров COM порта. Однако у меня, на двух материнских платах Gigabyte 8IPE1000 и WinFast под XP все заработало сразу. Если Вам лень разбираться с неработающей, более сложной схемой программатора, то стоит попробовать собрать эту. Вот некоторые вещи, которые могут повлиять:
Чем новее мат. плата, тем разработчики уделяют этим портам меньше внимания, потому что эти порты давно стали морально устаревшими. Избавиться от этого можно, купив переходник USB-COM, правда опять же купленное устройство может не подойти. Нужные параметры таковы: изменяемое напряжение должно меняться не менее -10В до +10В (лог. 0 и 1) относительно 5-го контакта разъема. Отдааваемый ток должен быть хотя бы таким, чтобы при подключеннии резистора 2,7 кОм между 5-м контактом и исследуемым контактом напряжение не падало ниже 10В (сам таких плат не встречал). Также порт должен правильно определять напряжения, поступающие от контроллера, при уровне напряжения близкого к 0В, но не больше 2В определяется нуль, и соответственно при выше 2В определяется единица.
Также проблемы могут возникнуть из за программного обеспечения.
Особенно это касается ОС LINUX, т.к. из за наличия эмуляторов типа wine, VirtualBox порты могут работать неправильно, а возможностей от них требуется много. Этих проблем я коснусь подробнее в другой статье.
Зная эти особенности, приступим к налаживанию.
Для этого очень желательно иметь программу ICProg 1.05D.
В меню программы нужно во первых выбрать в настройках соотв. порт (COM1. COM2), выбрать JDM программатор. Затем открыть окно «Hardware Check», в меню «Settings». В этом меню нужно по очереди ставить галочки и вольтметром измерять напряжение на контактах подключенного разъема. Если параметры напряжения не соответствуют норме, то к сожалению, это может быть причиной неработоспособности, тогда придется собирать схему с преобразователем RS-232 TTL. Отметив все галочки, нужно убедиться, что на стабилитроне образуется напряжение питания около 5В. Если напряжения в норме и отсутствуют ошибки монтажа, то все должно сработать. Ставим контроллер в панельку, открываем прошивку, программируем. Галочки типа «Invert data out» включать не надо (все сняты). Также не нужно забывать, что некоторые партии контроллеров могут иметь не совсем стандартные параметры, и их прошить не получается, в таких случаях с данным программатором можно попробовать только снизить напряжение питания с 5В до 3-4В, подключив соотв. стабилитрон, посмотреть контроллер на предмет ошибочного включения режима LVP (низковольтное программирование), как предотвратить, можно прочитать в Интернете для конкретного типа контроллера. Повысить напряжение программирования проблеммного контроллера можно, наверное, только усложнив схему введением усилительного каскада с общим эмиттером, запитанного от дополнительного источника питания.
Теперь подробнее о проблеме с питанием устройства. Программатор тестировался с программами ICProg и консольным picprog под Linux, должен работать с любым, который поддерживает JDM, если подключить дополнительный источник питания (он подключается через резистор 1кОм к стабилитрону, диоды с резисторами в этом случае можно вообще исключить). Дело в том, что алгоритмы управления программаторов у отдельного софта разные, программа ICProg, является самой неприхотливой. Замечено, что в ОС Windows эта программа на неиспользуемом контакте 2 поднимала нужное напряжение питания, эта же программа под эмулятором в Linux на другой мат. плате уже не смогла этого сделать, однако выход был найден, отбирая питание из напряжения программирования. В общем, с ICProg, думаю, можно применять этот программатор без дополнительного питания. С другим софтом это гарантировать врядли получится, например, «родной» из репозиториев Ubuntu picprog без питания просто не определяет программатор, выдавая сообщение «JDM hardware not found». Вероятно, он либо принимает какие-то данные, не подавая напряжение программирования, либо делает это слишком быстро, таким образом что фильтрующий конденсатор еще не успевает зарядиться.
Это проект программиста PIC для программных микроконтроллеров PIC через параллельный порт ПК, которые поддерживают несколько программ, таких как EPICWin , WinPic800 , P18 и т. Д. На PCB есть два индикатора. Один для питания и один для программирования в процессе. Полная сборка схема Компонентная сторона Односторонняя печатная плата Поддержка устройств
Программное обеспечение, поддерживающее этот программист Это файл picprog для стороны компонента, сторона PCB и схема. Как вставить IC в гнездо ZIP Как использовать с EPICWin Чтобы использовать этот программист PIC с EPICWin, сначала у вас должно быть программное обеспечение EPICWin, которое доступно на сайте Melabs.com. После того, как вы загрузите программное обеспечение, установите его как описание в руководстве. Для Windows XP / 2000 / NT вы должны установить драйвер: Чтобы удалить драйвер. Примечание. Если вы используете Windows XP, вы должны остановить Windows XP от опроса порта принтера Теперь вы можете использовать этого программиста, дважды щелкнув файл epicwin.exe, если программист не подключен к параллельному порту, у вас появится предупреждающее сообщение «PIC Programmer. Не обнаружена” Если у вас есть сообщение «невозможно запустить драйвер PICLPTNT error xx hex (xx)» при запуске EPICWin, это произойдет, потому что вы не включаете параллельный порт в BIOS. Я нашел эту проблему с некоторой материнской платой модели, потому что он выбрал отключить параллельный порт как defualt или когда у вас установлена прошивка новой версии BIOS. Как использовать с winPic800 Чтобы использовать этот проект с winPic800, вы должны установить оборудование как следующее изображение. Эта схема совместима с оборудованием propic2, поэтому она была выбрана. Затем установите флажок, как показано на рисунке выше, и нажмите «Применить изменения». |
Описание лабораторного стенда — Студопедия
Принципиальная схема системы на базе микроконтроллера PIC16F877 показана на рис. 6. Генератор тактовых импульсов для микроконтроллера PIC16F877 (микросхема DD1) реализован на кварцевом резонаторе ZQ1 и двух конденсаторах С1 и С2. Для запуска контроллера при подаче питающего напряжения к входу MCLR (ножка 1) подключено питание через ограничивающий резистор R1. К ножке 40 МК подключен светодиод D1 и ограничивающий резистор R2.
Рис. 6. Принципиальная схема системы на базе микроконтроллера PIC16F877
В состав лабораторного комплекса также входит персональный компьютер с установленной на нем средой разработки программ для контроллеров Microchip MPLAB и программатор PICPROG для программирования микроконтроллера (рис.7).
Рис. 7. Лабораторный комплекс
Постановка задачи
Необходимо разработать и протестировать программу для микроконтроллера, обеспечивающую мигание светодиода D1 с частотой 1 Гц.
Порядок выполнения работы
1. Разработка алгоритма работы МК.
2. Написание программы на языке ассемблера в соответствии с алгоритмом.
3. Набор и отладка программы в среде MPLAB.
4. Программирование МК с помощью программатора.
5. Проверка корректности работы программы в системе.
Отчет
Отчет включает в себя:
1. Постановку задачи.
2. Описание системы.
3. Алгоритм программы.
4. Текст программы.
Литература
1. Основы микропроцессорной техники. /Новиков Ю.В., Скоробогатов П.К. – М:ИНТУИТ.РУ «Интернет-Университет Информационных технологий», 2003. – 440 с.
2. Ульрих В.А. Микроконтроллеры PIC16C7X.Семейство восьмиразрядных КМОП микроконтроллеров с аналого-цифровым преобразователем.-СПб.:Наука и техника,2000.-253 с.
3. PIC16F87x: Однокристальные 8-миразрядные FLASH CMOS микроконтроллеры компании Microchip Technology Incorporated. – http://www.microchip.ru, 2002 – 184 с.
4. MPLAB IDE: Интегрированная среда разработки для микроконтроллеров PICmicro компании Microchip Technology Incorporated. – http://www.microchip.ru, 2001 – 156 c.
5. MPMASM: Руководство пользователя. http://www.microchip.ru, 2000 – 62 с.
Содержание
Введение | 3 |
Цель работы: | 3 |
Характеристика микроконтроллера PIC16F877 | 3 |
Аппаратная составляющая микроконтроллера | 4 |
Архитектура микроконтроллера | 4 |
Организация памяти команд | 7 |
Организация памяти данных | 8 |
Периферийный модуль – порт ввода/вывода PORTB | 10 |
Программная составляющая микроконтроллера | 11 |
Система команд микроконтроллера | 11 |
Рекомендуемая структура программы для микроконтроллера PIC16F877 | 14 |
Описание лабораторного стенда | 15 |
Постановка задачи | 16 |
Порядок выполнения работы | 16 |
Отчет | 17 |
Литература | 17 |
В качестве элементарного программатора предлагаем вам собрать по авторской схеме JDM совместимый программатор, который мы назвали NTV программатор. Ниже схема NTV программатора (используется розетка DB9; не путать с вилкой). Собранный по данный схеме программатор многократно и безошибочно прошивал контроллеры , (и ряд других) и может быть рекомендован для повторения начинающим радиолюбителям. Данный программатор НЕ РАБОТАЕТ при подключении к ноутбукам, т.к. уровни сигналов интерфейса RS-232 (COM-порт) в мобильных системах занижены. Также он может не работать на современных ПК, где аппаратно экономится ток на порту. Так что не обессудьте, собирайте и проверяйте на всех попавшихся под руку компьютерах. Конструктивно плата программатора вставляется между контактами разъема DB-9, которые подпаиваются к контактным площадкам печатной платы. Ниже рисунок платы и фотография собранного программатора. Для полноты информации следует сказать, что есть еще один подобный программатор, который я собирал под микроконтроллеры в 8 выводном корпусе ( и ). Программатор также великолепно работает и с этими микроконроллерами. Ниже рисунок платы и фотографии. Какие первые шаги должен сделать радиолюбитель, решивший собрать схему на микроконтроллере? Естественно, необходима управляющая программа – “прошивка”, а также программатор. И если с первым пунктом нет проблем – готовую “прошивку” обычно выкладывают авторы схем, то вот с программатором дела обстоят сложнее. Цена готовых USB-программаторов довольно высока и лучшим решением будет собрать его самостоятельно. Вот схема предлагаемого устройства (картинки кликабельны). Основная часть. Панель установки МК. Исходная схема взята с сайта LabKit.ru с разрешения автора, за что ему большое спасибо. Это так называемый клон фирменного программатора PICkit2. Так как вариант устройства является “облегчённой” копией фирменного PICkit2, то автор назвал свою разработку PICkit-2 Lite , что подчёркивает простоту сборки такого устройства для начинающих радиолюбителей. Что может программатор? С помощью программатора можно будет прошить большинство легкодоступных и популярных МК серии PIC (PIC16F84A, PIC16F628A, PIC12F629, PIC12F675, PIC16F877A и др.), а также микросхемы памяти EEPROM серии 24LC. Кроме этого программатор может работать в режиме USB-UART преобразователя, имеет часть функций логического анализатора. Особо важная функция, которой обладает программатор – это расчёт калибровочной константы встроенного RC-генератора некоторых МК (например, таких как PIC12F629 и PIC12F675). Необходимые изменения.В схеме есть некоторые изменения, которые необходимы для того, чтобы с помощью программатора PICkit-2 Lite была возможность записывать/стирать/считывать данные у микросхем памяти EEPROM серии 24Cxx. Из изменений, которые были внесены в схему. Добавлено соединение от 6 вывода DD1 (RA4) до 21 вывода ZIF-панели. Вывод AUX используется исключительно для работы с микросхемами EEPROM-памяти 24LС (24C04, 24WC08 и аналоги). По нему передаются данные, поэтому на схеме панели программирования он помечен словом “Data”. При программировании микроконтроллеров вывод AUX обычно не используется, хотя он и нужен при программировании МК в режиме LVP. Также добавлен “подтягивающий” резистор на 2 кОм, который включается между выводом SDA и Vcc микросхем памяти. Все эти доработки я уже делал на печатной плате, после сборки PICkit-2 Lite по исходной схеме автора. Микросхемы памяти 24Cxx (24C08 и др.) широко используются в бытовой радиоаппаратуре, и их иногда приходится прошивать, например, при ремонте кинескопных телевизоров. В них память 24Cxx применяется для хранения настроек. В ЖК-телевизорах применяется уже другой тип памяти (Flash-память). О том, как прошить память ЖК-телевизора я уже рассказывал . Кому интересно, загляните. В связи с необходимостью работы с микросхемами серии 24Cxx мне и пришлось “допиливать” программатор. Травить новую печатную плату я не стал, просто добавил необходимые элементы на печатной плате. Вот что получилось. Ядром устройства является микроконтроллер PIC18F2550-I/SP . Это единственная микросхема в устройстве. МК PIC18F2550 необходимо “прошить”. Эта простая операция у многих вызывает ступор, так как возникает так называемая проблема “курицы и яйца”. Как её решил я, расскажу чуть позднее. Список деталей для сборки программатора. В мобильной версии потяните таблицу влево (свайп влево-вправо), чтобы увидеть все её столбцы.
Теперь немного о деталях и их назначении. Зелёный светодиод HL1 светится, когда на программатор подано питание, а красный светодиод HL2 излучает в момент передачи данных между компьютером и программатором. Для придания устройству универсальности и надёжности используется USB-розетка XS1 типа “B” (квадратная). В компьютере же используется USB-розетка типа “А”. Поэтому перепутать гнёзда соединительного кабеля невозможно. Также такое решение способствует надёжности устройства. Если кабель придёт в негодность, то его легко заменить новым не прибегая к пайке и монтажным работам. В качестве дросселя L1 на 680 мкГн лучше применить готовый (например, типов EC24 или CECL). Но если готовое изделие найти не удастся, то дроссель можно изготовить самостоятельно. Для этого нужно намотать 250 – 300 витков провода ПЭЛ-0,1 на сердечник из феррита от дросселя типа CW68. Стоит учесть, что благодаря наличию ШИМ с обратной связью, заботиться о точности номинала индуктивности не стоит. Напряжение для высоковольтного программирования (Vpp) от +8,5 до 14 вольт создаётся ключевым стабилизатором. В него входят элементы VT1, VD1, L1, C4, R4, R10, R11. С 12 вывода PIC18F2550 на базу VT1 поступают импульсы ШИМ. Обратная связь осуществляется делителем R10, R11. Чтобы защитить элементы схемы от обратного напряжения с линий программирования в случае использования USB-программатора в режиме внутрисхемного программирования ICSP (In-Circuit Serial Programming) применён диод VD2. VD2 – это диод Шоттки . Его стоит подобрать с падением напряжения на P-N переходе не более 0,45 вольт. Также диод VD2 защищает элементы от обратного напряжения, когда программатор применяется в режиме USB-UART преобразования и логического анализатора. При использовании программатора исключительно для программирования микроконтроллеров в панели (без применения ICSP), то можно исключить диод VD2 полностью (так сделано у меня) и установить вместо него перемычку. Компактность устройству придаёт универсальная ZIF-панель (Zero Insertion Force – с нулевым усилием установки). Благодаря ей можно “зашить” МК практически в любом корпусе DIP. На схеме “Панель установки микроконтроллера (МК)” указано, как необходимо устанавливать микроконтроллеры с разными корпусами в панель. При установке МК следует обращать внимание на то, чтобы микроконтроллер в панели позиционируется так, чтобы ключ на микросхеме был со стороны фиксирующего рычага ZIF-панели. Вот так нужно устанавливать 18-ти выводные микроконтроллеры (PIC16F84A, PIC16F628A и др.). А вот так 8-ми выводные микроконтроллеры (PIC12F675, PIC12F629 и др.). Если есть нужда прошить микроконтроллер в корпусе для поверхностного монтажа (SOIC), то можно воспользоваться переходником или просто подпаять к микроконтроллеру 5 выводов, которые обычно требуются для программирования (Vpp, Clock, Data, Vcc, GND). Готовый рисунок печатной платы со всеми изменениями вы найдёте по ссылке в конце статьи. Открыв файл в программе Sprint Layout 5.0 можно с помощью режима “Печать” не только распечатать слой с рисунком печатных проводников, но и просмотреть позиционирование элементов на печатной плате. Обратите внимание на изолированную перемычку, которая связывает 6 вывод DD1 и 21 вывод ZIF-панели. Печатать рисунок платы необходимо в зеркальном отображении . Изготовить печатную плату можно методом ЛУТ, а также маркером для печатных плат , с помощью цапонлака (так делал я) или “карандашным” методом . Вот рисунок позиционирования элементов на печатной плате (кликабельно). При монтаже первым делом необходимо запаять перемычки из медного лужёного провода, затем установить низкопрофильные элементы (резисторы, конденсаторы, кварц, штыревой разъём ISCP), затем транзисторы и запрограммированный МК. Последним шагом будет установка ZIF-панели, USB-розетки и запайка провода в изоляции (перемычки). “Прошивка” микроконтроллера PIC18F2550.Файл “прошивки” – PK2V023200.hex необходимо записать в память МК PIC18F2550I-SP при помощи любого программатора, который поддерживает PIC микроконтроллеры (например, Extra-PIC). Я воспользовался JDM Programmator’ом JONIC PROG и программой WinPic800 . Залить “прошивку” в МК PIC18F2550 можно и с помощью всё того же фирменного программатора PICkit2 или его новой версии PICkit3. Естественно, сделать это можно и самодельным PICkit-2 Lite, если кто-либо из друзей успел собрать его раньше вас:). Также стоит знать, что “прошивка” микроконтроллера PIC18F2550-I/SP (файл PK2V023200.hex ) записывается при установке программы PICkit 2 Programmer в папку вместе с файлами самой программы. Примерный путь расположения файла PK2V023200.hex – «C:\Program Files (x86)\Microchip\PICkit 2 v2\PK2V023200.hex» . У тех, у кого на ПК установлена 32-битная версия Windows, путь расположения будет другим: «C:\Program Files\Microchip\PICkit 2 v2\PK2V023200.hex» . Ну, а если разрешить проблему “курицы и яйца” не удалось предложенными способами, то можно купить уже готовый программатор PICkit3 на сайте AliExpress. Там он стоит гораздо дешевле. О том, как покупать детали и электронные наборы на AliExpress я писал . Обновление “прошивки” программатора.Прогресс не стоит на месте и время от времени компания Microchip выпускает обновления для своего ПО, в том числе и для программатора PICkit2, PICkit3. Естественно, и мы можем обновить управляющую программу своего самодельного PICkit-2 Lite. Для этого понадобится программа PICkit2 Programmer. Что это такое и как пользоваться – чуть позднее. А пока пару слов о том, что нужно сделать, чтобы обновить “прошивку”. Для обновления ПО программатора необходимо замкнуть перемычку XT1 на программаторе, когда он отключен от компьютера. Затем подключить программатор к ПК и запустить PICkit2 Programmer. При замкнутой XT1 активируется режим bootloader для загрузки новой версии прошивки. Затем в PICkit2 Programmer через меню “Tools” – “Download PICkit 2 Operation System” открываем заранее подготовленный hex-файл обновлённой прошивки. Далее произойдёт процесс обновления ПО программатора. После обновления нужно отключить программатор от ПК и снять перемычку XT1. В обычном режиме перемычка разомкнута . Узнать версию ПО программатора можно через меню “Help” – “About” в программе PICkit2 Programmer. Это всё по техническим моментам. А теперь о софте. Работа с программатором. Программа PICkit2 Programmer.Для работы с USB-программатором нам потребуется установить на компьютер программу PICkit2 Programmer. Это специальная программа обладает простым интерфейсом, легко устанавливается и не требует особой настройки. Стоит отметить, что работать с программатором можно и с помощью среды разработки MPLAB IDE, но для того, чтобы прошить/стереть/считать МК достаточно простой программы – PICkit2 Programmer. Рекомендую. После установки программы PICkit2 Programmer подключаем к компьютеру собранный USB-программатор. При этом засветится зелёный светодиод (“питание”), а операционная система опознает устройство как “PICkit2 Microcontroller Programmer” и установит драйвера. Запускаем программу PICkit2 Programmer. В окне программы должна отобразиться надпись. Если программатор не подключен, то в окне программы отобразится страшная надпись и краткие инструкции “Что делать?” на английском. Если же программатор подключить к компьютеру с установленным МК, то программа при запуске определить его и сообщит нам об этом в окне PICkit2 Programmer. Поздравляю! Первый шаг сделан. А о том, как пользоваться программой PICkit2 Programmer, я рассказал в отдельной статье. Следующий шаг . Необходимые файлы: Однажды я решил собрать несложный LC-метр на pic16f628a и естественно его надо было чем-то прошить. Раньше у меня был компьютер с физическим com-портом, но сейчас в моём распоряжении только usb и плата pci-lpt-2com. Для начала я собрал простой JDM программатор, но как оказалось ни с платой pci-lpt-com, ни с usb-com переходником он работать не захотел (низкое напряжение сигналов RS-232). Тогда я бросился искать usb программаторы pic, но там, как оказалось всё ограничено использованием дорогих pic18f2550/4550, которых у меня естественно не было, да и жалко такие дорогие МК использовать, если на пиках я очень редко что-то делаю (предпочитаю авр-ы, их прошить проблем не составляет, они намного дешевле, да и программы писать мне кажется, на них проще). Долго копавшись на просторах интернета в одной из множества статей про программатор EXTRA-PIC и его всевозможные варианты один из авторов написал, что extrapic работает с любыми com-портами и даже переходником usb-com. В схеме данного программатора используется преобразователь логических уровней max232. Я подумал, если использовать usb адаптер, то будет очень глупо делать два раза преобразование уровней usb в usart TTL, TTL в RS232, RS232 обратно в TTL, если можно просто взять TTL сигналы порта RS232 из микросхемы usb-usart преобразователя. Так и сделал. Взял микросхему Ch440G (в которой есть все 8 сигналов com-порта) и подключил её вместо max232. И вот что получилось. В моей схеме есть перемычка jp1, которой нет в экстрапике, её я поставил потому что, не знал, как себя поведёт вывод TX на ТТЛ уровне, поэтому сделал возможность его инвертировать на оставшемся свободном элементе И-НЕ и не прогадал, как оказалось, напрямую на выводе TX логическая единица, и поэтому на выводе VPP при включении присутствует 12 вольт, а при программировании ничего не будет (хотя можно инвертировать TX программно). После сборки платы пришло время испытаний. И тут настало главное разочарование. Программатор определился сразу (программой ic-prog) и заработал, но очень медленно! В принципе – ожидаемо. Тогда в настройках com порта я выставил максимальную скорость (128 килобод) начал испытания всех найденных программ для JDM. В итоге, самой быстрой оказалась PicPgm. Мой pic16f628a прошивался полностью (hex, eeprom и config) плюс верификация где-то 4-6 минут (причём чтение идёт медленнее записи). IcProg тоже работает, но медленнее. Ошибок про программировании не возникло. Также я попробовал прошить eeprom 24с08, результат тот же – всё шьёт, но очень медленно. Выводы: программатор достаточно простой, в нём нет дорогостоящих деталей (Ch440 – 0.3-0.5$ , к1533ла3 можно вообще найти среди радиохлама), работает на любом компьютере, ноутбуке (и даже можно использовать планшеты на windows 8/10). Минусы: он очень медленный. Также он требует внешнее питание для сигнала VPP. В итоге, как мне показалось, для нечастой прошивки пиков – это несложный для повторения и недорогой вариант для тех, у кого нет под рукой древнего компьютера с нужными портами. Вот фото готового девайса: Как поётся в песне “я его слепила из того, что было”. Набор деталей самый разнообразный: и smd, и DIP. Для тех, кто рискнёт повторить схему, в качестве usb-uart конвертера подойдёт почти любой (ft232, pl2303, cp2101 и др), вместо к1533ла3 подойдёт к555, думаю даже к155 серия или зарубежный аналог 74als00, возможно даже будет работать с логическими НЕ элементами типа к1533лн1. Прилагаю свою печатную плату, но разводка там под те элементы, что были в наличии, каждый может перерисовать под себя. Список радиоэлементов
|
usbpicprog
Дом
Добро пожаловать в usbpicprog, программатор Microchip PIC с открытым исходным кодом для порта USB. Термин «открытый исходный код» подразумевает, что конструкция оборудования, программное обеспечение и прошивка доступны для бесплатной загрузки.
Usbpicprog – это USB-программатор для процессоров Microchip PIC. Аппаратное обеспечение максимально простое, текущая версия содержит только один PIC18F2550, 4 МОП-транзистора и, помимо разъемов, множество пассивных компонентов.
7 февраля 2009 года Франс Шройдер сделал презентацию о usbpicprog на Fosdem, Европейском собрании разработчиков свободного и открытого исходного кода. Видео доступно здесь: |
|
Компоненты
Usbpicprog состоит из трех основных компонентов, которые можно найти на странице загрузки:
- Аппаратное обеспечение – конструкция печатной платы, которая содержит необходимые компоненты для взаимодействия от порта USB с заголовком Microchip ICSP (в последовательном программировании схемы).
- Firmware– Программное обеспечение, которое работает на процессоре на печатной плате. Он содержит структуру USB, а также функции высокого и низкого уровня для PIC в схемотехническом программировании. Микропрограмму также можно разделить на две части:
- Загрузчик (загрузчик Microchip Picdem) должен быть загружен только один раз, после чего эту часть прошивки можно обновить через интерфейс usbpicprog.
- Часть прошивки usbpicprog содержит актуальные алгоритмы программирования для всех реализованных устройств PIC.
Программное обеспечение - для ПК – приложение на основе wxWidgets (кросс-платформенное) для связи с оборудованием / прошивкой usbpicprog. Известно, что это приложение хорошо работает в Linux, Windows (XP или более поздних версиях) и Macosx.
Дизайн оборудования открытый и бесплатный для лиц, имеющих собственное производство печатных плат. Оборудование больше нельзя заказать через этот сайт.
Статус
В настоящее время выпущена версия печатной платы (v0.3.2).
Встроенное программное обеспечение выпущено как версия 0.6.0, но предстоит еще много работы. Реализованные PIC можно найти в разделе поддерживаемых устройств.
Выпущена версия 0.6.0 приложения для ПК, проверьте страницу загрузки! Это приложение для ПК хорошо работает в Linux (сборки Ubuntu для amd64 и i386 доступны в личном архиве пакетов. Инструкции см. На странице загрузки), Windows и Mac OS X.
PicProg – PIC Programmer скачать
Полное имя
Телефонный номер
Название работы
Промышленность
Компания
Размер компании Размер компании: 1 – 2526 – 99100 – 499500 – 9991,000 – 4,9995,000 – 9,99910,000 – 19,99920,000 или более
Получайте уведомления об обновлениях для этого проекта.Получите информационный бюллетень SourceForge. Получайте информационные бюллетени и уведомления с новостями сайта, специальными предложениями и эксклюзивными скидками на ИТ-продукты и услуги.Да, также присылайте мне специальные предложения о продуктах и услугах, касающихся:
Программное обеспечение для бизнеса Программное обеспечение с открытым исходным кодом Информационные технологии Программирование Аппаратное обеспечениеВы можете связаться со мной через:
Электронная почта (обязательно) Телефон SMS Я согласен получать эти сообщения от SourceForge.сеть. Я понимаю, что могу отозвать свое согласие в любое время. Пожалуйста, обратитесь к нашим Условиям использования и Политике конфиденциальности или свяжитесь с нами для получения более подробной информации. Я согласен получать эти сообщения от SourceForge.net указанными выше способами. Я понимаю, что могу отозвать свое согласие в любое время. Пожалуйста, обратитесь к нашим Условиям использования и Политике конфиденциальности или свяжитесь с нами для получения более подробной информации. Для этой формы требуетсяJavaScript.
ПодписатьсяКажется, у вас отключен CSS.Пожалуйста, не заполняйте это поле.
Кажется, у вас отключен CSS. Пожалуйста, не заполняйте это поле.
Бесплатное программное обеспечение для программирования различные микроконтроллеры MicroChip PIC от Найджела Гудвина.подписок изменение имени на WinPicProg Теперь я купил доменное имя winpicprog.co.uk, поэтому все будущие обновления будут проходить по этому адресу, с ссылки с моих старых страниц.Я счастлив чтобы попытаться помочь с любыми проблемами людей, либо через электронная почта или (предпочтительно) через новый форум поддержки PHPBB, где другие пользователи сможет воспользоваться ответами. Я добавил страницу часто задаваемых вопросов в форум поддержки, и первая остановка с любыми вопросами должна быть там !, все пользователи должны зарегистрироваться, и они будут отправлены по электронной почте, когда обновления происходят. Я было много запросов на принципиальную схему для программиста, так что вы можете скачать диаграмму для P16PRO40 программист, это прекрасно работает с моим программным обеспечением и является одним из программисты использую.Вы можете заказать его как полный комплект в Dontronics. Мне прислали макеты печатных плат для пары модифицированных версий P16PRO40, вы можете скачать подробную информацию о том, как их построить, Ozipic Мартина Сниедзе и P16PRO от Карлье Патрика, у Карлье есть предложил сделать небольшое количество досок доступным, вы можете связаться с ним на [email protected]. при одно время было доступно множество комплектов P16PRO40 (и других), но они, кажется, почти исчезли.К счастью, я получил письмо от джентльмен по имени “Гаджар Динеш” из Индии, который сейчас продает параллельный порт ICSP программист, и он любезно прислал мне образец для оценки. Он отправил комплект 25 августа, и я получил его 30 августа, что, как я думал, было довольно хорошо, учитывая, что это были выходные и праздничный понедельник !. В комплект входит очень качественная печатная плата (которую можно заказать отдельно), и все необходимые компоненты, и на установку ушло около получаса вместе. Вы можно заказать комплект со своего веб-сайта по адресу http://products.foxdelta.com/icp.htm, это FD-ICP, а еще он прислал мне дополнительную “плату адаптера программирования”, которая позволяет вам использовать это как обычный (не ICSP) программист – я бы посоветовал вам заказать это как Что ж. Кому используйте FD-ICP, вам необходимо установить WinPicProg в режим «Custom Hardware» и установите это так, мне также пришлось установить задержку Vpp примерно на 5 мс, это из-за импульса сброса, генерируемого на плате программатора – вы можете нужно поэкспериментировать с этой настройкой.Импульс сброса является важной частью ISCP, и это основная причина, по которой программисты, не использующие ICSP, не работают с ICSP.
Это это последняя версия моей серии PicProg, она претерпела достаточно кардинальные изменения, и теперь я добавил поддержку ограниченного диапазона основанных на EPROM PIC, в частности 12C508 / 9, 12C671 / 2 и 16C505.Потому что из увеличенного количества поддерживаемых чипов я заменил процессор выберите в раскрывающемся списке. Эти поддерживаемые PIC EPROM: единственные, которые у меня сейчас есть версии JW (УФ-стираемые), если кто-нибудь хочет добавить конкретный чип, я готов изучить его добавление, но был бы признателен за отправку на тестирование стираемого чипа (так как 16C505JW было – спасибо Джин!). У меня не было времени обновить файл справки для пока честно, поэтому он больше не включен в загрузку программы.Ты можете скачать последнюю версию файла справки отсюда Загрузите HelpFile. Этот на картинке показан главный экран, настроенный для записи на PIC12C672, с файлом уже загружен, а имя файла отображается вверху. Как и 12C672 не имеет встроенной области данных EEPROM, буферная область справа сторона руки пуста. Кроме того, поскольку это микросхема EPROM, поле «Blank Chk» виден, поскольку это проверено (настройка по умолчанию), чип будет проверяться для пустого значения перед программированием – любые проблемы с сохраненным осциллятором Значения калибровки приведут к запросу с запросом ответа Да / Нет. прежде чем продолжить.Если вы хотите изменить только несколько байтов (очевидно, только единица в нули), вы можете сделать это, сняв флажок “Blank Chk”, После этого можно записать уже запрограммированный чип без каких-либо проверок. С добавление 12-битных микросхем EPROM, которые мне пришлось расширить дизассемблер, теперь он справляется как с 12-битным, так и с 14-битным кодом, теперь он также может отображать исходные файлы большего размера, и я добавил много больший диапазон меток регистров и флагов, похоже, он работает очень хорошо – как обычно, я буду рад услышать о любых проблемах или предложения.Одна «проблема», которую я уже знаю (и на самом деле не вижу удовлетворительное разрешение для!) – это разборка инструкций Org в 12 битовый код, с 14-битным кодом я делаю это, проверяя наличие пустого байта ($ 3FFF), но с 12-битным кодом пустой байт ($ FFF) является действительной инструкцией xorlw 0xff ‘, который удивительным образом использовался в первом коде, который я пробовал! все будет в порядке, он будет демонтирован как организационная ветвь, но все равно собрать и запустить как обычно. Следующий предыдущий предложения пользователей Я добавил несколько новых возможностей, во-первых, я добавил Параметр «Открыть заново» в меню «Файл» отображает последние 5 файлов, которые вы загружены, что позволяет выбирать их одним щелчком мыши или удерживая клавишу Ctrl и нажимая цифры от 1 до 5 – это отображается ясно на картинке слева.Во-вторых, Я добавил опцию «Автообновление» в меню «Параметры», когда она включена, проверяет наличие изменение загруженного шестнадцатеричного файла – если он изменится, вам будет предложено перезагрузить его. Тем не мение! – если у вас также выбрано «Auto-Prog», он автоматически перезагрузите измененный файл и взорвите чип – без вмешательства пользователя (очевидно, чтобы это работало, вам понадобится микросхема в программаторе!). Я был часто использую это в последнее время – это очень упрощает жизнь – отредактируйте исходный файл в обычном редакторе и сохраните его на диск, запустите MPASM для файла, чтобы произвести.HEX файл, а затем загрузить файл в программатор и взорвать чип (пока ничего нового!). Убедитесь, что установлен флажок «Автообновление» и «Auto Prog» отмечен флажком, затем вы можете свернуть WinPicProg. Решив программное обеспечение требует доработки, вставьте чип обратно в программатор (сначала стирая УФ-чип), отредактируйте исходный код с помощью редактора и сохраните на диск, запустите MPASM, убедитесь, что редактируемый файл выбран, и нажмите «Собрать» – предполагая, что MPASM не обнаруживает ошибок, файл.HEX файл будет обновлено, WinPicProg обнаружит изменение, перезагрузит файл и удалит ПОС. Windows 2000 – было несколько проблемы с программой под Windows 2000, есть проблемы с загрузкой файлы, и выдает ошибку с отображением символа ‘$’. Я не знаю почему это происходит до 2000 года, но я изучаю его, когда позволяет время, а пока вы выберете Вкладка «HEX File» перед загрузкой файла работает нормально. Обновление: ноябрь 2002 г. – В версии 1.91 Теперь я разобрал проблемы под Windows XP, что также должно вылечить та же проблема под NT и 2000. Я также добавил поддержку еще пары чипов (12F629 и 12F675) и добавлен параметр меню для отключения автоматическое определение оборудования. я сохраняют авторские права на все программы, но они могут быть свободно загружены и распространяется до тех пор, пока не взимается плата. Это означает, что они НЕ МОГУТ быть распространяется через BBS по телефонным номерам с повышенным тарифом (RIP-OFF!). |
PicProg – Coolcircuit.com
Карманный программатор PIC (PP-Prog)
Это проект программиста PIC для программирования устройств микроконтроллера PIC через параллельный порт ПК, который поддерживает несколько программ, таких как EPICWin , WinPic800 , P18 и т. Д.На плате есть два светодиода: один указывает на питание, а другой – на процесс программирования.
Сборка в сборе
Схема
Сторона компонентов
Печатная плата односторонняя
Поддержка устройств
- 6 PIN : 10F200,10F202,10F204,10F206 и более
- 8 PIN : 12C508, 12C508A, 12C509, 12C509A, 12C671, 12C672, 12CE518, 12CE519, 12CE673, 12CE674, 12F629, 12F675 и другие
- 18 контактов : 1616C554, 16C558, 16C620, 16C620A, 16C621, 16C621A, 16C622, 16C622A, 16C61, 16C71, 16CE623, 16CE624, 16CE625, 16F627, 16F628, 16C710, 16C710, 16F628, 16C71084, 16F628 16C715, 16C716, 16C717, 16F83, 16C505 и другие
- 28 PIN : 16C62, 16C62A, 16C62B, 16C63, 16C63A, 16C66, 16C642, 16C662, 16C72, 16C72A, 16C73, 16C73A, 16C73B, 16C73C, 16C745, 16C76, 16C76A873F, 16C773, 16C773, 16C773, 16C76F72, 16C773 16F876, 16F873A, 16F876A, 18C242, 18F242, 18C252, 18F252 и другие
- 40-контактный : 16C65, 16C65A, 16C65B, 16C64, 16C64A, 16C64B, 16C67, 16C74, 16C74A, 16C74B, 16C74C, 16C765, 16C77, 16C77A, 16C774, 16F871, 16F874, 16F8248F778F778F, 16F877F 18C442, 18F442, 18F448, 18C452, 18F452, 18F458 и другие
- dsPIC: dsPIC30F2010, dsPIC30F2011, dsPIC30F2012, dsPIC30F3010, dsPIC30F3011,
dsPIC30F3012, dsPIC30F3014 и другие - rfPIC: rfPIC12F509, rfPIC12F675
Программное обеспечение, поддерживающее этот программатор
Существует несколько программ, поддерживающих этот программатор PIC, например EpicWin, WinPic800, ProPIC18 и т. Д.Каждое программное обеспечение может поддерживать разные устройства. Например, EpicWin поддерживает
PIC12F, PIC16F и некоторые PIC18F и может работать во всех окнах. Но Winpic800 поддерживает PIC12F, PIC16F, PIC18F, включая dsPic (при настройке оборудования как ProPIC2), а ProPIC18 поддерживает только PIC18F и работает во всех окнах.
Это файл программы для компонентов, печатной платы и схемы.
Как вставить микросхему в гнездо ZIP
Как использовать с EPICWin
Чтобы использовать этот программатор PIC с EPICWin, сначала у вас должно быть программное обеспечение EPICWin, доступное от Melabs.com. После загрузки программного обеспечения установите его, как описано в руководстве.
Для Windows XP / 2000 / NT необходимо установить драйвер:
Пуск -> Выполнить -> C: \ epicwin \ NTINST.EXE / установить
Удалить драйвер.
Пуск -> Выполнить -> C: \ epicwin \ NTINST.EXE / удалить
Примечание: Если вы используете Windows XP, вы должны остановить Windows XP от опроса порта принтера:
загрузит файл записи реестра с Melabs.com и объединит его с вашим реестром XP. После загрузки этого файла, чтобы добавить его в реестр, просто дважды щелкните по нему файл, выберите «Да» и «ОК».
Загрузите XP_stop_polling.рег
Теперь вы можете использовать этот программатор, дважды щелкнув по epicwin.exe, если программатор не подключен к параллельному порту, вы получите предупреждающее сообщение «Программист PIC». Не найдено »
Если при запуске EPICWin появляется сообщение «Не удается запустить драйвер PICLPTNT error xx hex (xx)», это происходит потому, что вы не включили параллельный порт в BIOS. Я обнаружил эту проблему с некоторыми моделями материнской платы, потому что она выбрала отключение параллельного порта по умолчанию или когда у вас установлена прошивка BIOS новой версии.
Как использовать с winPic800
Чтобы использовать этот проект с winPic800, вы должны установить оборудование, как показано на следующем рисунке.
Эта схема совместима с оборудованием propic2, поэтому она была выбрана. Затем установите все флажки, как на картинке выше, и нажмите Применить изменения.
Самый простой способ программирования и чтения микроконтроллера PIC16F84 с помощью SW3ORA
Самый простой способ программирования и чтения микроконтроллера PIC16F84 с помощью SW3ORAСамый простой способ программирования и прочитать PIC16F84A MCU
по SV3ORA
Многие из ваших проектов со временем может включать микроконтроллеры программирования.Прежде чем я узнаю о микроконтроллерах, Я всегда старался не использовать их в своих проектах, потому что думал, что быть очень сложным. Очевидно, я ошибался. Отрицать это или нет, но микроконтроллеры могут предложить гораздо большие возможности по огромная доля места и стоимости. Дизайнер должен больше сосредоточиться на написании программное обеспечение для функции, которую он хочет реализовать, а не создавать фактические схема.
PIC16F84A – отличный маленький MCU и огромное количество проектов свободно доступно в Интернете, которые используют этот чип.В настоящее время он является устаревшим, поэтому вы можете легко найти его на складе или испортить его из старых проектов. Для получения подробной информации о PIC16F84A, см. мой Специальная страница PIC. В Текущая страница была написана для начинающих и сосредоточена только на процедуры программирования PIC16F84A, а не о том, как научиться писать программа для этого. Обсуждаемые вопросы можно резюмировать ниже:
Чтение и запись HEX файл в PIC
Написание программного обеспечения для MCU – сложная задача, которая включает в себя множество усилия, и это обычно не может быть выполнено неквалифицированными людьми.Но если ты просто так уже иметь программное обеспечение, написанное другими людьми для проекта, и вы хотите построить этот проект, тогда вам не нужно ничего знать о само программное обеспечение. Вам просто нужно знать, как записать это программное обеспечение в MCU. Это наиболее частая ситуация при построении чужого проекта.
Все, что вам нужно, это чудесное маленькая программа под названием PICprog.exe. Скачайте и запустите Это. Это отдельная программа, которая не устанавливается на ваш компьютер.если ты хотите удалить, просто удалите. Вот скриншот программы:
Я отметил разные области с номерами красного цвета, чтобы я мог их описать.
Номер 1: Загрузить программное обеспечение, которое должно быть запрограммировано в микросхему, в буфере PICprog. Этот должен быть файлом в формате HEX. PICprog не может компилировать файлы ASM в HEX и не может загружать файлы BIN. У вас должен быть доступен файл HEX.
Число 3: Прочитать уже запрограммировал PIC16F84A в буфер PICprog. Если PIC16F84A был ранее запрограммированный без защиты кода, вы сможете извлечь его программу в буфер PICprog.
Номер 2: Сохранить программный буфер в файл HEX на вашем компьютере.
Число 4: Стереть PIC16F84A.
Номер 5: Запрограммировать PIC16F84A.Запишите содержимое буфера PICprog в PIC16F84A.
Число 7: Выберите, какой тип используемого генератора. Я обычно использую кристаллы кварца, поэтому выбираю XT. вариант.
Число 8: Число последовательный порт, к которому подключен ваш программатор, обычно COM1.
Номер 6: Скриншот полной принципиальной схемы программатора, которую вы должны построить, чтобы для программирования PIC16F84A.
Схема очень проста, проще, чем ваши самые быстрые и грязные проекты. Четыре резистора, два диода, конденсатор, разъем DB-9 и разъем DIP или ZIF – все, что нужно для сделать этот программист. Никакого внешнего питания не требуется, все вынесено из последовательный порт вашего компьютера. Да, это ультрапортативный программатор. И самое главное, я построил это на макетной плате, и это работает совершенно нормально.Не нужно искать более дорогого программиста, если вы только интересуется микроконтроллером PIC16F84A.
Обратите внимание, этот программатор работает нормально на настольном ПК, но может быть случай при использовании ноутбука с USB к COM преобразование портов или COM-порты низкого уровня напряжения. Помните об этом при использовании современный ноутбук.
Извлечение исходного кода из файла HEX
До сих пор я говорил о извлечение или запись файла HEX в PIC16F84A.Но как насчет того, если ты хочешь чтобы преобразовать этот HEX-файл в исходный исходный код, чтобы вы могли проверить код или внести изменения? Затем вам нужно преобразовать файл HEX в ASM файл. Это может быть полезно, например, в проекте, который включает отображение, если вы хотите изменить отображаемые сообщения на свои собственные.
Все, что вам нужно, это чудесное маленькая программа под названием PICDisasm.exe. Скачайте и запустите Это. Это отдельная программа, которая не устанавливается на ваш компьютер.если ты хотите удалить, просто удалите. Вот скриншот программы:
Он был разработан для разнообразие микроконтроллеров PIC. Для PIC16F84A выберите опцию 16F84A из поле PIC-Type (это выбор по умолчанию), а затем загрузите файл HEX в программу. Декомпилированный исходный код автоматически отображается в буфере после загрузки HEX файл.
Если у вас есть оба оригинала Доступны файлы HEX и ASM, возможно, стоит разобрать этот файл HEX и откройте созданный файл ASM в текстовом редакторе.Затем откройте исходный ASM файл также с помощью текстового редактора и сравните два файла ASM. Ты заметишь различия в комментариях и метках двух файлов ASM. Это не означают, что два файла разные. Если вы снова соберете разобранный файл в HEX-файл, он будет работать идентично исходному HEX-файлу. Ассемблер просто игнорирует сделанные вами комментарии и ярлыки, потому что это не необходим PIC для запуска программы. После небольшого осмотра вы можете выяснить, где находится деталь, которую нужно изменить.Чтобы сохранить буфер в файл ASM для редактирования, нажмите кнопку сохранения.
Сборка файла ASM в файл HEX
Хорошо, теперь у вас есть ASM файл, сохраненный на жестком диске. Вы можете открыть его в текстовом редакторе и сделать любой изменения, которые вам нравятся. Изменения могут быть просто ярлыками, текстовыми сообщениями или полностью переписывая части кода, если вы умеете программировать ПОС. Если вы хотите перепрограммировать PIC16F84A с помощью этого измененного файла ASM или с помощью собственного ASM файл, вам необходимо соберите его в файл HEX.Это процесс, противоположный разборке. К собрать файл ASM в файл HEX, который можно записать в PIC, вы можете используйте официальный ассемблер MPASMWIN.exe.
Оригинальная версия MPASMWIN был разработан для различных микроконтроллеров PIC, но я сократил все файлы, чтобы иметь один файл exe, поэтому это может работать только с PIC16F84A встраивание в ваши программы ASM необходимых параметров процессора.Этот делает ваши программы автономными, независимыми от каких-либо заголовков или включаемых файлов.
Чтобы вам было легче, я включите файл TEMPLATE.ASM для микроконтроллера PIC16F84A. Просто используйте этот шаблон для написания всех ваших новых программ. Вам не нужно выбирать тип процессора в MPASMWIN, потому что он уже определен внутри вашего Программа ASM. Просто загрузите исходный файл ASM в программу и нажмите кнопку “Собрать”. Файл HEX вместе с некоторыми другими файлы, будут сгенерированы в том же каталоге, что и ваш файл ASM, если ваш ASM файл не содержит ошибок.Если это не так, вы можете увидеть ошибки, открыв сообщение об ошибке. файл, созданный с помощью текстового редактора. Вы можете использовать созданный файл HEX для программирования вашего PIC16F84A, как описано в начале этого страница.
Редактирование файла ASM
Один из самых важных вещи при написании программы на ассемблере – это хорошо держать код задокументировано. Еще одна важная вещь – иметь возможность легко прочитать ваш код позже. на.Подсветка синтаксиса важна, но в блокноте Windows этого нет. особенность. Самое легкое решение – альтернативный редактор под названием Notepad2.exe.
Этот единственный исполняемый редактор предлагает, среди прочего, функции подсветки синтаксиса и масштабирования, которые могут быть очень полезно при написании кода.
Вернуться на главный сайт
Хост-программа для управления программатором PIC
Ardpicprog – это программа, которая запускается на хост-машине и управляет процессом чтения и записи в устройство PIC или EEPROM.Он подключается через последовательный порт к скетчу, запущенному на Arduino, который реализует логику программирования PIC или EEPROM.
Синтаксис командной строки Ardpicprog спроектирован так, чтобы быть обратно совместимым с picprog, чтобы упростить замену вызовов picprog в существующих скриптах Makefile и build.
Хост-программа не реализует никакой специальной логики для программирования устройств PIC и EEPROM. Он просто связывается со скетчем, запущенным на Arduino, через последовательный порт и просит его выполнить READ, WRITE, ERASE и другие команды.Сам эскиз заботится о низкоуровневых деталях разговора с устройством. Для поддержки нового типа устройства эскиз необходимо будет заменить альтернативой, знакомой с деталями низкоуровневого программирования нового устройства. Схема для платы программатора PIC также может нуждаться в изменении.
Примечание: Serial Monitor в Arduino IDE должен быть закрыт, пока используется Ardpicprog. В противном случае монитор может украсть часть последовательных данных, предназначенных для Ardpicprog, и процесс чтения или записи не удастся.
ardpicprog –quiet -q –warranty –copying –help -h
–device DEVTYPE -d DEVTYPE –pic-serial-port ПОРТ -p ПОРТ
–input-hexfile INPUT -i INPUT –output-hexfile OUTPUT -o OUTPUT
–ihx8m –ihx16 –ihx32 –cc-hexfile CCFILE -c CCFILE –skip-ones
–erase –burn –force-калибровка –list-devices –speed SPEED
- –quiet
- Подавить заголовок об авторских правах.
- –device DEVTYPE, -d DEVTYPE
- Задает тип устройства в программаторе; е.грамм.
pic16f84
,pic16f628a
и т. Д. Если эта опция отсутствует или установлена на auto , то Ardpicprog попытается автоматически определить устройство в программаторе. Старым устройствам PIC, не имеющим идентификационного слова, потребуется вручную указать параметр –device . Параметр –list-devices может использоваться для вывода списка всех поддерживаемых типов устройств. См. Также, Поддерживаемые устройства PIC и EEPROM.
- –pic-serial-port ПОРТ, -p ПОРТ
- Задает tty-устройство последовательного порта, которое будет использоваться для связи с программатором.По умолчанию это
/ dev / ttyACM0
в системах POSIX иCOM1
в Windows.
- –speed SPEED
- Определяет скорость последовательного соединения с программатором. Значение по умолчанию – 9600. Другие допустимые значения: 19200, 38400, 57600, 115200 и 230400. Примечание: функция
setup ()
скетча, выполняемого в Arduino, должна быть изменена для использования той же скорости. Эта опция специфична для Ardpicprog; его нет в программе picprog.
ardpicprog –output-hexfile OUTPUT –skip-ones
- –output-hexfile ВЫХОД, -o ВЫХОД
- Считывает все содержимое устройства и записывает его в формате Intel HEX в ВЫХОД.
- –skip-one
- Игнорирует любое слово из всех единиц устройства; т.е. не установлен на определенное значение.
- –ihx8m, –ihx16, –ihx32
- Выбирает тип HEX-файла для записи в ВЫХОД. Значение по умолчанию – –ihx16 для устройств PIC низкого и среднего уровня и –ihx32 для устройств PIC высокого уровня.
ardpicprog –erase –burn –input-hexfile INPUT
- –erase
- Стирает устройство перед записью на него программ, данных и слов конфигурации.
- –burn
- Записать программу, данные и слова конфигурации на устройство PIC или EEPROM. Слова будут прочитаны после записи, чтобы убедиться, что они были написаны правильно.
- –input-hexfile INPUT, -i INPUT
- Задает HEX-файл, содержимое которого должно быть записано на устройство.Входные данные должны быть в формате Intel HEX, будь то IHX8M, IHX16 или IHX32. Содержимое файла HEX должно соответствовать типу устройства в программаторе.
- –cc-hexfile CCFILE, -c CCFILE
- После чтения содержимого входного INPUT запишите его обратно в CCFILE. Это предназначено для целей отладки, чтобы убедиться, что INPUT был прочитан правильно.
- –force-калибровка
- Заставляет слова калибровки (например, OSCCAL) в устройстве PIC, если таковые имеются, стирать и перезаписывать значениями из INPUT.Если эта опция не указана, программатор сохранит исходные калибровочные слова. Если –force-калибровка не указан, то слова калибровки, которые появляются в INPUT, будут проигнорированы.
- –output-hexfile OUTPUT, -o OUTPUT
- После записи прочитать содержимое устройства и записать его в OUTPUT.
- –list-devices
- Перечисляет все устройства PIC или EEPROM, которые поддерживаются скетчем программатора, запущенным на Arduino.Если вашего типа устройства нет в этом списке, вам понадобится новая версия скетча. Эта опция специфична для Ardpicprog; его нет в программе picprog.
- –help
- Распечатывает информацию об использовании Ardpicprog.
- – копирование
- Распечатывает Стандартную общественную лицензию GNU, версия 3.
- –warranty
- Распечатывает отказ от гарантийных обязательств.
Следующие параметры предусмотрены для обратной совместимости с picprog, но игнорируются Ardpicprog:
- –jdm
- –k8048
- –nordtsc
- –rdtsc
- PIC_DEVICE
- Устройство PIC или EEPROM для чтения или записи.По умолчанию используется автоматическое определение типа устройства. Параметр –device переопределяет эту переменную среды.
- PIC_PORT
- Определяет tty-устройство последовательного порта, которое будет использоваться для связи с программистом. По умолчанию это
/ dev / ttyACM0
в системах POSIX иCOM1
в Windows. Параметр –pic-serial-port переопределяет эту переменную среды. - 0
- Процесс чтения или записи завершился без ошибок.
- 64
- Возникла проблема с синтаксисом командной строки.
- 65
- INPUT не в формате Intel HEX.
- 66
- Не удалось открыть INPUT или CCFILE.
- 74
- Произошла ошибка при разговоре с программистом, процесс записи по какой-то причине завершился неудачно (например, обратное чтение содержимого не соответствовало) или возникла проблема при записи в ВЫХОД.
- 76
- Устройство неизвестно программисту.
- 1 x FZ51F – гнездо IC с поворотной ножкой на 18 штырей
- 1 x QQ14 – NPN-транзистор общего назначения (BC547C)
- 3 x QL80 – диод (IN4148)
- 1 x QH07 – стабилитрон 5,1 В (BZX79C 5V1)
- 1 x Qh27 – стабилитрон 13 В (BZX79C 13 В)
- 1 x Vh47 – электролитический конденсатор на 25 В 100 мкФ
- 1 x BX03D – 100 нФ / 0.Керамический конденсатор 1 мкФ (?)
- 2 x M10K – резистор 10 кОм
- 1 x M1K5 – резистор 1,5 кОм
- 1 x RK61 – 9-контактная розетка D-Range
- 1 x FP27 – D-образный кожух 9-контактный
- (CD) – синий / белый
- (RX) – синий
- (TX) – оранжевый
- (DTR) – оранжевый / белый
- (GND) – зеленый / белый
- (DSR) – Коричневый
- (RTS) – Коричневый / белый
- (CTS) – Зеленый
- (RI) – Не подключен
Программатор макета PIC (JDM) – Justin’s Stuff
Введение
Программатор My Breadboard JDM был разработан для работы с picprog на платформах UNIX. Наверное работает с IC-прогой
на окнах тоже, но я не пробовал. picprog может программировать
большое количество различных PIC, в том числе новых, таких как
желательно PIC18F2550 / 4550 запчасти.
Я разработал только макет макета, а не схема, на которой он основан, как это сделал Йенс Мэдсен.См. Принципиальную схему на странице picprog (NB. Различные распиновки предназначены для сокета DB25) и ссылки на оригинальный дизайн JDM.
Как с
любому программисту JDM нужен приличный последовательный порт. Большинство ноутбуков и USB
Ключи не имеют правильного напряжения. Я измерил последовательные порты
(напряжение на GND / TX) на двух настольных ПК с разницей в возрасте ~ 5 лет,
с помощью мультиметра – оба замерили -11В. Они оба отлично работают с этим
программист.
Планировка несложная и требует всего около 5 минут, чтобы собрать вместе, как только вы припаяете розетку.Если у вас уже есть макетная плата и запасной кабель CAT5, детали требуются очень дешево (~ 4 фунта стерлингов от Maplins, намного меньше от Farnell / RS). Я уверен, что вы могли бы использовать гораздо меньший / более дешевый кусок макета, но я использовал то, что у меня было.
Согласно странице picprog, эта схема должен работать с ICSP – вы можете подключить провода к соответствующей IC булавками отверстия на макетной плате. Это причина, по которой я решил использовать макетная плата – это должно быть тривиально подключить провода для ICSP к PIC на другие части макета (плюс у меня был запасной макет).Я не пробовал что еще.Изображение
Большая (~ 1 Мб) аннотированная версия находится здесь:
Детали
Все детали поставляются компанией Maplins в Великобритании. Номера деталей (взяты из моей квитанции) следующие:
В
макет также от Maplins, но вы найдете его дешевле в другом месте.
Электролитический конденсатор на 16 В подойдет, но у них не было
те, что есть в наличии. Maplins не продают PIC16F628a – они только кажутся
сток устаревший PIC16F628. Я предполагаю, что они не меняют много
единицы.
С любыми компонентами, купленными в их отделе запчастей, всегда дважды проверяйте номера деталей на товарах, которые вам дают. Они не всегда есть нужные детали в правильных ящиках и персонал часто не может определить разницу (например, между стабилитроном 13 В и стабилитрон на 20 В). Мне потребовалось 3 поездки, чтобы получить нужные детали. – К счастью, я могу дойти до местного магазина.
Примечания
Провода, которые я использовал повсюду, взяты из одножильный (не многожильный) кабель Ethernet CAT5.Я спаял самку DE9 на короткую длину CAT5 (~ 30 см) случайным образом, так как следующие:
Для перемычки старайтесь использовать как можно более короткий провод, так как сопротивление разъемов уже достаточно высокое.Я снял перемычки, чтобы оголить ~ 6 мм провода на каждом конце.
Использование
Установите picprog
Для Debian / Ubuntu вам необходимо установить picprog
$ sudo apt-get install picprog
Теперь протестируем его.
Чтение PIC
Подключиться PIC к гнезду IC, подключите гнездо IC к макетной плате (контакт 1 в ряду 11, штырь 9 на ряду 19 на моей макетной плате). Дважды проверьте, что PIC правильный путь! Подключите разъем DE9 к первому последовательному порту. и проверьте схему, прочитав PIC.
$ picprog -o output.hex -p / dev / ttyS0
Picprog, версия 1.8.3, Авторские права © 2006 Яакко Хиватти
Picprog поставляется с АБСОЛЮТНО БЕЗ ГАРАНТИЙ; для получения подробной информации введите «picprog –warranty». Это бесплатное программное обеспечение, и вы можете распространять его при определенных условиях;
/ dev / ttyS0: id 0x07c0: обнаружена версия pic16f628 0x00
Устройство pic16f628, память программ: 2048, память данных: 128.
Чтение памяти программ,
чтение памяти данных,
чтение идентификационных слов,
чтение предохранителей,
готово.
Может быть у вас есть совершенно новый незапрограммированный PIC. picprog по крайней мере скажет вам какой тип микросхемы (например, pic16f628), затем выгрузите содержимое пустую флеш-память в output.hex.
Запись PIC
$ picprog -i input.hex -p / dev / ttyS0 –burn
Picprog версии 1.8.3, Copyright © 2006 Jaakko Hyvätti
Picprog поставляется с АБСОЛЮТНО ОТСУТСТВИЕ ГАРАНТИЙ; для получения подробной информации введите «picprog –warranty».Это бесплатное программное обеспечение, и вы можете распространять его при определенных условиях;
, чтобы узнать подробности, наберите «picprog –copying». 0 локаций,
горящий предохранитель, 0 локаций,
готово.