Arduino программатор PIC-ов.

Arduino программатор PIC-ов.
Иногда встречаются очень интересные проекты выполненные на микросхемах PIC. Это микроконтроллеры с RISC архитектурой,
производимые фирмой Microchip Technology. Программаторы для PIC сложные и дорогие. Чтобы сделать программатор для PIC, нужен программатор для PIC, замкнутый круг для самодельщина. Но у нас есть Arduina! Сделаем из ардуины очень дешевый, очень простой, но работающий как очень дорогие HVSP программаторы микроконтроллеров от Microchip Technology.

HVSP - это High Voltage Serial Programming, высоковольтное последовательное программирование. Высоковольтное программирование позволяет сделать рабочим окирпиченный PIC контроллер из за неправильно выставленных фьюзов или заблокированных ног используемых при низковольтном программировании. В общем без разницы в каком состоянии Вам пришлют хитрые китайцы микроконтроллер, главное, чтобы он был аппаратно живой. А разлочить можно и ардуиной. Запрограммировать можно и ардуиной.

Схема.
программатор.PNG


Сборка на макетной плате.

maket.jpg

Настройка Step-UP DC-DC
13V.jpg


Пример работы программатора сделанного из ардуино нано в макете с парой дополнительных деталей которые можно выдрать из старой техники. Единственное для удобства я использовал повышающий преобразователь для получения 13V нужных для высоковольтного программирования. Удобство заключается в том, что просто вставляете программатор в USB и работаете не заморачиваясь на необходимости подачи внешнего питания. Иначе просто можно подать это напряжение от внешнего блока питания и схема станет еще проще.

pic16f628a.jpg
programmator-avr-svoimi-rukami.jpg
 

Вложения

Изменено:

Комментарии

viktor1703

★★★✩✩✩✩
9 Дек 2021
539
133
При прошивке PIC16F676 возникла проблема - не читается калибровочная константа. Даже если её прописал вручную и прошил, то после все равно не читается. У меня в проекте нет жестких требований к таймингам, но всё же...
 

Вложения

  • 144.1 KB Просмотры: 44

Djek.83

✩✩✩✩✩✩✩
28 Янв 2023
2
0
@Аллайя,
А это только с Arduino Uno работает?. А то у меня на nano ничего не получается.
 
Изменено:

viktor1703

★★★✩✩✩✩
9 Дек 2021
539
133
На Uno и Nano один и тот же микроконтроллер стоит Atmega328. Хотя на Nano может стоять и 168-я мега. Может, поэтому и не работает.
 

Djek.83

✩✩✩✩✩✩✩
28 Янв 2023
2
0
@viktor1703,
Стоит Atmega 328P. А может это я что-то не так делаю. Начну с начала, у меня сломалась кофеварка и понадобилось почистить EEPROM на ней. И я купил PicKit 2 на авито чтобы не ждать. И когда его доставили, кинулся искать проги и дрова. А он невкакую не хочет определяться в программе. Почитав форумы, пришел к выводу что его тоже надо прошить. Стоит там Pic 18f 2550. Из инструмента только ардуинка. Куда только не пихал эту консоль, нехочет она видеть ардуинку. И скетчи менял, и hex из архива к pickit 2 достал. ArdPicProgHost видит com порт, но скетча под нее, нет для этого чипа. А я в этом пока дуб. Может кто может собрать скетч?
 

Вложения

МОРО1986

✩✩✩✩✩✩✩
8 Фев 2023
3
0
Люди, есть кто живой? Кто-нибудь пробовал скетч от товарища Eig? Не компилируется он зараза. Вот выдаёт то что на фото. Пытаюсь прошить pic16f886. И как у большинства он не хочет стираться... Уже все схемы и варианты подключения перепробовал.
 

Вложения

ТехнарьКто

★★★★★✩✩
13 Янв 2020
273
435
@МОРО1986,
Чего там товарищ Eig написал, спрашивайте у него. Схема и скеч из первого сообщения с нужным Вам pic, работает нормально.
 

Aleksey_30region

✩✩✩✩✩✩✩
17 Фев 2023
2
0
Всем привет. У меня ошибка при компиляции. Пробовал в разных версиях Arduino IDE и на разных компьютерах, одно и тоже. Стоят Windows 7 64Pic_programmer.jpg
 

МОРО1986

✩✩✩✩✩✩✩
8 Фев 2023
3
0
Короче, у меня ничего не получилось. Контроллер определяется сразу, а стираться и тем более прошиваться не хочет. Были моменты, что вроде начал прошиваться, а потом опять ошибка "сначала сотрите - потом прошейте". Всю неделю бился, все скетчи и прошивки из этой темы перебрал, разные контроллеры пробовал, на макетке собирал, навеской собирал, шнурки usb разные пробовал, резисторы с портов убирал, алгоритмы подачи питания менял, питание не с ардуинку брал и так далее... Теперь жду pickit3.)) Кому-то везёт, а кому-то нет.
 

