Балда 0 13 ноября, 2006 Опубликовано 13 ноября, 2006 · Жалоба Проблема!!!! При программировании по внутрисхемному интерфейсу сыходят из строя конттроллеры (не функционируют, мертвые). Схема рабочая(перепайка процессора и работаем). Питание при программировании от программатора. Питание подается , считываются программатором, перепрограммируются, верификация ОК!, но не работают. И таких доходит до 10%, от общего кол-ва. Контроллер: PIC12F675 Конфигурация: __CONFIG(UNPROTECT & BOREN & MCLRDIS & PWRTEN & WDTEN & INTIO); (HT PICC) Программатор: ChipProg+ , ПО версия V. 3.95.00 или V. 4.00.12 Beta Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
syv 0 13 ноября, 2006 Опубликовано 13 ноября, 2006 · Жалоба Не знаю как PIC16F675, но PIC18F1320-I/P имеют определенный процент (~0,8%) "непрограммируемых" микросхем. Иногда помогает исключение защиты памяти. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
xemul 0 13 ноября, 2006 Опубликовано 13 ноября, 2006 · Жалоба Скорее всего слетает байт калибровки (точнее, программатор неправильно его считал, а потом записал не думая, что получилось). Что живет в убитых кристаллах по адресу 0x3fe? Должно быть что-то вида 0x34xx (retlw xx), xx - и есть заводская калибровка. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Балда 0 14 ноября, 2006 Опубликовано 14 ноября, 2006 · Жалоба Скорее всего слетает байт калибровки (точнее, программатор неправильно его считал, а потом записал не думая, что получилось). Что живет в убитых кристаллах по адресу 0x3fe? Должно быть что-то вида 0x34xx (retlw xx), xx - и есть заводская калибровка. Может быть по адресу 0x3fff, по моему в этом адресе ложат кончтанту, + программатор ограничивает доступ к последнему элементу от 0 до 0x3fe. Но согласен проверка не помешает Есть вероятность что портятся байты конфигурации bandgap (неправильно читаются или еще как) Буду проверять , программатор не разрешает эти биты произвольно править. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Alex B._ 0 14 ноября, 2006 Опубликовано 14 ноября, 2006 · Жалоба Вам на microchip.ru уже все сказали - если вы нарушаете спецификацию программирования - никто вам не поможет. Используйте нормальный программатор и выкусите конденстатор 100 мкф по питанию. trt вам все подробно объяснил. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
greg 0 14 ноября, 2006 Опубликовано 14 ноября, 2006 · Жалоба Проверьте в битах конфигурации правильно ли Вы выбрали режим ГЕНЕРАТОРА. Вероятнее всего причина в этом. А программатор ChipProg+ - замечательный, пользуюсь им уже более 4 лет и никогда не было вопросов. Кстати, уже на сайте Phyton.ru выложен 4.32, но это никак не соотносится с Вашей проблемой ! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
upc2 0 14 ноября, 2006 Опубликовано 14 ноября, 2006 · Жалоба Причина может быть и в низковольтовом программировании. В моей практике 3-5 раз и контроллер перестает записываться.С 14 вольтами они не спорят. Если верификация Ok, то вероятно контроллеры исправны.Прочитайте в них память и конфигурационное слово. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Балда 0 14 ноября, 2006 Опубликовано 14 ноября, 2006 · Жалоба Вам на microchip.ru уже все сказали - если вы нарушаете спецификацию программирования - никто вам не поможет. Используйте нормальный программатор и выкусите конденстатор 100 мкф по питанию. trt вам все подробно объяснил. Я хочу уточнить. Нужен ответ: они будут программироваться, НО возможно работать НЕ будут. Если я нарушаю спецификацию, программатор ( если он хороший) должен сообщить мне об этом, а на деле программаторникакого несоответствия не обнаруживает. Я обязательно изменю конденсатор и проведу пробное программирование партии, но я хочу выяснить что именно выходит из строя(затирается в памяти), нужно узнать причину Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
xemul 0 14 ноября, 2006 Опубликовано 14 ноября, 2006 · Жалоба Скорее всего слетает байт калибровки (точнее, программатор неправильно его считал, а потом записал не думая, что получилось). Что живет в убитых кристаллах по адресу 0x3fe? Должно быть что-то вида 0x34xx (retlw xx), xx - и есть заводская калибровка. Может быть по адресу 0x3fff, по моему в этом адресе ложат кончтанту, + программатор ограничивает доступ к последнему элементу от 0 до 0x3fe. Но согласен проверка не помешает Есть вероятность что портятся байты конфигурации bandgap (неправильно читаются или еще как) Разрядность инструкции контроллера PIC12F675 составляет 14 бит. При просмотре дампа памяти программы удобно включать режим просмотра по 2-хбайтовым словам. Инструкция возврата калибровочного значения располагается по адресу 0x3fe, и там должно быть именно 0x34xx. Подробности в даташите. Буду проверять , программатор не разрешает эти биты произвольно править. И это правильно (это я про то, что "не разрешает"):). Подробности в даташите. У меня под рукой и ChipProg2, и ProMate2, и PICStart, так что есть с чем сравнивать. Могу сказать, что ChipProg при внутрисхемном программировании спокойно справляется с емкостью 100 мкФ по питанию, но очень желательно при этом использовать соответствующий адаптер - буферы по PGD, PGC в программаторе слабоваты. На ProMate было от души матов сложено за бесподобную конструкцию установки адаптеров - вместо разъемов две полоски токопроводящей резины - типа работаем с ЖК-индикатором:(. Дорогая малополезная игрушка. PICStart - development programmer. Еще одна возможная причина отвалов - плохой/мерцающий/зависящий от человеческого фактора контакт в используемом разъеме ICSP. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Балда 0 15 ноября, 2006 Опубликовано 15 ноября, 2006 (изменено) · Жалоба соответствующий адаптер истользую, сделанный самостоятельно по схеме предложенной производителем Chip Prog. Сделан качественно. Конечный адрес в микросхеме установлен 0х3fe, С асемблером общаюсь на ВЫ, программны на нем не писал (больше уважаю С ), но листинг в узких местах алгоритмов смотрю и оптимизирую(по возможности). В одной из неработающих МС действительно удалена команда возврата и константа, каким образом - непонятно (может жертва экспериментов), с этим ясно. вот код который загружает константу (стандартная директива ht-picc): /*----- настройка генератора ----- */ 365: 366: OSCCAL = _READ_OSCCAL_DATA(); BCF 0x3, 0x5 CALL 0x3ff BSF 0x3, 0x5 MOVWF 0x10 практически, на мой взгляд, эдентично даташиту Если не сложно обьясните почему CALL 0x3ff а не CALL 0x3fe Контакт слотовый , может быть и мерцающим (но мне кажется программатор при верификации должен сообщить о несовпадении) Изменено 15 ноября, 2006 пользователем Серёга_1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
xemul 0 15 ноября, 2006 Опубликовано 15 ноября, 2006 · Жалоба Извините, утро вечера гораздо приятнее:). 0x34xx в 675 живет по адресу 0x3ff. Был неправ. Каким образом программаторы умудряются запороть калибровку, мне не понятно. Приключалось на всех помянутых мной программаторах. Тот же ProMate при верификации спокойно заявляет "Calibration bits invalid", хотя начало программирования предполагает, что предварительно было считано что-то вроде 0x34xx (иначе он сразу орет про калибровку и ничего не делает). Самое гадство - ни ProMate, ни ChipProg не позволяют записать калибровку с потолка (например, 0x3480 как середину диапазона). Я восстанавливал калибровку на PICStart'e под MPLab 5.7, которые еще не были такими умными. Сейчас забил, и, т.к. число отвалившихся микросхем плавно приближается к 200 (на ~50000 запрограммированных), студент в фоновом режиме пишет прогу для восстановления калибровки. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vilte 0 18 ноября, 2006 Опубликовано 18 ноября, 2006 · Жалоба Давно пользуюсь для программирования программой WinPic и простым программатором на сом порте. Из 10000 ни одного прокола. Там кстати можно менять значение калибровки. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Ilya_z 0 20 ноября, 2006 Опубликовано 20 ноября, 2006 · Жалоба За ChipProg замечено - есть проблемы с ICSP, особенно с 18хх - с родной "шайбой" (icd2) проблем в тех же условиях нет Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
arizona 0 22 ноября, 2006 Опубликовано 22 ноября, 2006 · Жалоба Самое гадство - ни ProMate, ни ChipProg не позволяют записать калибровку с потолка (например, 0x3480 как середину диапазона). Я восстанавливал калибровку на PICStart'e под MPLab 5.7, которые еще не были такими умными. Сейчас забил, и, т.к. число отвалившихся микросхем плавно приближается к 200 (на ~50000 запрограммированных), студент в фоновом режиме пишет прогу для восстановления калибровки. PICkit2 умеет восстанавливать утерянную калибровку методом прошивки маленькой программы которая дергает ногой, PICkit2 измеряет частоту и восстанавливает калибровку. Так что если студент умный - посмотрит исходники PICkit2. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
J.Bond 0 23 ноября, 2006 Опубликовано 23 ноября, 2006 · Жалоба У меня похожая проблема, только пик 12f629 и он нехочет программироваться. Читается, вся память 3fff, конфигурация 3fff, ID - FFFF. Поидее распиновка ног таже что и 12с508(509), программатор JDM, и ICProg и WinPIC ставят один и тот же диагноз. Насколько я понимаю спецификация программирования закладывается в программе, но оба программатора поддерживают 12f629. Заметил однако одну особенность, когда вставляю 16f84a или 16f876a (с другими пока неработал, но с этими никаких таких проблем небыло) WinPIC распознает ее правильно, а когда вставляю 12-й - пишет "устройство нераспознано". Как я понимаю это проблема конкретной микросхемы, может кто сталкивался с подобным и лечится ли это или попробовать прошить другой экземпляр?? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться