EEPROM
EEPROM от англ. Electrically Erasable Programmable Read-Only Memory — это электрически стираемое перепрограммируемое ПЗУ (ЭСППЗУ), один из видов энергонезависимой памяти таких, как PROM и EPROM. Память такого типа может стираться и заполняться данными до миллиона раз. Данные, записанные в эту память не исчезают при отключении питания.
Использование
Электроника большинства 3D принтеров поддерживает хранение некоторого объема настроек в своей внутренней памяти. Прошивка Marlin использует EEPROM для хранения настроек принтера и загружает при подаче питания на контроллер. Внимание! Изменение исходного кода и перепрошивка микропрограммы контроллера не изменяет содержимое EEPROM.
Включение / отключение EEPROM
В прошивке Marlin можно как включить использование EEPROM, так и отключить эту возможность. За включение использования EEPROM отвечает строка #define EEPROM_SETTINGS если эта строчка закомментирована, то использование EEPROM отключено. Для включения использования возможности EEPROM требуется расскоментировать строку #define EEPROM_SETTINGS. Данная строка находится в файле Configuration.h
На данный момент, по умолчанию, разработчики Repository версии Marlin отключили использования EEPROM. Это чтобы избежать «непредсказуемые действия / последствия» работы принтера.
Учтите, что если у вас EEPROM включена, то вы всегда можете сбросить на «Установки по умолчанию» (исходя из исходного кода), используя команды M502 с последующим M500.
EEPROM G-коды
- M500 Сохранение текущих параметров в EEPROM.
- M501 Чтение всех параметров из EEPROM.
- M502 сбросить текущие настройки по умолчанию, как указано в Configurations.h (не забудьте потом сохранить изменения командой M500)
- M503 Печать текущих настроек — Выводит на экран хранящиеся в EEPROM настройки.
Настройки в EEPROM
Когда вы делаете M503 команду она выводет отчет , как это, который будет отличаться в зависимости от конфигурации Marlin :
‘>>> M503 S0’ M92 X80.00 Y80.00 Z4000.00 E1258.14
M203 X500.00 Y500.00 Z2.25 E45.00 M201 X9000 Y9000 Z100 E300 M204 P1500.00 R1500.00 T3000.00 M205 S0.00 T0.00 B20000 X20.00 Z0.40 E5.00 M206 X0.00 Y0.00 Z0.00 M145 M0 H180 B70 F0 M145 M1 H240 B110 F0 M301 P20.83 I1.04 D104.71 C1.00
Если вы не изменили эти параметры, то они соответствуют содержимому EEPROM.
Очистка EEPROM
Ссылки
- Это авто перевод статьиhttps://github.com/MarlinFirmware/Marlin/wiki/EEPROM с частичными правками человека 🙂
AutoSoftos.com

Доллар — 76.50 
Евро — 91.70 
AutoSoftos.com » Статьи » Коррекция пробега своими силами, или как прошить память EEPROM
Коррекция пробега своими силами, или как прошить память EEPROM
![]()
В период высоких технологий все сложные электроприборы у которых есть процессоры имеют внешнюю энергонезависимую память. За частую это небольшие микросхемы память EEPROM (англ. Electrically Erasable Programmable Read-Only Memory) — электрически стираемое перепрограммируемое ПЗУ (ЭСППЗУ). EEPROM разного назначения имеет разные объемы памяти, и различные интерфейсы передачи данных. Но нас интересует память с нашим пробегом, что бы узнать что за память хранит наш пробег разбираем приборку, ищем процессор (микросхема у которой очень много ножек) рядом микруха памяти имеет 8 ног . В моем случае это 93С56 объем памяти 256 байт.
![]()
EEPROM Находится рядом с процессором
Аккуратно ее выпеваем.
Теперь нужно считать ее прошивку, для этого нужен программатор.
![]()
Программатор EEPROM из Китая
Если по чистой случайности у вас его нет, то собираем с нуля.
Для сбора простейшего программатора вам потребуется COM порт (RS-232) если на задней панели компьютера его нет то вам потребуется переходник USB-COM (RS-232)

