Поклонники продукции Microchip Technology Inc тусуются тут.
Ответить

Re: Вопрос про PICkit2 и PICkit3

Пн окт 25, 2021 11:17:02

Наверное потому, что их туда записал код...
В конфиге есть защита чтения EEPROM, но она выключена в вашем случае.

Ситуация такова. Это приборная панель от скутера, с PIC18F85K90 на борту. В области eeprom должен лежать пробег. Но из нее я вычитываю нули. Что по моему мнению говорит о том что она была не прочитана. Так как я считал полный дамп после чего наездил пару км на сутере и ещё раз считал. Дампы оказались идентичны. Впринципе это и логично так как я считал в обоих случаях только область флеш. Дружище подскажи пожалуйста. Может быть такое что модифицированный конфиг файл который я использую написан под Pickit3 а не под Picki2. Эта мысль меня посетила после твоего ответа по поводу защиты от чтения, которая в моём случае по твоим словам отключена. Может я что то не то делаю???

Добавлено after 5 minutes 51 second:
Да и ещё один момент был замечен. Почему-то при автоопределении и чтении данного пика он не отдаёт id.

Добавлено after 1 minute 24 seconds:
IMG-20211019-WA0012.jpg
(98.46 KiB) Скачиваний: 231

Re: Вопрос про PICkit2 и PICkit3

Пн окт 25, 2021 12:15:47

Стоит галочка защиты чтения EEPROM, потому нули и читаются.

Re: Вопрос про PICkit2 и PICkit3

Пн окт 25, 2021 12:40:47

Ситуация такова. Это приборная панель от скутера, с PIC18F85K90 на борту. В области eeprom должен лежать пробег. Но из нее я вычитываю нули.

Вообще то говоря, штатным dat-файлом PIC18F85K90 НЕ ПОДДЕРЖИВАЕТСЯ PICkit2.
Это означает, что оный dat-файл у вас самопальный из интернета.
Я уже сталкивался с ситуацией, когда часть скриптов в самопальном dat-файле кривые.
Кроме того, смена скриптов может привести к потере автоопределения контроллера. Это значит, что в скриптах нет ID.

Добавлено after 4 minutes 34 seconds:
Стоит галочка защиты чтения EEPROM, потому нули и читаются.

В оболочке нет никаких "галочек защиты чтения EEPROM". Защита EEPROM определяется 7 битом старшего слова 5-го регистра конфига. Там 0xC0, что говорит о том, что защита НЕ ВКЛЮЧЕНА.
В 4 младших разрядах младшего слова 5-го регистра конфига все единицы (0x0F), что говорит о том, что защита самого кода во флеше так же отключена.

Добавлено after 6 minutes 22 seconds:
Может быть такое что модифицированный конфиг файл который я использую написан под Pickit3 а не под Picki2.

Инструменту по барабану какой конфиг в хексе и/или в МК.
Сменить конфиг с нуля на единицу в МК, не стирая прошивку, НЕВОЗМОЖНО.
И конфиг - это никакой не файл. Это группа регистров в МК, которые программируются при прошивке контроллера.

Re: Вопрос про PICkit2 и PICkit3

Пн окт 25, 2021 13:11:02

Ситуация такова. Это приборная панель от скутера, с PIC18F85K90 на борту. В области eeprom должен лежать пробег. Но из нее я вычитываю нули.

Вообще то говоря, штатным dat-файлом PIC18F85K90 НЕ ПОДДЕРЖИВАЕТСЯ PICkit2.
Это означает, что оный dat-файл у вас самопальный из интернета.
Я уже сталкивался с ситуацией, когда часть скриптов в самопальном dat-файле кривые.
Кроме того, смена скриптов может привести к потере автоопределения контроллера. Это значит, что в скриптах нет ID.

Добавлено after 4 minutes 34 seconds:
Стоит галочка защиты чтения EEPROM, потому нули и читаются.

В оболочке нет никаких "галочек защиты чтения EEPROM". Защита EEPROM определяется 7 битом старшего слова 5-го регистра конфига. Там 0xC0, что говорит о том, что защита НЕ ВКЛЮЧЕНА.
В 4 младших разрядах младшего слова 5-го регистра конфига все единицы (0x0F), что говорит о том, что защита самого кода во флеше так же отключена.

