Перейти к содержанию

USB программатор PIC из Arduino


Рекомендуемые сообщения

Наконец-то дождался PIC16F18444. Он был успешно добавлен и протестирован. Также добавлена поддержка PIC16F870 по просьбе @URII81, но вообще не протестирована. Если у кого-то есть такой, проверьте и напишите о результатах, я добавлю остальные 87x.

Прошивка платы новая. В программе заменяем pic.xml.

FIRMWARE_M328_23032023.rar pic_XML_23032023.rar

Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

Наконец-то дождался своего звёздного часа пик, поддержки которого нет в pickit2. Лежал почти месяц в ожидании макетки -  PIC18F46Q10. Без проблем не обошлось. Flash и CONF программируются правильно, а вот EEPROM - некорректно (возможно читается неправильно, а пишется правильно, проверить не чем, PICKIT3 у меня нет).  Перекопал Programming manual несколько раз, но безуспешно. EEPROM либо пишется, либо читается через байт. Пока выкладываю это семейство "как есть".

Прошивка для 328-й новая, в программе заменяем pic.xml.

firmware_m328_290323.rar pic_xml_290323.rar

Ссылка на комментарий
Поделиться на другие сайты

  • 1 месяц спустя...

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

Всем привет и спасибо автору за программатор.

Пытаюсь прошить PIC18F25K80 (в ELM стоит), напряжение VPP сделал 8.6 В. Иии...ничего не получается.

У меня ардуино нано. Теперь по порядку - с прошивкой Atmega с первой страницы при выборе PIC и GET ID получаю 0x6168 и никаких ошибок. Если взять прошивку с последней страницы - то GET ID выдает 0x3F86 и ошибку, что Id не соответствует МК.

Чтение выдает нули в обеих версиях, RD Cfg меняет значение некоторых конфигов.

Стирание проходит успешно как я понимаю.

Verify либо я не правильно использую, а если правильно, то тогда имеем 32260 ошибок Code и 1008 ошибок Data.

Вообщем прошу помощи и советов. Заранее спасибо.

Ссылка на комментарий
Поделиться на другие сайты

Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов

 Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Upd к моему посту выше - все шьётся, нули считываются потому что в прошивке защита. Сразу не понял, что все успешно шьётся из-за разности скорости uart пик и бт модуля, залил другую прошивку, стало ок.

Проблема с Get ID имеет место быть.

Ссылка на комментарий
Поделиться на другие сайты

Присоединяюсь к благодарностям автору, заказал Ардуино - попробую повторить конструкцию.
Вопрос к автору (точнее просьба): а можно добавить в прошивку функциональность на дополнительном выходе, напринер D5, так чтобы он опускался в 0 перед посылкой кодовой последовательности входа в прог. режим, и поднимался в 1 по окончанию (см. картинку)для поддержки низковольтного программирования? Это не требует изменений в софте и схеме, но даст возможность программировать много современных PIC без внешнего источника питания, используя +5В от USB - будет программатор еще более интересным. 
Зараннее благодарен.

Картинка: 

Spoiler

mc506-1E.png.0161bde52aab3502cc307e3b14e23573.png

 

Изменено пользователем Edd24
Ссылка на комментарий
Поделиться на другие сайты

Можно сделать и LowVpp. Только не все чипы будут так программироваться. Например, тот же 18f25k80 требует ввода цифровой последовательности (4-байтного кода) для входа как в hvp, так и в lvp режим программирования. Тут прокатит. А вот новые модели 16f требуют введение кода только для lvp режима, а в hvp входят только за счёт поднятия напряжения mclr до 12 вольт. Поэтому такой трюк для них без значительной переделки прошивки не прокатит.

В любом случае, когда созреет для испытаний, пишите, добавлю вас LowVpp.

Вообще, если нужен Lvp программатор исключительно для одной линейки - 18fxxk80, то его можно сделать на более дешёвом МК с меньшим количеством памяти и ног.

Изменено пользователем AndrejChoo
Ссылка на комментарий
Поделиться на другие сайты

  • 3 недели спустя...
On 6/2/2023 at 2:27 PM, AndrejChoo said:

когда созреет для испытаний, пишите, добавлю вас LowVpp.

Приобрел ардуинку, готов проверить, есть чипы 18F25K80;
Если можно - добавьте новый сигнал LVP_VPP на выходе D4 (7я нога Нано)

On 6/2/2023 at 2:27 PM, AndrejChoo said:

Вообще, если нужен Lvp программатор исключительно для одной линейки - 18fxxk80, то его можно сделать на более дешёвом МК с меньшим количеством памяти и ног.

Согласен, но я давно ищу "народный" программатор для некоммерческих пользователей которые не купят ICD/PICkit, и не все программисты  паяют транзисторы. 
Ваш программатор на модуле Ардуино Нано ценен простотой и доступностью, а с LVP будет еще проще - 5 проводков к ардуинке и все в термоусадку - истинно народный вариант!

ПС: пока писал родилась идея - если проблемы с местом в памяти - можно сделать 2 разные прошивки: для LVP и HVP

 