COM порт персонального компьютера
![]()
Переходник USB-COM
Дальше нужно собрать простейшую цепь для подключения память к разъему com порта.
![]()
Схема подключения памяти к com
Проверяйте по 10 раз как вы все подключили перед подключением к ПК!
У меня получилась вот такая штука
![]()
Далее дело за программной частью
Незабываем устанавливливать драйвера на переходник USB-COM
Качаем с просторв интернет программулину PonyProg
Ну я по старинке пользовался IC-PROG (только для ОС XP)
Не забывайте о разрядности вашей ОС ищите программы для вашей ОС.
Если программы скачены и даже работают, настройте адаптер у PonyProg вкладка setup ->interface Setup
Выберите ваш COM порт назначенный системой вашему USB-com переходнику.
![]()
вкладка
interface Setup»>
Далее, выбираем в правом верхнем углу тип памяти и название,
![]()
Настройка
Ну и пытайтесь считать прошивку.
Должно считать примерно так
![]()
Считанная прошивка в IC-prog
Далее сохраняем прошивку в качестве гарантии, что бы можно было вернуть прошивку в первоначальном виде.
Теперь нам понадобиться программа калькулятор пробега, программа под названием carculator V-1.07
Скачать программу Calculator V1.07
![]()
Программа carculator v1.07
Находим в программе свое авто, (моего авто не было, по анологии понял куда вписывать новые данные).
Вбиваем в программу нужный пробег, и нажимаем Calculate он выдает преобразованный пробег в шестнадцатеричном виде, далее ставим галочку swap и опять нажимаем Calculate, мы получили набор символов который нужно вставить в определенную область памяти. Программа carculator v1.07 при выборе авто показывает в какие строки и ячейки нужно вставить новые данные с примером.
![]()
пример выделен желтым
Далее меняем в программе редактора памяти значения на новые, и программируем контроллер.
Вворачиваем его в приборку, для удобства в приборку припаял сокет 8 ног, что бы постоянно не выпаивать микруху а просто вставлять.
Метаморфозы моего пробега ))
![]()
Началось все с этого
![]()
накрутил малость)))
![]()
Всем добра, надеюсь кому ни будь пригодиться.
Внимание! Нажимая на ссылку «скачать» Вы обязуетесь, после ознакомления, удалить скаченный файл со своего компьютера. Всё содержимое сайта autosoftos.com взято из свободных источников, и также свободно распространяется. Если это Вы являетесь автором данного материала, то, пожалуйста, свяжитесь с нами, для того чтобы обеспечить пользователям, приятную и удобную альтернативу, после ознакомления, покупки качественного «оригинала» непосредственно от издателя. Администрация сайта не несёт никакой ответственности за противоправные действия, и какой либо ущерб, понесённый правообладателями.
![]()
0
![]()
0
Eeprom что это такое в автомобиле
Память любого современного блока управления двигателем включает в себя не только саму прошивку (основную программу + калибровки), но и некоторые другие области данных. Что это за данные и зачем они нужны, будем объяснять в сегодняшней статье.


