PDA

Просмотр полной версии : Биты защиты PIC16F873A



Валентин
15.04.2009, 12:22
Господа, просветите, пожалуйста, по PIC16F873A.
Четыре ПИКа возможно убиты. Мне программировали на программаторе, который загружает только файлы с расширением .bin
Мои прошивки (НЕХ-расширение) переименовывали в bin-файлы. Что-то прописалось, а в основном - нет. Теперь ни стереть, ни перепрописать ПИКи. Сказали "...там биты защиты включились". ПИКи живые, читаются. Но ничего больше с ними не сделаешь. Это так, или меня опять "разводят"? Что-то можно с ними сделать.
Мои прошивки - реальные, рабочие. НЕХ-файлы. Но ПИКи больше ничего не позволяют. Только прочитать что записано. При записи ошибка по адресу 00001F. При стирании через полсекунды программатор говорит - стерто. Но, ничего не стирается.
Выход есть? Или только новые выписывать?. Эти-то ждал три недели :cry:

rx3apf
15.04.2009, 12:40
Четыре ПИКа возможно убиты. Мне программировали на программаторе, который загружает только файлы с расширением .bin
Мои прошивки (НЕХ-расширение) переименовывали в bin-файлы.

Криворукие какие-то "программисты". Если требуется .bin (как, например, известный программатор "Turbo"), то используется утилита hex2bin. И "Turbo", к примеру, вытащит и фьюзы и содержимое EEPROM данных из получившегося бинарника.



Теперь ни стереть, ни перепрописать ПИКи. Сказали "...там биты защиты включились". ПИКи живые, читаются.

Даже читаются ? Тогда это не биты защиты. В любом случае, искать менее криворуких деятелей с менее кривым программатором. У этих контроллеров при стирании и биты защиты тоже стираются. В конце концов, собрать какой-нибудь интерфейс JDM и использовать программатор WinPIC (или WinPIC800, не помню, кто из них "прямее").


Но ничего больше с ними не сделаешь. Это так, или меня опять "разводят"?

Или разводят или сами ни ухом, ни рылом. Нафиг таких деятелей... Под эту часть семейства сделать программатор самостоятельно несложно. А вообще могу еще порекомендовать купить PicKit2, это "родной" USBшный программатор под "флешевые" PIC всех семейств. Он совсем недорогой и довольно универсальный.

Валентин
15.04.2009, 12:47
У этих контроллеров при стирании и биты защиты тоже стираются. В конце концов, собрать какой-нибудь интерфейс JDM и использовать программатор WinPIC (или WinPIC800, не помню, кто из них "прямее").
Спасибо. Хоть некоторое облегчение. Лишь бы стирались биты защиты.
У меня JDM-84. Он не видел эти контроллеры. Точнее не работал с PIC-800, IC-Prog, WinPIC. Хотя 16F84 шил. Я хотел делать ExtraPIC, но "помогли".
Ладно, если биты защиты стираются - это радует.

rx3apf
15.04.2009, 12:55
[quote=rx3apf]
У меня JDM-84. Он не видел эти контроллеры. Точнее не работал с PIC-800, IC-Prog, WinPIC. Хотя 16F84 шил.

Так "не работал" с указанными оболочками или работал, но не шил новые кристаллы ? Если не шил, то мой склероз подсказывает, что есть жесткие требования к скосрости нарастания сигнала Vpp, проблема, возможно, в этом.


Я хотел делать ExtraPIC, но "помогли".

