[cvetblue]Новость от 08/05/2015 Прошивка V3Великого Девайса (для Меги 8, 88, 168, 328). Поддержка Микрочипа, i2c-scan, уточнение для IR-box, скорость soft для ATMEL понижена в 6 раз для прошивки целевого Атмела с кварцем 32768. Скачать PostalAVR_v3b_lice[/cvetblue] [cvetblue] Прошивка V4 микроконтроллера ATmega168 программатора Postal3 - https://remont-aud.net/_fr/362/PostalAVR168.rar[/cvetblue]
3 режима всего на cmd60. На cmd62 навалено прилично, что-то в районе 15-и штук, jump есть, работает как запись dword с нулём вместо данных. Команда показа смарта видно, что подготовлена, но вырезана. Bootrom всего 64к, поэтому смог уговорить себя покопаться.
Добавлено (05.03.2026, 07:29:40) --------------------------------------------- Я никак не могу понять, зачем к eMMC Samsung припаивать testpoint. По моим данным, после подачи питания на eMMC сначала стартует bootrom, инициализирует командный asic и входит в цикл ожидания первой команды. В материалах 10-летней давности описан таймер, у KLM8G1GETF-B041 его нет. То есть, ожидается в цикле первая команда. Это может быть magic number для bootrom, а также ещё 3 возможные сервисные команды, по крайней мере одной из них можно перенастроить константы для работы с flash array (чтобы записать прошивку). Я пока дошёл от старта и до этого места, соответственно, никаких влияний "тестпоинтов" я не нашёл. Для работы с flash array загружаются предустановленные константы, которые можно потом изменить с помощью "магических" команд. KLM8G1GETF-B041 это распространённая микросхема, вы можете легко проверить. После подачи питания она висит в цикле, вы можете замерить ток потребления. Любая начальная команда меняет цикл, потребление резко меняется, это видно даже по яркости светодиода по питанию. Однако, если потребляемый ток на старте (без подачи команд), одинаковый с подключенным testpoint и без, а я предполагаю, что это так, - то человек, придумавший паять testpoint, является клиническим дурачком.
Изначально, ТП, использовался для восстановления совсем мёртвых еммс. После замыкания, еммс входила в "аварийный режим" и можно было, перезаписав firmware контроллера, восстановить её. Так же, через ТП, можно восстановить микросхему, в контроллер которой, по ошибке, записано не правильное ПО. Вот как в этом случае, например
Цитата
Одну микросхему eMMC кажется запорол. Случайно записал ей pdf-файл вместо прошивки. Причём файл был большой, 6 мегабайт, съела и не поморщилась. Запись прошла без ошибок.
Смотри выше, если микросхема находится в одном и том же цикле с ТП и без, то у вас уже полный контроль загрузки независимо. ТП просто свалит микросхему в bootrom при подаче стандартной команды, т.к. мешает работе с флэш-массивом, так кто заставляет подавать стандартную команду. В старых микросхемах прошивка помещалась в RAM, у KLM8G1GETF-B041 в прошивке используются оверлеи, правильно загрузить вместе с нужным оверлеем трудно, а флэш-массив пишется неправильно. Возможно, я что-то лишнее потёр.
В основном Quartus обругивает FX2_CLK, наверно будет переназначена. Проект в целом виде хорош тем, что всё уже настроено на максимальную производительность, почти с любой конфигурацией ножек Quartus соберёт рабочую прошивку.
После подачи питания KLM8G1GETF-B041 ждёт (в цикле) следующих команд: CMD1 WITH ARGUMENT: 0x69FF87A9 BOOTROM ENTER MAGIC NUMBER 0x4254504D BTPM BOOT POWER MANAGEMENT 0x42544343 BTCC BOOT COMMAND CLASS 0x42545342 BTSB BOOT SET BREAKPOINT
на плате EPM240 стоит активный кварцевый резонатор. К какой ноге он подключён?
Это внешний кварцевый генератор. Его выход подключён к 12 пину EPM240, это для синей платы. У красной к 64 пину, но она в качестве примера не рассматривается.
И90, Спасибо. Postal2, выше в посте сразу указал про 12pin. Что генератор, я тоже в курсе. Просто его часто указывают, как активный кварцевый резонатор. Сам Postal2, здесь часто называет его просто кварц. У меня нет ни красной не синей, но эта информация наверное будет кому-то полезной.
EPM240 и подобные могут использовать только внешний генератор. На подачу тактовой частоты у EPM240 есть 4 выделенные ножки, другие использовать нельзя. В придачу к этому, заводимую частоту ещё обязательно нужно поделить, если используются оба фронта, а в моём проекте именно так. Глупый разработчик, конечно, может сделать через задницу и сказать, что у него всё работает. Для экспериментов FX2LP на выход IFCLK подаёт тактировние 48 MHz. Казалось бы, зачем генератор, когда есть готовая частота. Проблема в том, что если пытаться эту частоту задействовать, то при разработке дизайна "шляпы" 90% усилий уйдут на доставку этой частоты к EPM240. И всё это геройство несопоставимо со стоимостью дешёвого маленького кварцевого генератора.
Подтяжка встроенная, я просто задействовал эту функцию на случай, когда нужно отключиться, не отпаивая проводков. Предположительно должны быть штырьки под джампер, на них можно и кнопку подключить, если понадобится.
Должно, но я не испытывал ещё пока. У меня прошивка восстановилась из boot с включенной галкой low speed for all при выбранном аргументе 3360. Смена CID работает в режиме Samsung, причём до прошивки вроде не работала (именно с этой мсх, с другой работала). Чтобы стереть данные, нужно выбрать 1160 и use erase. 3360 работает без erase, по идее должна перезаписывать firmware без потери данных. Кнопка boot сработает, если она будет первой после подачи питания на eMMC. Галка emmc alt.init рассчитана под команду boot и не имеет начальной cmd0, можно при ошибке подать кнопкой. Также проверяется зависание кнопкой check busy (после записи прошивки будет busy, нужно прервать питание). Также после read fw обязательно прервать питание, предпочтительно включить перед чтением no restart at this group, эта галка работает не со всеми командами, а с теми, где желательна вариативность. В случае read fw она отключает выходную последовательность, чтобы не запускать холостую запись fw. Это всё проверено на KLM8G1GETF-B041 в режиме EPM240. Для ручной смены CID можно изменить его в стандартном месте и включить misc use. Также кнопка записи CID для Samsung, нажатая без параметров, открывает возможность последующей записи стандартным способом. Расположение и название кнопок при доделке будет в основном сохранено. Если до нажатия health info выбрать debug show, то вывод информации будет резать глаза, требовать прокрутки, становясь чуть-чуть похожим на вывод информации привычными вам программами, если кому-то так нравится. Запись байта в ext_csd кнопкой cmd6 работает, если послать в ext_csd что-то не то, то придётся перепрошить fw для сброса. --------------------------------------------- Меня больше всего удивляет идиотизм с testpoint для Samsung, с помощью которого изготовители софта мучили бедных мобильщиков, заставляя выпаивать eMMC. Я даже видел пост, где специалист по телефонам хвастался, что смог подлезть к testpoint как-то сбоку, не выпаивая. Ужасно.
Я ещё могу как-то обосновать подключение ворохом шлейфов вместо I2C в ноутбуках коммерческой хитростью, но по testpoint для Samsung я не понимаю, в чём смысл.
Добавлено (14.03.2026, 20:02:50) --------------------------------------------- Если кто-то захочет записать pdf-файл вместо прошивки, то последовательность действий примерно следующая: поставив галку no restart нажать read fw, после исполнения на предыдущем окне нажать health info, затем выйти на основной экран, попытаться записать файл - будет ошибка, снять галку multisector, повторить попытку записи - файл полностью зальётся. То есть, если вы прочитали прошивку, а портить её не собираетесь, то нужно сразу переподключить питание eMMC.
Добавлено (15.03.2026, 07:22:39) --------------------------------------------- Если вы меняете CID, то с eMMC KLM8G1WEPD-B031 иногда сразу после записи выглядит, как будто CID записался частично, причём повторные попытки дадут такой же результат. Оказывается, нужно переподключить питание, чтобы увидеть, что всё давно записалось. С одной стороны, некоторые программаторы переключают питание втихаря и гордятся этим, однако такой подход неприменим при работе внутрисхемно - всё равно придётся вручную коммутировать.
Да. На "шляпе" должно быть 2 стабилизатора. EPM240 не требует согласования уровней. Питать от того же стабилизатора, что и FX2LP, нельзя, поэтому 2. Один провод 5 вольт под пайку, или какое-то дополнительное соединение.