Кто-нибудь имеет опыт чтения/записи процов Infineon серии XE164 через FLASHit? Нужно положить 64kb данных в конец массива памяти.
Баловался с XC. На них можно шить FLASH секторами. У XE сильные отличия? Подопытного нет, попробовать не на чем.
Если ты хочешь дополнить/изменить массив в выбранном секторе, то так в лоб не получится. Только чтение сектора, модификация и потом запись.
Пытаюсь область EEPROM в Zapi впихнуть. В проце 576k памяти. Zapi Can Flasher и Zapi Win Flasher больше 512k адресовать не могут. Возможно в новых флэшерах исправили, но с имеющимися версиями тупик. Как прочитать EEPROM нашёл несколько способов. Как влить в новый проц пока не ясно. JTAG занят на нём, через отладчик тоже не выйдет. В дефолтном состоянии область с калибровками датчиков тока пуста, соответсвенно ошибка CURRENT GAIN. Вспомнил про FLASHit, но с ним не работал, всегда хватало других инструментов.
Думал уже написать свою прогу для чтения/записи ERPROM по CAN-шине, но там тоже грабли. Не знаю как включать режим, позволяющий перезаписать полностью весь массив.
Какие адреса надо писать? Там в настройках стартовый адрес можно менять. Но опять же, сектор целиком. Можно попробовать запретить тереть память, но блин опасно.
Проц 72й? Прога показывает что у него память на 144 сектора разбита по 4 к
Взял первый попавшийся бинарник 32к для пробы, в проге выбрал соответственно bin. Указал стартовый адрес нужного мне сектора. На всякий в ручную его стер. Запись в нужный сектор прошла успешно ничего попутно не повредив. Файл был с какой-то EEPROM, так что в нем смещение адресов указано не было. В общем прога запишет файл целиком с указанным смещением, так что нужно следить за размером файла что-бы не вылезти за границы и не затереть следующий сектор.
В моей версии вылезли нюансы. Если BIN то обязательно тереть нужные сектора в ручную, сама не трет хоть в настройках и указано. С HEX не разобрался как задавать смещение, скорее всего должно быть указано в самом файле.
Пробовал загружать прошивку и в один большой сектор, и в несколько мелких. Все работает, но это на XC.
Проц SAK-XE164FM-72F80L. Надо попробовать с адреса 0x80000 по 0x8FFFF положить дамп EEPROM. Формат файла любой подготовлю, bin или HEX с любой адресацией. На счёт ручного стирания секторов как-то не подумал, что может быть косяк. Была у меня проблема на XC167 с внешней памятью, читать получалось, а записать не получалось, в ошибки стабильно выпадала прога после каких-то адресов, но далеко за ограничениями демо-версии, пробовал 4 разных релиза. Осталось разобраться как правильно подключиться к процу. Второй надо наверно повесить в вечный reset.
Я тоже долго тупил почему у меня первый раз получилось прошить, а потом несколько раз валил FLASH так, что FLASHit переставал ее видеть. Получалось поднять только стиранием через ZpWinFlasher. Так что аккуратнее.
Проц затереть и зашить софтом от Zapi не проблема, но только 512kb. Так что не страшно завалить при экспериментах. Оригинальный проц снят, лежит рядом. FLASHit через «гребёнку» зацепить реально, или припаиваться на UART?
Я подключаюсь к гребенке шнурком для диагностики. Все как со стандартным флешером. Для XC скорость 9600, в твоем случае не могу сказать. Шнурок тоже себе с изолятором интерфейса и на компараторе собрал, по стандартной схеме на этой скорости уже не работал.
Кстати по шнурку. Может кому надо, есть 5-6 штук пустых плат. Без дела лежат, отдам даром))
На собранную не смотрите, она с косяком, заказывал новые.
Всем привет! Поделитесь, пожалуйста, опытом: Zapi Can Flasher коннектится в обычном режиме работы блока или он через Bootstrap работает и надо включать проц в режиме отладки, подтягивать Reset? Консоль через CAN шину соединяется нормально, а Флэшер не хочет. Файл .cfi подправил под свой проц, объём памяти, адрес узла CAN, выставил, но эффект =0. Чего надо этой бяке? Блок Zapi ACE2 2011г. Контроллер xc164cm (128kB). CanFlasher v 0.38
Привет. CAN Flasher в обычном режиме соединяется, также как CAN-консоль. Номер узла на шине может не совпадать с тем, который видит консоль. Всё зависит от прошивки. На ACE2 масса вариантов.
У меня есть устройство ACE2 2uC; с помощью программы WinFlasher я могу менять версии прошивки как для ведущего (master), так и для ведомого (slave) блока.
Однако мне необходим доступ к параметрам уровней «специальной настройки» (special adjustment) и «аппаратной конфигурации» (hardware setting). Используя ПО WinConsole и изменив модель EEPROM в настройках трубки, я могу видеть эти параметры, но не могу их изменить.
Знает ли кто-нибудь способ изменить эти параметры?
Или же мне нужна версия прошивки, поддерживающая такой уровень доступа?
Я подумывал о считывании данных EEPROM с помощью программатора Xprog, но мне не хватает для этого необходимых навыков.
Прошу прощения за стиль изложения: я из Бразилии, поэтому, к сожалению, сталкиваюсь с языковым барьером. Это мое первое сообщение на форуме. Я впечатлен уровнем знаний участников. Если я смогу чем-то помочь — обращайтесь!
Zapi ACE2 2uC второго поколения построены на двух микроконтроллерах SAK-XE162FN-40F80L в корпусе TQFP-64 с памятью объемом 320kB (ближе к центру платы = Master, ближе к краю платы = Slave). Первые 256kB занимает прошивка и Bootloader. Последние 64kB это область EEPROM.
Если стоит задача копирования параметров, ты можешь в WinFlasher изменить адресацию памяти, прочитать и записать дамп памяти.
Если стоит задача именно изменения параметров - это сложнее. Готового инструмента для изменения заводских hardware setting я не встречал. Мне приходилось вычислять положение некоторых параметров и калибровок в памяти EEPROM сравнивая дампы. Для описания структуры данных удобно использовать Kaitai Struct, но это требует инженерного подхода и много времени. Некоторые блоки параметров защищены контрольными суммами.
Спасибо, друг, за ответ; он очень помог.
Что касается этой ситуации, я хочу поделиться тем, что уже произошло.
Оборудование — это выдвижной аппарат ИВЛ Hyster (D435). Используя EEPROM марки Crown в своем пульте управления, я могу считывать следующие параметры в двух меню: «настройки оборудования» и «специальная настройка».
Мне нужно получить доступ к этим меню, чтобы изменить параметр:
1 — насос
0 — тяга.
Несколько раз, используя последовательный ввод с этим пультом (Crown), мне удавалось внести изменения. Однако это происходило лишь несколько раз, и, честно говоря, я не понимаю истинной причины.
Я заметил, что это происходило, когда был включен параметр «RS 232».
Я уже пробовал использовать связь по CANbus, либо через PEAK, либо через IFAK. Однако в конкретном программном обеспечении ZAPI или NACANCONSOLE эти два меню не отображаются.
Я попытаюсь считать данные из EEPROM, но мой вопрос заключается в том, работают ли оба микроконтроллера совместно в этом отношении, или только «ведущий» микроконтроллер содержит данные параметризации модуля.
Самый простой способ получить нужную конфигурацию (Traction / Pump) это скопировать полные дампы памяти с обоих микроконтроллеров (Master / Slave) из исправного Zapi через WinFlaser или другим способом. EEPROM используется в обоих микроконтроллерах, нужно делать копию во Flash режиме не запуская их в работу.
Мне приходилось вручную исправлять 64 записи в дампе EEPROM чтобы восстановить конфигурацию Pump вместо Traction, это сложно. Лучший вариант - сделать копию из исправного Zapi нужной конфигурации. Сами прошивки на Hyster D435 одинаковы для Traction и Pump.
Итак, если я считаю весь дамп памяти с помощью WinFlash, будут ли последние 64 КБ соответствовать EEPROM?
Можно ли с помощью компилятора «увидеть» эти параметры и при необходимости внести в них изменения?