В представленной ниже таблице, для различных моделей pic-контроллеров фирмы Microchip приведены поддерживаемые алгоритмы перевода контроллеров в режим программирования (в соответствии с классификацией из этой статьи), диапазоны напряжений Vpp (для моделей, поддерживающих HVP — high voltage programming), а также используемые для программирования выводы.
Все эти данные выужены из официальных спецификаций по программированию pic-контроллеров, которые лежат тут, так что если вы не нашли в табличке свой пик — идём туда, ищем, скачиваем, разбираемся.
Как пользоваться поиском на странице все помнят? Жмём CTRL+F и пишем текст, который хотим найти.
Чтобы смотреть картинки с используемыми для программирования выводами — javascript у вас в браузере НЕ должен быть отключен.
Группа | Модели | Алгоритмы входа в режим программирования | Диапазон Vpp (Вольт) | Используемые при программировании выводы |
PIC10F20x | PIC10F200PIC10F202PIC10F204PIC10F206 | HVP «Vpp-first»HVP «Vdd-first» | 12,5..13,5 | Click to view image |
PIC10F22x | PIC10F220PIC10F222 | HVP «Vdd-first» | Click to view image | |
PIC10(L)F32x | PIC10F320PIC10LF320PIC10F322PIC10LF322 | HVP «Vpp-first»HVP «Vdd-first»LVP «Special Sequence» | 8..9 | Click to view image |
PIC12(L)F1501 | PIC12F1501PIC12LF1501 | Click to view image | ||
PIC12(L)F1822 | PIC12F1822PIC12LF1822 | Click to view image | ||
PIC12(L)F1840 | PIC12F1840PIC12LF1840 | Click to view image | ||
PIC12F50x | PIC12F508PIC12F509 | HVP «Vdd-first» | 12,5..13,5 | Click to view image |
PIC12F510 | PIC12F510 | Click to view image | ||
PIC12F519 | PIC12F519 | Click to view image | ||
PIC12F529TxxA | PIC12F529T48APIC12F529T39A | Click to view image | ||
PIC12F60xPIC12F61xPIC12HV60xPIC12HV61x | PIC12F609PIC12F615PIC12F617PIC12HV609PIC12HV615 | HVP «Vpp-first»HVP «Vdd-first» | 10..13 | Click to view image |
PIC12F629PIC12F675 | PIC12F629PIC12F675 | HVP «Vpp-first» | Vdd+3,5..13,5 | Click to view image |
PIC12F6xx | PIC12F635PIC12F683 | HVP «Vpp-first»HVP «Vdd-first» | 10..13 | Click to view image |
PIC12F/HV752 | PIC12F752PIC12HV752 | Click to view image | ||
PIC16(L)F145x | PIC16F1454PIC16LF1454PIC16F1455PIC16LF1455 | HVP «Vpp-first»HVP «Vdd-first»LVP «Special Sequence» | 8..9 | Click to view image |
PIC16F1459PIC16LF1459 | Click to view image | |||
PIC16(L)F150x | PIC16F1503PIC16LF1503 | Click to view image | ||
PIC16F1507PIC16LF1507PIC16F1508PIC16LF1508PIC16F1509PIC16LF1509 | Click to view image | |||
PIC16(L)F151xPIC16(L)F152x | PIC16F1512PIC16LF1512PIC16F1513PIC16LF1513PIC16F1516PIC16LF1516PIC16F1518PIC16LF1518 | Click to view image | ||
PIC16F1517PIC16LF1517PIC16F1519PIC16LF1519 | Click to view image | |||
PIC16F1526PIC16LF1526PIC16F1527PIC16LF1527 | Click to view image | |||
PIC16(L)F1704/8 | PIC16F1704PIC16LF1704 | Click to view image | ||
PIC16F1708PIC16LF1708 | Click to view image | |||
PIC16(L)F178x | PIC16F1782PIC16LF1782PIC16F1783PIC16LF1783PIC16F1786PIC16LF1786PIC16F1788PIC16LF1788 | Click to view image | ||
PIC16F1784PIC16LF1784PIC16F1787PIC16LF1787PIC16F1789PIC16LF1789 | Click to view image | |||
PIC16(L)F182x | PIC16F1823PIC16LF1823PIC16F1824PIC16LF1824PIC16F1825PIC16LF1825 | Click to view image | ||
PIC16F1826PIC16LF1826PIC16F1827PIC16LF1827 | Click to view image | |||
PIC16F1828PIC16LF1828PIC16F1829PIC16LF1829 | Click to view image | |||
PIC16(L)F1847 | PIC16F1847PIC16LF1847 | Click to view image | ||
PIC16LF190xPIC16(L)F193xPIC16(L)F194x | PIC16LF1902PIC16LF1903PIC16LF1906PIC16F1933PIC16LF1933PIC16F1936PIC16LF1936PIC16F1938PIC16LF1938 | Click to view image | ||
PIC16LF1904PIC16LF1907 | Click to view image | |||
PIC16F1934PIC16LF1934PIC16F1937PIC16LF1937PIC16F1939PIC16LF1939 | Click to view image | |||
PIC16F1946PIC16LF1946PIC16F1947PIC16LF1947 | Click to view image | |||
PIC16F505 | PIC16F505 | HVP «Vdd-first» | 12,5..13,5 | Click to view image |
PIC16F506 | PIC16F506 | Click to view image | ||
PIC16F526 | PIC16F526 | Click to view image | ||
PIC16F527 | PIC16F527 | Vdd+3,5..13,5 | Click to view image | |
PIC16F54 | PIC16F54 | 12,5..13,5 | Click to view image | |
PIC16F57 | PIC16F57 | Click to view image | ||
PIC16F570 | PIC16F570 | Click to view image | ||
PIC16F59 | PIC16F59 | Click to view image | ||
PIC16F/HV61x | PIC16F610PIC16HV610PIC16F616PIC16HV616 | HVP «Vpp-first»HVP «Vdd-first» | 10..13 | Click to view image |
PIC16(L)F62x | PIC16F627PIC16LF627PIC16F628PIC16LF628 | HVP «Vpp-first»LVP «Special pin» | Vdd+3,5..13,5 | Click to view image |
PIC16(L)F62xA | PIC16F627APIC16LF627APIC16F628APIC16LF628APIC16F648A | 10..13,5 | Click to view image | |
PIC16F630/676 | PIC16F630PIC16F676 | HVP «Vpp-first» | Vdd+3,5..13,5 | Click to view image |
PIC16F6xx | PIC16F631PIC16F677PIC16F685PIC16F687PIC16F689PIC16F690 | HVP «Vpp-first»HVP «Vdd-first» | 10..13 | Click to view image |
PIC16F636PIC16F684PIC16F688 | Click to view image | |||
PIC16F639 | Click to view image | |||
PIC16(L)F707 | PIC16F707PIC16LF707 | 8..9 | Click to view image | |
PIC16F716 | PIC16F716 | HVP «Vdd-first» | 11..13,5 | Click to view image |
PIC16F72 | PIC16F72 | 12,75..13,25 | Click to view image | |
PIC16(L)F720/721 | PIC16F720PIC16LF720PIC16F721PIC16LF721 | HVP «Vpp-first»HVP «Vdd-first» | 8..9 | Click to view image |
PIC16(L)F72x(A) | PIC16F722PIC16LF722PIC16F722APIC16LF722APIC16F723PIC16LF723PIC16F723APIC16LF723APIC16F726PIC16LF726 | Click to view image | ||
PIC16F724PIC16LF724PIC16F727PIC16LF727 | Click to view image | |||
PIC16F7x | PIC16F73PIC16F76 | HVP «Vdd-first» | 12,75..13,25 | Click to view image |
PIC16F74PIC16F77 | Click to view image | |||
PIC16F7x7 | PIC16F737PIC16F767 | Click to view image | ||
PIC16F747PIC16F777 | Click to view image | |||
PIC16F/HV753 | PIC16F753PIC16HV753 | HVP «Vpp-first»HVP «Vdd-first» | 10..13 | Click to view image |
PIC16F/HV785 | PIC16F785PIC16HV785 | 10..12 | Click to view image | |
PIC16F785-ICD | Click to view image | |||
PIC16F87/88 | PIC16F87 | HVP «Vdd-first»LVP «Special pin» | Vdd+3,5..13,5 | Click to view image |
PIC16F88 | Click to view image | |||
PIC16F87x | PIC16F870PIC16F872PIC16F873PIC16F876 | Click to view image | ||
PIC16F871PIC16F874PIC16F877 | Click to view image | |||
PIC16F87xA | PIC16F873APIC16F876A | Click to view image | ||
PIC16F874APIC16F877A | Click to view image | |||
PIC16F88x | PIC16F882PIC16F883PIC16F886 | HVP «Vpp-first»HVP «Vdd-first»LVP «Special pin» | 10..12 | Click to view image |
PIC16F884PIC16F887 | Click to view image |
Здравствуйте.
Мне понадобилось одноразово запрограммировать два МК PIC16F676.
Собрал программатор Multi PIC Programmer 5 Ver.2 по материалам двух статей
https://drive.google.com/file/d/1hWiqeMtqj4jQQdUq_EQd-VdOFZPpTdNy/view
https://drive.google.com/file/d/1rWeL-SzLlWD014sGG16cKrN8i_UBIob2/view
Схема крупным планом (т.к. в pdf-документе плохо видно)
https://drive.google.com/file/d/1vDp2vSbhSl-R1pPi-VD3H-3NVcx4drca/view
Получилось вот такое чудо
https://drive.google.com/file/d/1R0hs2tJRL9UQa5GvN7LYhbGIbJkaDu7T/view
Попытки прошивки привели к двум дням и одной ночи танцев с бубном (использовал WinPic800) — МК стирается, во влеше 3FFF (почему кстати не FFFF), а при заливке программы во всей флеше нули. Что делаю не так?
Уже решил переделать программатор на RCD-версию с этого сайта
В статье https://radiohlam.ru/rcd_pic_prog/ сказано: =Я успешно программирую этим программатором (RCD-версия, уточнение) контроллеры PIC12F629 и PIC16F628A=
В этой статье смотрю пиноуты 628А и 676 по открывшимся скриптом окнам (работа скажем прямо над статьей проделана колоссальная — обработать 69 даташитов контроллеров и столько же картинок к ним), и по 2-й и 3-й колонке вижу сходство (HVP «Vpp-first» Vdd+3,5..13,5), разница лишь в установке в колодку. Но что значит строка =HVP «Vpp-first» Vdd+3,5..13,5=?
В контроллерах Атмел проще — зажал ресет при старте и заливай по UART, здесь же как-то всё мутно, четыре!!! варианта прошивки https://radiohlam.ru/progr_asm_6/
Получается нужно Vdd на первую ногу подавать 13.5В ? вместо 5В, с предварительно поданным на 4-ю ногу Vpp=5V ??
Проясни пожалуйста ситуацию.
Схемку позже посмотрю, пока кратко по другим вопросам:
— вот так у них криво данные хранятся, потому что шина команд 14-разрядная.
— HVP означает, что контроллер поддерживает «высоковольтное» программирование (когда для перевода в режим программирования используется повышенное напряжение), «Vpp-first» — алгоритм перехода в режим программирования, при котором сначала нужно подать Vpp (напряжение программирования), а затем Vdd (напряжение питания). Ну и в конце указан диапазон допустимого напряжения программирования (скажем если Vdd=5 Вольт, то Vpp может быть от 5+3,5=8,5 Вольт до 13,5 Вольт).
— нет, на первую ногу нужно подавать +5 Вольт, но только после того, как на 4-ю ногу подано Vpp (в соответствии с алгоритмом «Vpp-first»).
Посмотрел схему. Вроде всё грамотно, есть даже выбор алгоритмов Vpp-first / Vdd-first. Если всё собрано правильно, то должно работать. Могут быть проблемы с операционкой (всё-таки писались все эти проги давно). Решается запуском старых прог под виртуальной машиной с WinXP. Ещё вот эту статью попробуйте почитать: https://radiohlam.ru/uniprogr_tune/ , — возможно имеет смысл поиграться с инвертированием разных линий в программе.
Спасибо за быстрый ответ.
= Могут быть проблемы с операционкой (всё-таки писались все эти проги давно). Решается запуском старых прог под виртуальной машиной с WinXP.=
— С операцинкой всё гуд, для этой цели притащил домой с работы на ночь раритетный Хитачи
https://drive.google.com/file/d/15OUT8v0mT9Dh2xMy5PrC9GTmJE5urNAA/view
Винда-98, прямой доступ к портам, используется уже лет 10 как ПЛК через LPT на производстве сетки-рабицы
= возможно имеет смысл поиграться с инвертированием разных линий в программе=
— побоялся это делать, но уже прикупил ещё один контроллер под кривые руки, теперь можно и поиграться.
Эту статью https://radiohlam.ru/uniprogr_tune/ почитал, очень полезная, почитал ещё и эту https://radiohlam.ru/uniprogr/.
Есть ещё интересный материал как отвязаться от COM-порта пусть даже и медленно — https://drive.google.com/file/d/1FV5-f7HfnXy5LC4zxetrw3SP1J0uE9IO/view
К тому же и приблуды для этого от ардуино проектов остались
https://drive.google.com/file/d/1trVKo6FjH60Rao4xspGbBg_YABn4d0rR/view
Но всё в воскресенье, фулл тайм работа и шестидневка 🙂