Ссылка на комментарий
Поделиться на другие сайты

Я попробую сделать LVP без всякой обвязки на голой Ардуино. Но только для одной линейки 18fx5Kxx. Как протестирую, если, конечно заработает, выложу прошивку и схему подключения.

Ссылка на комментарий
Поделиться на другие сайты

В общем, сделал тестовую прошивку для LVP программирования. Теперь можно программировать голой ардуиной без всякой дополнительной обвязки. Подключение: PGD - D12, PGC - D13, PGM - D11, MCLR - D4 (Dxx - это именно пины ардуино нано, а не порт D атмеги!!!). Питание подключается к ножке 5v платы ардуино. Пока что добавил и проверил P18F1250/4550 и всё их семейство и P18F25K80 и его товарищей (правда, опять всплыл косяк с чтением у P15F25K80, читается только первый байт прошивки, остальное нули, хотя прошивка ложится корректно, еепром читается правильно. Не могу понять, в чём дело, хоть убей!). Софт прежний, последней версии. Ардуино обязательно на Atmega328 с кварцем на 16 MHz (можно и Uno). Прошивать ArduinoUploader-ом, XLoader-ом и им подобными.

Пробуйте, тестируйте. Будет интерес, добавлю по возможности другие модели pic-ов в прошивку.

PIC_PROG.hex

Ссылка на комментарий
Поделиться на другие сайты

Испытал на 25К80, работает. Проверил на 2х Нано: 328P бутлоадер 115200, и 328PB старый бутлоадер 57600, оба сработали.

On 6/22/2023 at 10:52 PM, AndrejChoo said:

опять всплыл косяк с чтением у P15F25K80, читается только первый байт прошивки, остальное нули

У меня не проявился, читается нормально, так что поковырять не могу. Есть одна мысль - попробуйте добавить последовательно резистор 220-330 Ом в разрыв PGD. позже опишу в ЛС. Если можно глянуть исходник - было бы хорошо. 

В чем не разобрался:

1. как работает verify? у меня раз проверяет, пять раз пишет что нечего сравнивать.

2. конфиг не читается по read, надо читать отдельно - так задумано?

Ссылка на комментарий
Поделиться на другие сайты

Перед verify сначала нужно прочитать чип. Иначе программа будет сравнивать пустой массив с прошивкой или прочитанное ранее.

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

Ссылка на комментарий
Поделиться на другие сайты

В коде прошивки, которая на github, есть вероятность конфликта на линии PGD при чтении, опишу позже. Если вы не против поделиться исходником LVP версии - могу попробовать подрихтовать

Ссылка на комментарий
Поделиться на другие сайты

  • 4 месяца спустя...
В 22.06.2023 в 22:52, AndrejChoo сказал:

В общем, сделал тестовую прошивку для LVP

Добрый день.

Собрал упрощённую схему программатора для PIC18F25K80 на голой Nano 328PB.

Подключил к ELM327 через контактные площадки.

Приложение видит программатор. Но не считывает ID чипа.

Несколько дней бился. Отпаял резисторы и светодиоды, подключенные к 27 и 28 ногам 25K80. И всё равно не помогло.

Выкопал из закромов PIC16F73 и PIC16LF76. Подвесил за ноги 1, 8, 20, 27, 28 к Nano D4, GND, +5, D13, D12. Думал, если не программировать, то хотя-бы ID прочитает. - Тоже не получается.

Проверил ноги Nano 4, 12, 13, выводя через них импульсы типа Blink - исправны.

Я уже х.з., куда копать?

Столько человек повторило конструкцию. А у меня не идёт.

Кстати, а почему выбрали D13? Она ведь под встроенный светодиод задействована.

Ссылка на комментарий
Поделиться на другие сайты

Здравствуйте. Проблема, скорее-всего, в том, что ножки MCLR, PGD или PGC подключены к чему-то ещё. Либо при подключении к плате она просаживает питание от ардуины. 

Я переделывал прошивку и базу программы специально для 25k80, для программирования вообще без обвязки. Посмотрите тему на 4PDA (https://4pda.to/forum/index.php?showtopic=639908&st=21380 где-зо здесь, ближе к концу ветки), там целая ветка по ELM327. Один из участников редактировал прошивку специально под такой вариант и выложил инструкцию.  

Ссылка на комментарий
Поделиться на другие сайты

  • 1 месяц спустя...

Привет Андрей!!!Собрал JDM программатор на 155ла3 как у вас в статье,подключил СР2102.И не работает.Пользовался программами  PICPgm,IC-Prog.WINPIC800.Какой программой пользовались вы?

Ссылка на комментарий
Поделиться на другие сайты

  • 3 месяца спустя...

Если мне не изменяет память, этот камень уже есть. Скачайте крайние версии софта и прошивки: Github. Я позже посмотрю, если ещё не добавил, постараюсь добавить. Правда, у меня нет этого камня, проверить не смогу. Если Вы можете протестировать работу программатора с этим pic, свяжитесь со мной по email: andrejchukov@yandex.ru

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы публикуете как гость. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...