sergm411

Не перепрошивается PIC16F628A

16 сообщений в этой теме

sergm411    3

Здравствуйте , я собрал часы по этой схеме http://www.labkit.ru/html/clock?id=470

Прошил контроллер самодельным PicKit 2 Lite , и он перестал определятся , часы работают без проблем но контроллер получается как одноразовый . Разработчик часов предупреждает об этом , вот я думаю может есть способ вернуть его к определению с моим программатором . Прикрепил прошивку , может подскажите что в ней его блокирует .

Old_clock_IN14+DS18+beep.hex

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
oldmao    1 464

Скорее всего программно сброшен бит LVP конфигурации, разрешающий низковольтное программирование (только от +5 вольт). Теперь ищи/делай высоковольтный (HV) программатор, чтобы им выставить этот бит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Alex    551
10 часов назад, sergm411 сказал:

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

В статье же написано :

Цитата

Для работы часового кварца в программе пишется пара строк:

T1OSCEN = 1; // вкл тактового генератора

TMR1CS = 1; // внешний тактовый сигнал

После того, как прошивка с этими параметрами будет прошита в микроконтроллер, микроконтроллер перестает определяться простыми программаторами (в том числе Экстра-Пик и PicKit2-Lite).



 

10 часов назад, sergm411 сказал:

вот я думаю может есть способ вернуть его к определению с моим программатором

Опять же, всё написано :

Цитата

Если в оболочке PICkit2 (PICkit 3) поставить галку "Use VPP First Program Entry", микроконтроллер начинает определяться (перепрошиваться, стираться …).
 



 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
sergm411    3

Ставил я галки , ничего . Вот скрин .

 

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

1.jpg

Вот программа его определяет по умолчанию . Подпаивал к нему AUX , тоже без изменений .

222.jpg

Программатор тест вроде проходит .

35.jpg

Изменено пользователем sergm411

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
UTSource

Найдите миллионы труднодоступных

электронных компонентов

Alex    551

Ну чудес не бывает. Может кит у Вас лайт-версии ?
То, что такая проблема есть, это точно. Сам сталкивался с ней. Но с ней справлялся и PICkit3 и даже переделанный под "First VPP" экстра-пик.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
sergm411    3

Да лайт версия . А что нужно сделать , добавить чтобы заработало ? Или придется купить полноценный программатор ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Alex    551

Не в курсе. На сколько мне известно, лайт-версия ущербна в цепях управления питанием. Отсюда и подобные проблемы.

PS: А зачем переделывать/покупать ? Он же шьёт нормально. Для повторения конструкций - достаточно.
 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
sergm411    3

Вот в том то и дело что ущербный . Я собрал сперва часы без датчика температуры и прошил соответствующей прошивкой , после передумал и купил датчик , а прошить уже не могу . Или программатор купить , или всегда в таких ситуациях ходить за новым МК .

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
sergm411    3

Сегодня купил PicKit 2 , и перепрошил без проблем :D . Поставил галку в меню программы , контроллер начал определятся , как и писал разработчик часов .

  • Одобряю 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IMXO    1 357
В 04.06.2017 в 00:44, Alex сказал:

В статье же написано :

Цитата

Для работы часового кварца в программе пишется пара строк:

T1OSCEN = 1; // вкл тактового генератора

TMR1CS = 1; // внешний тактовый сигнал

После того, как прошивка с этими параметрами будет прошита в микроконтроллер, микроконтроллер перестает определяться простыми программаторами (в том числе Экстра-Пик и PicKit2-Lite).

 

автор несколько лукавит...

Цитата

    processor 16F628A
    #include <P16F628A.INC>
    __config 0x3F10
;   _CP_OFF & _DATA_CP_OFF & _LVP_OFF & _BODEN_OFF & _MCLRE_OFF & _PWRTE_ON & _WDT_OFF
;   & _INTOSC_OSC_NOCLKOUT

и это в документации есть , и на форуме обсуждалось не один раз, принудительная подача Vpp раньше Vdd решает проблему

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Tecnik2    0