Современный ЭБУ гарантированно включает в себя следующие данные:
1. Софт (основная программа)
Софтом принято называть основную управляющую микропрограмму ЭБУ. Условно говоря, это алгоритмы, по которым работает двигатель автомобиля. Согласно этим алгоритмам, ЭБУ получает необходимые показания от датчиковой аппаратуры двигателя и остальных блоков управления, обрабатывает эти значения неким образом, а на основе полученных результатов управляет исполнительными механизмами (топливная система, система зажигания, дроссель и т.п.).
2. Калибровки
Калибровки — это настройки, используемые в алгоритмах блока управления. К примеру, есть алгоритм расчёта циклового наполнения (этот алгоритм заложен, непосредственно, в сам софт). У данного алгоритма есть множество настроек. В том числе, таблица коррекции циклового наполнения по температуре, таблица коррекции по оборотам и нагрузке, различные множители, коэффициенты и т.д. Все эти настройки принято называть калибровками. А область памяти, содержащую в себе все-все калибровки системы, принято называть областью калибровок. Чип-тюнинг по своей сути представляет собой модификацию калибровок — т.е. перенастройку двигателя, с целью улучшения ездовых характеристик.
3. Загрузочная область
Аналогично любому персональному компьютеру, ЭБУ двигателя не может просто так включиться неким волшебным образом и тут же начать работать. Для водителя это, конечно же, именно так и выглядит. Но по факту, все намного сложнее. Сперва всегда запускается так называемая программа-загрузчик, которая, в свою очередь, обеспечивает загрузку или обновление основной программы ЭБУ. Такую программу-загрузчик в большинстве систем управления принято называть «бутлоадером», а область памяти, в которой она располагается называют загрузочной областью или бут-областью.
В любом ЭБУ двигателя содержатся уникальные данные. Такие как синхронизация иммобилайзера, паспортные данные автомобиля и т.д. Эти данные принято хранить в отдельном месте. В старых блоках управления для этой задачи выделялась отдельная микросхема EEPROM-памяти. Однако в современных ЭБУ, эти данные все чаще и чаще хранятся, непосредственно, в основной Flash-памяти, где также хранится софт, загрузочная область и калибровки. Поэтому со временем словосочетание «данные EEPROM» обрело сленговый характер. Подытожим: «Данные EEPROM» («Виртуальный EEPROM» или просто «EEPROM») – это область, содержащая уникальную информацию об автомобиле. В большинстве современных ЭБУ она является частью Flash-памяти.
Таким образом, в современном блоке управления двигателем гарантированно есть Flash-память, в которую гарантированно записаны: основная программа, калибровки и программа-загрузчик. А уникальные данные хранятся, либо в отдельной микросхеме EEPROM (что встречается все реже и реже), либо также внутри Flash-памяти, как отдельная область.
Прошивкой, в большинстве ситуаций, принято считать софт+калибровки. Хотя понятие «прошивка» очень расплывчатое. Ведь программу-загрузчик, условно, тоже можно считать частью прошивки. Как и полный образ памяти (FullFlash), опять же условно, тоже можно считать прошивкой. Отсюда такая запутанность, которая может сбить с толку начинающих специалистов по чип-тюнингу.
Программатор в ремонте автомобиля
Современные автомобили всё больше и больше становятся похожими на средний по размерам офис на колесах, со своими кабинетами, ответственными за определённую задачу и объединенных локальной сетью для координации работы. Задачи, возложенные производителем на электронные блоки управления, становятся сложнее. Требования к скорости и стабильности работы возрастают, что в свою очередь ведёт к усложнению схемотехники, применению более современных компонентов. Программное обеспечение претерпело большие изменения. Если раньше блок обслуживал одну систему, то теперь, в современном автомобиле, практически каждый блок объединен с остальными в одну или несколько сетей, связанных межсетевым шлюзом, и обрабатывает данные не только от своих датчиков, но и те, которые получает по сети от других блоков, с которыми он связан для более гибкого решения определённой задачи.
Усложнение элементарной базы и конструкции электронных блоков, так или иначе, сказывается на надёжности их работы. Причём заметно растёт число отказов, относящихся к «программным сбоям». Этому только способствует «наш менталитет» эксплуатации, «прикурка от пускозарядного», незатянутые клеммы АКБ, плавная посадка АКБ, попытки запустить авто с разряженной батареей и т.д.
Если на автомобилях начала 90-х, в большинстве случаев, это всё сходило владельцам с рук, то современный автомобиль может и не простить таких издевательств…
Мой наставник однажды выразился так – «Современный автомобиль сродни живому существу – сердце, запущенное однажды на заводе, при полном отключении, снова может и не заработать».
Откуда же такие проблемы?
Вот мои личные соображения и анализ информации найденной в сети.
На истину ни в коем случае не претендую..
Схемотехника блоков управления 90-х годов предусматривала хранение программы блока в ультрафиолетово-стираемых ПЗУ или масочном РОМ микроконтроллера.
То есть информацию сам контроллер изменить не может даже при всём своём желании …
Масочный процессор хранит свою программу, до полного выхода из строя по какой- либо причине…
Память ЕЕПРОМ (EEPROM) – то есть пользовательские данные, информация о проведённых адаптациях, коррекциях, кодировках, привязках к каким либо определённым входным данным (к примеру, синхронизации блоков, ID транспондеров в системах иммобилайзеров), всё то, что на каждом экземпляре авто будет индивидуально и может быть изменено в процессе эксплуатации, но должно быть энергонезависимым (не факт, что именно всё, на многих коррекции при отключении АКБ очищаются).
Память ФЛЕШ (FLASH)
Производители в последнее время отдают предпочтение именно ей, в виду возможности более гибкого её использования.
Преимущество её в том, что микроконтроллер может изменить её данные (перезаписать). То есть открывается возможность изготовления блоков, конструктивно подходящих для многих моделей авто определённой группы, но программно отличающихся. И если ранее с применением масочного микроконтроллера или ПЗУ нужно было заказывать изготовление определённой партии комплектующих под каждую модель блока, то сейчас имеется возможность «прошивать» программу в блок непосредственно с диагностического оборудования уже на выходе авто с конвейера, а так же иметь возможность сменить программу в блоке, при обнаружении каких либо недостатков, не учтённых ранее, без замены самого блока.
Но обратная сторона медали – более низкая надёжность.
Есть вероятность потери данных при проблемах в бортовой электросети автомобиля.
Сами физические процессы, при которых происходит потеря данных, мне досконально не знакомы, но на просторах сети неоднократно попадались версии – «при снижении напряжения питания микроконтроллера до предела его нормального функционирования, есть вероятность сбоев, перескакивания с инструкции на инструкцию, и как следствие записи случайных данных в ЕЕПРОМ или ФЛЕШ».
Исходные данные естественно будут утеряны, и работоспособность блока будет нарушена. Сети передачи данных в современном авто довольно надёжны, но и от нарушений в их работе никто не застрахован. Некоторые блоки в авто могут быть связанны динамически меняющимся кодом , в системах иммобилайзера как правило , и при нарушении связи между блоками, даже кратковременно , в момент обмена данными , может привести к рассогласованию блоков и , как следствие, авто перестаёт запускаться родным ключём.
В блоках начала 90-х годов выпуска используются ультрафиолетово-стираемые ПЗУ для хранения программы блока. Их срок службы заявлен Производителем около 10 лет. Многие ПЗУ выходят из строя от своей старости и блок перестаёт функционировать.
Владельцы современных автомобилей, находясь в регионах, далёких от дилерских станций и крупных СТО, располагающих необходимым оборудованием и возможностями в разумные сроки и за приемлемую стоимость заказать, заменить и закодировать блок для автомобиля, — они оказываются в затруднительном положении.
Хотя, для восстановления работоспособности порой бывает достаточно поменять значение всего лишь 1 байта информации.
Остаётся только один вариант – работа с программой или данными блока непосредственно на «физическом уровне», то есть программатором.
Это устройство позволяет изменять данные в самих носителях информации – микросхемах УФПЗУ, ЕЕПРОМ, ФЛЕШ, а так же внутренних областей памяти микроконтроллеров.
Описывать разновидности и возможности существующих программаторов в этой статье я не буду, так как их довольно много и каждый имеет свои плюсы и минусы.
Остановлюсь на кратком описании комплекса «OMEGA».
Данным комплексом можно читать и программировать параллельные (ПЗУ, ФЛЕШ), последовательные (ЕЕПРОМ), микроконтроллеры MOTOROLA и TEXAS INSTRUMENTS.
Конструкция комплекса – блочная. За основу взят базовый блок , дополняемый модулями и адаптерами под конкретную задачу. Многообразие разновидностей корпусов электронных компонентов не располагает к полной универсальности, но каждый из компонентов или их группа , работа с которыми заявлена разработчиком, оснащается своим адаптером или описанием для внутрисхемной работы.
Кстати о внутрисхемном программировании.
Комплекс позволяет работать со многими компонентами не выпаивая их из устройства.
К ним относятся ЕЕПРОМ и микроконтроллеры.
Конечно не 100% любой контроллер или ЕЕПРОМ могут быть прочитаны внутрисхемно, в некоторых случаях это может не позволить конструкция устройства , но разработчик постарался как можно более упростить данную задачу..
Это очень кстати ,если микроконтроллер имеет около 100 «ног» с мелким шагом или доступ для демонтажа затруднён. Порой разборка и сборка устройства не проходят без последствий.
Протоколы чтения /записи микросхем у разных серий и производителей различаются, встречаются узкоспециализированные микросхемы, которые кроме как в авто, не встретишь нигде. Радует наличие модулей для таких случаев, когда любой другой серийный программатор расписывается в бессилии. На некоторых микроконтроллерах встречается защита от чтения, установленная производителем, чтобы помешать прочитать содержимое внутренних областей памяти. Заявлен и реально работает обход такой защиты, если возникает необходимость работы с таким микроконтроллером.
Из дополнительных модулей не могу не отметить логический анализатор/генератор и частотомер.