Добавлено after 6 minutes 22 seconds:
Может быть такое что модифицированный конфиг файл который я использую написан под Pickit3 а не под Picki2.

Инструменту по барабану какой конфиг в хексе и/или в МК.
Сменить конфиг с нуля на единицу в МК, не стирая прошивку, НЕВОЗМОЖНО.
И конфиг - это никакой не файл. Это группа регистров в МК, которые программируются при прошивке контроллера.

Как говорится, не чего не понятно но очень интересно. Не дорос я ещё для того чтобы осознать выше изложеное. Понял на 50% А если на более доступным языке. Какова вероятность того что я смогу зачить этот контролёр своим Pickit2. И что мне для этого нужно сделать?

Re: Вопрос про PICkit2 и PICkit3

Пн окт 25, 2021 14:14:40

Какова вероятность того что я смогу зачить этот контролёр своим Pickit2.
А можно написать тот же вопрос, но без странного жаргона?
А лучше опишите ИСХОДНУЮ задачу. Что есть изначально и что вы желаете получить на выходе?
А то вы половину думаете, что сделали, на самом деле нет. И спрашиваете про вторую половину... :tea:

Re: Вопрос про PICkit2 и PICkit3

Пн окт 25, 2021 14:42:30

Прошу прощения. Это не жаргон я хотел написать слово "зачитать" в смысле считать дамп, но T9 решил что лучше будет поставить вместо него "зачить" Задача такова: нужно считать дамп, откорректировать пробег в области епром и записать обратно. Советовали для этих целей воспользоваться бипрогом. Но у меня его нет и нет знакомых к кому можно было бы обратиться с этой просьбой. По этому я пошел по пути pickit2 он у меня есть. Как-то так.

Re: Вопрос про PICkit2 и PICkit3

Пн окт 25, 2021 15:17:28

Если исходный код и содержимое EEPROM не залочены, то нужно просто прочитать исходный чип, исправить в окне EEPROM данные и снова запрограммировать чип.
Так как прошивка не изменялась, программный код будет просто повторно перезалит, а содержимое EEPROM будет прошито с правками.
Но у меня есть смутное подозрение, что исходно содержимое EEPROM было залочено и читались нули. Вы сняли В ОБОЛОЧКЕ защиту, но толку от этого нет, потому что в самом МК данные остались залоченными. Перепрошив МК, вы туда загнали исходно считанные нули, но бит защиты был уже снят. Получили то, что сейчас мы видим на скрине.

Re: Вопрос про PICkit2 и PICkit3

Пн окт 25, 2021 15:24:14

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

Все верно. Но мы возвращаемся к тому с чего и начинали. В области еепром вместо данных вычитываются нули. Что говорит о том что область еепром была не считана. Соответственно и править нечего.

Re: Вопрос про PICkit2 и PICkit3

Пн окт 25, 2021 15:31:46

Все верно. Но мы возвращаемся к тому с чего и начинали.

эээ, нет, уважаемый... Мы получили ответ на вопрос почему читаются нули. Потому что исходно вы привели исправленное содержимое конфига и ничего об этом не сказали, введя публику в заблуждение. А это не по пацански.
Таким образом резюме.
Залоченное содержимое ЛЮБОЙ области флеша прочесть простыми способами НЕВОЗМОЖНО. Есть дорогостоящий метод вскрытия контроллеров, которые страдают глитчем. И это далеко не все МК. Стоит это как услуга примерно 5...10 тыс. долларов за чип.
Если формат данных в EEPROM вам известен, то можете его просто записать, не читая.
В догон. ЗЫ.
Судя по ненулевому программному флешу, он не был залочен. Поэтому есть очень трудоемкая возможность дизассемблировать код и понять что и как он пишет в EEPROM. И тогда можно будет записать то, что вам требуется.
Это работа заметно дешевле 5..10 килобаксов и за нее может взяться энтузиаст средней руки...
Последний раз редактировалось КРАМ Пн окт 25, 2021 15:36:58, всего редактировалось 1 раз.

Re: Вопрос про PICkit2 и PICkit3

Пн окт 25, 2021 15:34:35

Нет этот скрин сделан не с перепрограмированого контролера. Я не чего не перезаписывал. Только читал.