Интересная информация. У меня тоже некоторые проблемки с этой микросхемой (+аналогично с PIC16F468A).

Прошиваю на ChipProg по LPT. Не прошивается одна фюза - LVP.

Считывая стертый PIC, LVP - RB4/PGM pin has PGM function, low voltage programming enabled.

CONFIG - 03F94h

Загрузив файл прошивки, LVP - RB4 is digital I/O. HV on MCLR mast be used for programming

CONFIG - 03F14h

После прошивки идет сравнение и конфигурирование. Оно вот и проходит с ошибкой. Это одинаково для двух ПИК контроллеров.

Память записал верно. Отличие в одном фюзе.

Влияет ли эта ошибка на работу конечного устройства?

 

У 16F628A вывод RB4 не задействован, а вот у 16F648A он подключен к дисплею.

Схема.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Tecnik2    0

Начитался про LVP. Его нужно выключить. Вот в этом и проблема, не получается это сделать. Хоть собирай другой программатор и там пробуй.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IMXO    1 357

LVP можно выключить только при высоковольтном программировании, об этом написано в каждой спецификации на любой контроллер

собственно вам даже програ об этом грит

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Tecnik2    0

Спасибо. Вот на это и натолкнулся. Программатор то имеет высокие напряжения.

Проверил напряжения во время программирования на Vdd - 5В, LVP - 4,4В, Vpp - 7В.

Конечно, ничего не получается!

Хотя в проге написано, на фото слева внизу, напряжения программирования Vpp - 13 В, Vcc - 5 В.

Облазил прогер, не знаю как включить режим высоковольтного программирования.

Кто-то знает?

Программатор ChipProg по LPT порту. Подключен к нему блок питания с двумя напряжениями 10В и 28В. Во время программирования не просидает.

 

Прог.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Tecnik2    0

Ура! Победа.

Проблема была вот в чем. Кто-то паял питание к программатору и перепутали 10В и 12В местами (гнезда нет, провод напрямую к плате припаян). Конечно из 10 В не получиться получить 13В. Перепаял.

Все. Оба пика прошил. Класс!

 

Теперь при программировании как  положено Vdd - 4.8 В, Vpp - 12.8 В, LVP - 0.03 В.