Окно программатора с дампом памяти микросхемы ЕЕПРОМ 93С66.

Окно программатора с дампом памяти ROM микроконтроллера MOTOROLA
В умелых руках, логический анализатор один из мощнейших инструментов для изучения работы электронных устройств. Со встроенными декодерами протоколов этот инструмент становиться гораздо приветливее и пользователь избавляется от необходимости «ковыряния» в нулях и еденицах записанного лога. Информация выдаётся в удобно воспринимаемом виде.


Логический анализатор с открытым окном декодера и различными представлениями одних и тех же данных.
В данном примере, в анализе записанного лога обмена микроконтроллера и ЕЕПРОМ мы видим, к каким ячейкам памяти обращался микроконтроллер, и какие изменения он внёс в содержимое. Появляется реальная возможность посмотреть на работающем устройстве, какие из ячеек читаются (или пишутся) в процессе выполнения каких-либо действий.
Работа с данным прибором подразумевает уровень знаний современной микропроцессорной техники и опыта работы с ней. Всего знать и понимать невозможно, поэтому форуму поддержки уделено особое внимание.
Сайт разработчика и форум http://www.cnc-lab.com/
Автор статьи:
Бочковский Алексей Иванович
СОЮЗ АВТОМОБИЛЬНЫХ ДИАГНОСТОВ