МОРО1986

✩✩✩✩✩✩✩
8 Фев 2023
3
0
Я отвечал не Алексею, а просто описал свою ситуацию. Я выше тоже спрашивал про ошибку компилирования, но в итоге зашил Ардуинку хексом. Хотя в другом сообществе мне объяснили, почему у меня не компилировался хекс.
 

Aleksey_30region

✩✩✩✩✩✩✩
17 Фев 2023
2
0
Все стирается и прошивается, но как выставлять конфигурацию микроконтроллера? При сравнении в программе HexCmp оригинала hex файла и обратно считанного предварительно зашитого в микроконтроллер, файлы отличаются. Кто реально что то собирал после прошивки сей программатором?
 
Изменено:

Deoptim

✩✩✩✩✩✩✩
3 Сен 2022
10
1
@Aleksey_30region, отличаются они из-за разного форматирования hex файла(количество символов с троке).
Переводите оба файла в бинарный bin файл и там уже сравнивайте.
Вот тут я сам добавил свой контроллер(которого раньше не было) с двумя конфигурационными регистрами. Всё отлично работает.
 

URII81

✩✩✩✩✩✩✩
27 Фев 2023
1
0
А можно на АТмеге8 сделать?Прошивку не напишите?
 

vladomir

✩✩✩✩✩✩✩
9 Май 2023
2
0
Собрал программатор PIC по схеме 1 поста. Установил скетч для ардуино, вставил МК в панельку, но программа Arduino PIC Programmer не видит контроллер. Менял МК, так как у меня их 2 с магазина, новые. В чем может быт проблемма.
 

Вложения

viktor1703

★★★✩✩✩✩
9 Дек 2021
539
133
Да в чём угодно.
программа Arduino PIC Programmer
У меня, да и не только у меня, она начинает работать со второго раза. Открываю её, нажимаю "Connect", но она
не видит контроллер
Закрываю Arduino PIC Programmer, запускаю снова и всё начинает работать. При условии правильного монтажа и исправности компонентов.
 

vladomir

✩✩✩✩✩✩✩
9 Май 2023
2
0
Программа видит СОМ порт, светится зеленым.Нажимаю Connect, нет реакции.Монтаж проверил несколько раз, ардуино менял все они исправные . В скетче прописаны( #define PIN_ACTIVITY A5 // LED that indicates read/write activity), (#define PIN_VDD 2 // Controls the power to the PIC)..Их я не разводил в печатке.
 

Demacr

✩✩✩✩✩✩✩
18 Май 2023
2
0
Подскажите, пожалуйста, этим программатором PIC18F25K80 прошить не выйдет?
 

Demacr

✩✩✩✩✩✩✩
18 Май 2023
2
0
@johni5,понял. Чтож, попробую или разобраться, или скорее всего только если методом аналогии.
 

ART_HA

✩✩✩✩✩✩✩
14 Апр 2023
4
0
Здравствуйте.
Соединение происходит, но неверно определяется чип, указывается первый в списке.
Можно как-то узнать, какой Device ID программатор считал?
В скетче Device ID в hex формате вроде должен куда-то выводиться.
 

Deoptim

✩✩✩✩✩✩✩
3 Сен 2022
10
1
@ART_HA, Если используете скетч ProgramPic.ino:
1. Подключаете PIC к Arduin'ке
2. Подключаете параллельно консоль к Ардуинке или используйте Serial Monitor(в самой программе Arduino), скорость должна быть 9600
3. Для проверки работы консоли между Адруинкой и ПК введите команду HELP, должен вывалится в ответ список доступных команд.
4. Для проверки соединения PIC с Ардуинкой нужно ввести команду DEVICE (без S в конце), должен появится в консоли идентификатор чипа "DeviceID" и его "ConfigWord", если чип не определен, будут FFFF или 0000
 

ART_HA

✩✩✩✩✩✩✩
14 Апр 2023
4
0
Спасибо!
А я и забыл, что на платах ардуино serial надо к отдельному терминалу цеплять.
HELP и DEVICE работают, Device ID: 0F80, согласно тексту программы это действительно PIC12F629.
Мой МК - PIC16LF628.
Нет ли ошибки в программе, ведь PIC12F629 - это SOIC8, а мой корпус SOIC18 (широкий).
Причем этот МК даже не с али, а выпаян с какой-то промышленной платы.