Вот сколько я не пробовал разные самодельные оболочки под JDM, все они разной степени кривизны. Остановился на каком-то WinPIC. Но и он не знает про самые новые кристаллы (те, что с расширенным конфигурационным словом, F88x, например. И что-то сомневаюсь, что с тех пор что-то изменилось. Потому и повторюсь, PicKit2 - хорошая альтернатива простым самоделкам. Впрочем, там все открыто, можно повторить самостоятельно. Но он и родной дешевый...

Валентин
15.04.2009, 13:08
есть жесткие требования к скосрости нарастания сигнала Vpp, проблема, возможно, в этом.Скорее всего. JDM84 работал неплохо. Я им х...ренову тучу 84-х перепрошил. А 873й он не видел. JDM84 питается от СОМ-порта. Ну я и подумал, что надо сделать с внешним питанием. А мне сказали зачем? Дескать, у нас есть "МАСТЕР". Мы им все шьем. Вот и нашили. Когда я посмотрел, этот Мастер заточен под памяти. Оправдывались что все станки ЧПУ им прошивали. Но, уже было поздно. Контрольную сумму выдает А000 вместо 0000. А, где что-то "нарисовал" - контрольная сумма А489. И ничего не дает. Ни в тех ПИКах, ни в других.


PicKit2 - хорошая альтернатива Так если бы пошел и купил. А то в Москву надо ехать. Здесь ничего из подобного зверья не водится. Даже МАХ232 не могу найти. Хотя есть МАХ3221, но она имеет один канал ТХ/RX, а мне нужно два. Не хочется убивать свой СОМ-порт. Он у меня один. А я уже ученый.

AlexZander
15.04.2009, 13:10
В WinPic 800 версии 3.55 873А контроллер присутствует.

Валентин
15.04.2009, 13:32
В WinPic 800 версии 3.55 873А контроллер присутствует.Да, но JDM84 не видел 873-го ПИКа.
Ладно, самое главное, что коды защиты стираются. А остальное, как-нибудь попробую победить.

rx3apf
15.04.2009, 16:03
Так если бы пошел и купил. А то в Москву надо ехать. Здесь ничего из подобного зверья не водится. Даже МАХ232 не могу найти.

Да это понятно, надо в Москву или Питер. Ну, это я к тому, что при случае стоит обзавестись. Кстати, MAX232 (если именно MAX) - не лучшее вложение денег. HIH202 и доступнее и дешевле.


Не хочется убивать свой СОМ-порт. Он у меня один. А я уже ученый.
А на этот случай надо купить портовку (на PCI они тоже есть). Там 75232 сгорит - ну и не жалко, заменить не долго.

Александр Бодров
15.04.2009, 17:37
Пользуюсь самодельным ExtraPic. PIC16F876A шьет без проблем с первой попытки.

Валентин
15.04.2009, 18:07
Там 75232 сгорит - ну и не жалко,
Лежит в запасе GD75232.


Пользуюсь самодельным ExtraPic.Вот и хочу сделать его. МАХ232 задерживает.
Кстати, вопрос по ЭктраПИК. Я нигде не встречал подтяжку земли на порт PGM. В этом программаторе он есть. Земля тянется через 1 килоом. Это что, действительно нужно?.
Ведь программатор опознается как JDM. А в обычных JDMах подтяжки нет.

AlexZander
15.04.2009, 19:32
Я нигде не встречал подтяжку земли на порт PGM. В этом программаторе он есть. Земля тянется через 1 килоом. Это что, действительно нужно?.
Где то читал,что рекомендуют "подтягивать" на землю при программировании через панельку,а через ICSP т.е. в плате можно без.Объяснений этих рекомендаций не дано,в EXTRA тоже рекомендуют как бы для стабильности,я пробывал и так и этак разницы не заметил все шьет стабильно,но у меня панель ZIF и ICSP.В последнем extra pic для пиков и авров сослепу этот резистор на другой вывод припаял,программиров ал нормально,а заметили на форуме когда фото выложил :D http://forum.cqham.ru/viewtopic.php?p=2895 55&highlight=#289555

Александр Бодров
15.04.2009, 19:42
При программировании PIC16F876A внутрисхемно на Extrapic я подтяжку вывода PGM на землю не применял, а вот при программировании на PonyProg от Ланконнели, без подтяжки PGM микроконтроллер программироваться не хотел и еще вывод кварца заземлял через конденсатор 0.1 мкф. Мучился долго, пока не собрал ExtraPic.

Валентин
15.04.2009, 21:48
рекомендуют "подтягивать" на землю при программировании через панельку
Вот этого не пойму. Какая разница? Внутрисхемно условия даже хуже. Ладно, придется вместо МАХ232 использовать одиночный трансивер 3221. Недостающий канал через транзистор организовать.

А для AVR у меня другой самодельный программатор. От параллельного порта, внутрисхемное программирование AVR. Но, туда я не хочу совать эти ПИКи. LPT порт слабее СОМовского. Мало ли что. Не такой уж я продвинутый в программировании. Не дай Бог чего, локти прогрызешь.

Александр Бодров
15.04.2009, 22:44
Я. когда нет желания или возможности ехать за деталями, пользуюсь h**P//elbase.ru (ко мне ближе Воронеж) присылали даже одну м.с.. Все разложено по пакетикам. Срок примерно 2 недели. Это я к тому, что лучше на проверенной xx232. Печатки можно найти в сети.

vadim_d
15.04.2009, 23:57
Да, но JDM84 не видел 873-го ПИКа.
Ладно, самое главное, что коды защиты стираются. А остальное, как-нибудь попробую победить.
Валентин, JDM84 - это что-то отличное от оригинального JDM (как здесь: http://ant-anl.sourceforge.net/ )? Я шью таким с софтом IC-prog v1.05d, ставлю "Windows API" дабы не цеплять драйвер порта и не крутить подстройку его скорости. PIC16F873A пишутся и верифицируются, единственное требование - использовать десктоп компьютеры, у ноутбуков хилые порты.

Валентин
16.04.2009, 06:54
JDM84 - это что-то отличное от оригинального JDM (как здесь: http://ant-anl.sourceforge.net/ )?
Вадим, приветствую.
Да, это он. Только панелька у меня под 84-е ПИКи. Лет десять нареканий не было. 95% использовал с ноутбуками. На коротком (10 см шнурке-шлейфе). А 873А не увиделся этим программером. Раньше пользовался ДОСовским PIXом из под Win98, потом IC-Prog'ой c ХРюшей.

UN7GCE
16.04.2009, 13:58
Мои прошивки (НЕХ-расширение) переименовывали в bin-файлы. Теперь ни стереть, ни перепрописать ПИКи. Сказали "...там биты защиты включились". ПИКи живые, читаются.
Честно говоря, я ошарашен!
Сменой расширения файла HEX на BIN, содержимое не меняется! (так просто шестнадцатиричный превратить в бинарный?)
А также,
во первых, в известной нам с Вами прошивке Валенитин, биты защиты не выставлены и они обычно выставляются вручную при записи ПИКа (если очень хочется). При стирании уничтожается всё, ПИК становится чист как младенец.
Во вторых, как было определено, что ПИКи живые и читаются? Если стоит бит защиты, то прочитать залитую программу невозможно! Если оного бита нет, то да, возможно прочитать и сравнить с оригиналом.
Можно ещё после стирания проверить на чистоту, должны быть везде FF (см. снимок).
У меня сильное подозрение, что ПИКи загубили. :cry:

Валентин
16.04.2009, 15:48
Если стоит бит защиты, то прочитать залитую программу невозможно! Всех приветствую!
Евгений, это не мои слова. Это слова Великих Умельцев.
Я это прекрасно понимал и, поэтому, промолчал. А здесь и начал вопросы задавать.
К тебе один вопрос. Известная нам с тобой прошивка без вопросов относится к 873А?. Бо, просто 873 несколько отличается. Ибо, в ПиниПроге есть 873й, но она его (873А) "не берет". Работают с ним остальные проги.


Вадим
Обращаюсь к Вам. Вы уже помогли с прошивкой по синтезатору.
Снова от меня - ГРОМАДНЫЙ РЕСПЕКТ!! Вам.
Не мудрствуя лукаво, "сляпал" новый JDM84 (см. фото). По Вашей наводке. Там мой ПИК подключается с дополнительными портами. Чего я не делал. Я пробовал только RB6 и RB7. В приведенной Вами ссылке подключаются еще RB3. В описании стандартного JDM об этом нигде не сказано. Хотя 84й ПИК так же у меня используется с дополнительными портами.
Превесходно ПониПрогой, ICprog'ой, WinPIC800 ПИКи 16F84A читаются, стираются, пришутся. Добавил панельку под 16F873А.
Замечательно (WinPIC800 мгновенно определила тип контроллера) читаются, стираются и пишутся WinPIC800 и IC0Prog'ой. Поня не знает такого ПИКа (с буковкой А). Все встало на свои места.
А теперь - по существу.
Эти деятели, все-таки, где-то нагадили. Пишется нормально, но при сравнении с дампом прошивки выдает ошибку 0000h. Они что-то в EEPROM закатали. На первом скриншоте то, что считано со стертого контроллера. На втором - то, что нужно (из дампа прошивки).
Вопрос - как мне в EEPROMе все это выставить как нужно?. Там биты конфигурации (которые, я понимаю, они и поковерковали). Я в них ни уха, ни рыла.
Если можешь внятно рассказать, моя признательность :lol: не будет иметь границ.
В ПИКах не соображаю, но и не новичек. Постараюсь понять.

UN7GCE
16.04.2009, 16:59
...прошивка ... относится к 873А?.
Нет, писал я для 873, без А.
IMHO, по структуре файла, он ничем не отличается от 873А.
Тем не менее могу скомпилировать и для 873А (месагу в мыло, если есть необходимость).
По EEPROM, при стирании уничтожается всё! Везде! без всяких телодвижений.
При программировании необходимо отключить Wdog, кварц поставить на высокочастотный HS, остальное просто не трогать.

Валентин
16.04.2009, 19:36
!!!!!!!!!! Победил!!!!!! :super: :super: :lol: :super: :super:

Только что, старой версией WinPIC800 (3.56.c), все стер и с первого же раза все ПИКи стали писаться как положено.
Блин, более поздние версии этого же WinPIC800 не могли это сделать. WINPIC - так же. Хотя они и читали, и писали. ПониПрога - не знает этого ПИКа.
"Чудны дела твои, Господи" (С) - первая радиограмма на Земле.

Теперь точно знаю - во флэш-контроллерах ничего не блокируется. Только стирается. Если пик определяется (молодец WinPIC800, не знаю без него как определял бы работоспособность) и читается, то он точно живой. Все остальное - танцы с бубном.


писал я для 873, без АЕвгений все ОК! Дальше - в той ветке. Опять будем общаться. Я теперь "на коне". :rotate: :crazy: :rotate:

vadim_d
16.04.2009, 22:12
!!!!!!!!!! Победил!!!!!!
Валентин, принимайте поздравления! Бывает, что в софте при выпуске новой версии могут что-нибудь и завалить :-( А то я бы сейчас с умным видом начал перечислять, что, где и как проверить на соответствие генеральной линии партии :) По поводу синтезатора RD3AY - получил во вторник три Атмеги, но минимальную обвязку периферии для кнопок и валкодера никто не отменял, надо что-то слепить хоть на макетке. Попробую конечно для начала хоть одиночным светодиодом помыргать :)

Валентин
16.04.2009, 22:21
Да, Вадим. В понедельник ткну мордой специалистов. Заодно и покажу "крутой" программатор. Пусть немного поумерят свой апломб. А то, как моя мама говорила, на ср..ной козе не подъедешь. Спецы, блин. Только нервы попортили.
Ладно, зато как здесь в подписи у человека - "Обходя грабли, теряешь драгоценный опыт". :wink:

AlexZander
17.04.2009, 18:12
(молодец WinPIC800, не знаю без него как определял бы работоспособность) и читается, то он точно живой. Все остальное - танцы с бубном.
Рад что все получилось,тоже пробывал все проги,но остановился на WinPIC800,для чайников каким я являюсь в программировании микроконтроллеров,са мая лучшая программа,вот еще была бы открыта прошивка на GTP+,то большего и желать нечего.

SERGEY S.
14.05.2009, 18:32
Почитайте. будет полезно
Спасибо Валентин за ссылки,я читал это,но всеравно ничего не выходит. Не пойму что делаю не так (вроде бы все как всегда, а оно никак) Горят только знакоместа в верхней строке и все. Мне кажется что-то с битами конфигурации я делаю не так.

DL1BA
14.05.2009, 19:54
Я тоже недавно наступил на те же грабли при програмировании 628А пика. Програмировать пытался безуспешно программатором через COM-порт, хотя 84-й пик прошивается без проблем. Пришлось включать мозги. Оказалось, что в программаторе нужно убрать один диод который стоит между VDD и CLK. Программу использовал эту http://webs.uolsinectis.com .ar/nancy/pic/pic_de.html
На схеме программатора это диод D1.

Успехов!

Валентин
14.05.2009, 20:11
Мне кажется что-то с битами конфигурации я делаю не так.
Нет, Сергей.
Мне грамотные люди объяснили, а потом я и сам убедился - во флэш-ПИКах при стирании затирается ВСЕ. А, при программировании все (в том числе и конфигурация) зашивается так, как есть в прошивке.
Поэтому, после программирования, не поленитесь и скажите программе - "сравнить содержимое с файлом". Т.е., сравнить записанное с дампом прошивки. Если сравнение ОК, больше на прошивку ПИКа (зашитую) грешить не нужно. Следует искать "бяку". Либо кварц не запускается, либо ошибка в схеме, либо чего-то забыл допаять. Лет сорок пять, сорок семь назад я очень долго искал почему не работает собранный мной карманный приемник "Москва" Плотникова. Через три-четыре часа поисков выяснилось - к лежащей на столе плате приемника не подпаян динамик. С тех пор всегда заставляю себя все проверять. Всегда.
Только не всегда это получается :D

vadim_d
14.05.2009, 23:54
Горят только знакоместа в верхней строке и все. Мне кажется что-то с битами конфигурации я делаю не так.
Как советовал Валентин, запустите на всякий случай проверку после программирования. "Знакоместа" - это засвеченные прямоугольники? Если так, то скорее всего что-то перепутано или закорочено в проводах, идущих к индикатору.

Валентин
15.05.2009, 11:05
Кварц у него не запускался. Щщас фсе нормально :D

vadim_d
16.05.2009, 14:04
Кварц у него не запускался. Щщас фсе нормально :D
Ну тогда можно радоваться :) Мысль о кварце в мою голову тоже пришла, но уже когда комп выключил - попалась на глаза первая макетная платка с PIC16F873A, где 16 МГц маленький кварц (лодочка, HC49S) не желал заводиться, помог только 390 Ом резистор между выходом инвертора генератора и точкой соединения кварца с конденсатором. Подсмотрел это решение в описании PIC16F873A, Figure 14-1. С кварцами в корпусах HC49U проблем не было. Обычный мой совет в таких случаях (нет жизни в контроллере) - попробовать кварц на 4 МГц.

SERGEY S.
16.05.2009, 16:31
Сегодня поставил другой кварц на 16Мгц, я их покупал 2шт, и надо же было именно взять первый в руки нерабочий :) Все запускается как нужно. А тот кварц оказался совсем плохой (может даже не рабочий) он не запускается и в проверочном генераторе.

RQ3M
24.10.2011, 10:05
Собрал программатор по ссылке из 16 поста. Но в моем ноуте нет СОМ порта, есть LPT и есть переходник LPT - COM.
Будет ли работать программатор через этот переходник ( не спалю ли я чего ). Программу собираюсь использовать WinPic 800.

Любитель хорошего
26.10.2011, 20:56
если переходник на выходах TX, RTS, DTR даёт уровни около +12 и -12, то работать скорее всего будет, а если до 5 В - то нет(можно померять мультиметром)....что-то спалить при правильном подключении маловероятно...

SergeyTT
26.10.2011, 21:24
есть переходник LPT - COM.

Вы ничего не попутали? Может это переходник DB25F-DB9M,для подключения пожилых мышей к RS232?