Re: Вопрос про PICkit2 и PICkit3

Пн окт 25, 2021 15:40:00

Только читал.

Флеш данных читается как залоченный, а в конфиге в бите защиты данных стоит единица. Значит он не залочен. Так не бывает.
Ну или действительно прежнее предположение о кривом dat-файле. Ибо он не родной.
Кстати, а откуда информация о том, что пробег пишется во флеш данных? Вообще то его можно писать и в программный флеш...

Re: Вопрос про PICkit2 и PICkit3

Пн окт 25, 2021 15:45:29

Если бы я перепрограмировал мкконтроллер дампом в котором в области еепром вместо данных стоят нули я бы не увидел на панели пробег. Там бе был прочерк. А у меня полностью исправная панель которую я лиш пробую считать. Для того чтобы чтото исправить в области еепром нужно что-то иметь...

Re: Вопрос про PICkit2 и PICkit3

Пн окт 25, 2021 15:52:42

Можно пойти по пути проб и ошибок. Запишите в нулевой адрес флеша данных (сразу после чтения МК) какую нибудь величину (только учтите, что там шестнадцатиричное представление чисел) и перешейте МК.

Re: Вопрос про PICkit2 и PICkit3

Пн окт 25, 2021 16:02:15

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

100% информация. У товарища с другой стороны планеты есть готовое решение на эту приборную панель но под другой программатор. И он готов помочь с пересчётом данных в области еепром.

Re: Вопрос про PICkit2 и PICkit3

Пн окт 25, 2021 16:21:48

Тогда я не понимаю что вам еще нужно? Если у товарища есть требуемое содержимое флеша, то не представляет никакого труда его записать в ваш МК. Считать там нечего в варианте с PICkit2. Ибо править можно прямо бинарное содержимое, не выводя его в хекс, где любая правка потребует пересчета контрольной суммы в строке.

Re: Вопрос про PICkit2 и PICkit3

Пн окт 25, 2021 16:35:46

У него есть данные еепром области в бинарном формате. Только они мне не помогут чем я их писать буду если я даже почитать нормально не могу. Спасибо большое за то что уделили мне время, но походу я вернулся к тому с чего и начал.

Re: Вопрос про PICkit2 и PICkit3

Пн окт 25, 2021 17:30:47

У него есть данные еепром области в бинарном формате. Только они мне не помогут чем я их писать буду если я даже почитать нормально не могу.

Я вам объяснил чем вы их будете писать. Именно бинарный формат писать с помощью PICkit2 удобно.
Читать их нет никакого смысла, если есть что писать.

Re: Вопрос про PICkit2 и PICkit3

Ср ноя 10, 2021 13:51:49

Господа, нид хелп: никак понять не могу чего ещё надо программатору PICkit3, его не видит не MPLAB X IDE не IPE, при этом программа PICkit без вопросов прошивает. В программе PICkit нажал кнопку: вернуть конфигурацию мплаб, скачал специально старую версию мплаба, она увидела и залила свою прошивку, до этого и даже после этого MPLAB X IDE и IPE его не видят. Запускал программы с подключенным программатором и дёргал шнурок в процессе в том числе с нажатой кнопкой. После всех этих манипуляций старый мплаб продолжает его видеть.
Пробовал зайти в Advansed Mode в IPE там все окошки пустые, я так понимаю программатор не виден и настраивать нечего :dont_know:
В общем мысли уже кончились, только за бубном идти осталось :facepalm:

Добавлено after 3 minutes 20 seconds:
От админа тоже запускал, win7 64 если что.
Последний раз редактировалось alex_ Ср ноя 10, 2021 15:37:17, всего редактировалось 1 раз.

Re: Вопрос про PICkit2 и PICkit3

Ср ноя 10, 2021 14:56:01

Нужно ревертнуть пиккит в MPLAB mode. В меню оболочки (программы пиккит3) имеется. Называется Revert MPLAB mode.

Re: Вопрос про PICkit2 и PICkit3

Ср ноя 10, 2021 15:36:08

Сделано, несколько пунктов назад, после чего старый мплаб его видит.

Добавлено after 8 minutes 49 seconds:
Может в программе IPE или IDE есть пункт check communication или find device?
Ответить