Поделиться сообщением


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

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас


  • Похожие публикации

    • Гость Keil
      Автор: Гость Keil
      Добрый день, ситуация такая - попались мне под руку куча рассыпухи в числе которых достаточное количетво тинек и прочей лабуды - пытась хеловродить, попробовал взять готовый пример работы тиньки и лсдишника здесь также имею ардуинку как  Айсипи и чудесно мигаю светодиодом на мк прошитом ею же  так вот при попытке залить код который по ссылке чуда не произошло.
      курение мануалов лсдишника дало понять лиш одно что старший и младший биты одинаковы с лсдишником со статьи - лсдишник рабочий (игрался контрастом одной строки через V0  и потенциометр ) - как в прочем и мк, было задумано ковырнуть все это в протеусе и атмельстудии, но результатом не увенчалось. Пожалуйста тыкните носом что да где не так.
      fail.zip
    • Автор: В гостях у Михалыча
      Приветики. На днях купил колонку сгоревшую под ремонт. При нажатии на кнопку включения сразу же нагревается микросхема (B6THM1016 1516arz) В интернете вообще нет ничего о ней. Как я понял, это контроллер сенсорных кнопок и питания (даже если включить зарядку, то микруха не греется, пока не нажмешь на кнопку), ибо есть еще две микросхемы, одна из них усилитель, а вторая-блютуз. Может ее получится как-то заменить или выкинуть вообще? 


    • Автор: Сергей Скопинцев
      Нужно разработать циклическую программу сбора информации от 10 измерительных источников. Период повторения цикла - одна секунда
      Источники:
       М - тензопреобразователь давления. Мостовая схема питается постоянным напряжением, выходной сигнал от 0 до 100 милливольт
       Т, ТМ, ТА- три канала измерения изменения напряжения в диапазоне от 400 до 600 милливольт (тоже нужен мост?)
       ЛМ - анализатор максимума напряжения (от 0 до 5 Вольт) по 10 точкам более-менее распределённых в измерительном цикле. Найденный максимум потом должен участвовать в анализе, постепенно уменьшаясь на 20% каждый цикл
       ВЛ - измерить напряжение на Малой емкости (50 пФ) с помощью емкостного делителя по алгоритму:
                         Снять Землю со средней точки емкостного делителя, подать на емкостной делитель положительный Импульс
                         Замерить нужное нам напряжение в средней точке делителя
                         Снять положительный Импульс с делителя, посадить на землю среднюю точку делителя
      - остальные каналы К7...К10  служебные
      Разрядность данных - 16 двоичных.

      Результаты писать на MicroSD текстовым файлом, на первом месте в строке текущее время в секундах, остальные каналы разделены пробелами
      Порядок каналов:
      Т - М -ТМ - Вл - ЛМ -...
      Коэффициенты усиления по каждому информационному каналу должен иметь возможность изменить оператор по формуле y = Ax + B
      Прибор автономный, питается от + 5 Вольт.
       
    • Автор: Ru_s
      Здравствуйте. Подскажите пожалуйста, возможно ли на attiny13 реализовать такую штуку. Мне в процессе работы программы нужно поменять режим работы таймера/счетчика с fast PWM на обычный счёт, отсчитать длительный промежуток времени и опять вернутся в режим ШИМ. Т.е. я подаю на ногу сигнал ШИМ и когда он в максимальном значении, я его отключаю, и тупо подаю на ногу высокий лог. уровень. В это время Т/С по идее свободен, и мне надо посчитать время работы выхода на максимальном лог. уровне, при достижении какого-то значения времени нужно перевести т/с обратно в ШИМ. Возможно ли это? И как приблизительно это реализовать
    • Автор: Kiraspbkiev Kira
      День Добрый. Есть два вопроса от новичка: 1) Правильная ли схема сделанная мною? 2) если схема верна то как правильно подключить к atmega328p-mu usb на чипе cp2102-grm?
      На схеме колодка JP1 это AVR ISP а JP2 это UART
      С проектированием столкнулся в первый раз, цель узнать что то новое и сделать своими руками:)

  • Сообщения

    • @bravissimo А когда в сеть включаем УтюГ -1кВт бросок будет поболее ...Как вариант по входной цепи -конденсаторик по выходной уже сказали ...Да великий Гугл знает
    • Это - не для СБОРА информации, посему к шпионской технике отношения не имеет. Но поскольку несёт опасность для здоровья (поинтересуйтесь у отоларингологов, легко ли вытащить застрявший предмет из уха, особенно если он норовит примагнититься к инструменту, раня всё на своём пути), то получить сертификат для легальной продажи невозможно.
    • Значит с инициализацией что то напутано  . Могу весь код скинуть , но он к f103
    • Не совсем так, я в отладчике ставлю breakpoint перед вызовом функции Send_to_UART(), сразу после инициализации - но даже инициализация не выполняется, микроконтроллер сразу попадает вот сюда: .size Reset_Handler, .-Reset_Handler /** * @brief This is the code that gets called when the processor receives an * unexpected interrupt. This simply enters an infinite loop, preserving * the system state for examination by a debugger. * * @param None * @retval : None */ .section .text.Default_Handler,"ax",%progbits Default_Handler: Infinite_Loop: b Infinite_Loop .size Default_Handler, .-Default_Handler (скопировал с описанием, чтобы нагляднее было)
    • почему не было, были, с китайским жки w2004a , по описанию аналог LM1604 , собствено под последний отлаживалась в протезе , с 2004а не заработала, долго разбирался, были отличия в последовательности инициализаии, исправленая рабочая прошивка для железа в протезе вываливает кракозябры.
    • Здравствуйте, вот такое дело, собрал плату, при включении первым идёт высокий потом смешанный. Собрал вторую плату, при включении первым идёт высокий потом смешанный. Низкого нет и всё. Замаялся искать.Куда копать? М/С менял, подбирал - результата ноль. Где то потерялся, найти не могу.