Перейти к содержанию
View in the app

A better way to browse. Learn more.

AUTO-BK.RU FORUM

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Featured Replies

Опубликовано

у меня тоже есть блок с процом ST10F273 только он называется Микас 10.3 и после неправильной прошивки он заблокировался

Он скорее всего не заблокировался,а остался в режиме перепрограммирования.А из этого состояния он легко переводиться в режим диагностики.И блок оживает.

  • 1 месяц спустя...
Опубликовано

А нет ни у кого схемы блоков на st10f273 ? (чтоб было видно куда какая нога идет на колодку к примеру)

Сижу тут ковыряю прошивальщик ST10FLASHER. Узнал как прошивка происходит (там заливается мини бут, который и выполняет запросы от ST10Flasher) - теперь хочу распотрошить прошивку дизасемблером и найти места где к примеру происходит включение муфты кондиционера (если б была схема можно было быстро найти место в прошивке где дергается нога проца). 

Опубликовано

ага спасиб.. Вроде нашел..надо проверить -  затереть место где кондей включается и пойти в машину и включить кондей :-D

Опубликовано

Вообще кому интересно, а то чет монополию SMS развели)) И инфы чет мало..

Для процов ST10FXXX можно писать проги в Keil C166.

Дизасемблировать прошивки можно  в IDA PRO (открыть прошивку и выбрать проц ST10 далее выбрать ST10F276). Кто разбирается в ассемблере - можно к примеру добавить функционала в прошивку или изменить алгоритм работы каких нить функций..

По поводу прошивки - взять к примеру проц ST10F273 - в даташите у него написано вот что - 

Режим работы проца после ресета регулируется ногами 104-105, т.е. напряжением на них. К примеру при 0 на ноге 104 и 1 на ноге 105 проц после ресета перейдет в режим BSL - встроенный загрузчик.

Как только проц перешел в режим BSL он начинает слушать линию RxD0 и ждать приема байта 0x00. Как только проц данный байт получил - он отправляет по линии TxD0 идентификационный байт, для данного проца это байт - 0xD5.

После отправки этого байта проц опять начинает слушать линию RxD0 и ждать приема 32 байт - тут можно послать все что угодно, но если собираетесь прошить флеш память - нужно чтобы эти 32 байт включали команды для дальнейшей загрузки полного бута, который уже может принимать команды по линии RxD0 и производить запись/читать/стирать флешь.

Так вот - мини бут на 32 байта выглядит так -

 

E6 F0 00 F6 9A B7 FE 70  A4 00 B2 FE 7E B7 86 F0
FF F9 3D F8 EA 00 00 F6  CC 00 CC 00 CC 00 CC 00

:) или код в ассемблере - 

ROM:00000000                 mov     r0, #0F600h /адрес куда загрузить основной бут
ROM:00000004
ROM:00000004 loc_4:                                  ; CODE XREF: ROM:loc_4j
ROM:00000004                                         ; ROM:00000012j
ROM:00000004                 jnb     S0RIR, loc_4 /прием обнаружен
ROM:00000008                 movb    [r0], S0RBUF /сохранить байт из линии RxD0
ROM:0000000C                 bclr    S0RIR /стереть бит приема 
ROM:0000000E                 cmpi1   r0, #0F9FFh /проверить если загрузили уже 1024 байт
ROM:00000012                 jmpr    cc_NZ, loc_4 /если еще не загрузили слушать опять
ROM:00000014                 jmpa    cc_UC, loc_F600  переход по адресу 0xf600 и начало выполнения загруженной проги..
ROM:00000018 ; ---------------------------------------------------------------------------
ROM:00000018                 nop
ROM:0000001A                 nop
ROM:0000001C                 nop
ROM:0000001E                 nop

Как видите все просто - бут на 32 байта производит загрузку полной проги размером 1024 байт по нужному адресу и начинает ее выполнять... 

 

Вот так - при нажатии на кнопку "установить связь" в прошивальщиках - происходит загрузка мини бута и основного бута в проц - причем не обязательно они одинаковые - тут можно и самому в Keil написать что захочется :)

И затем проц просто ждет от прошивальщика команды (слушая линию RxD0).

Вот так вот...

 

 

 

 

  • 2 месяца спустя...
Опубликовано

Значит создаем бинарник с содержимым:

"E6 F0 00 F6 9A B7 FE 70  A4 00 B2 FE 7E B7 86 F0
FF F9
3D F8 EA 00 00 F6  CC 00 CC 00 CC 00 CC 00"

 

И через стфлешер вгоняем его в проц в бсл режиме. И сразу же вгоняем сток прошивку? 

 

 

Или лучше сделать это через usb-com и терминал?

Изменено пользователем konstantin82

Опубликовано

Вам бы сперва правила форума соблюдать....

А потом...

sekil ! Это выложил для открытого бутлодыря ? А если загрузчик закрыт ?

Ну и если человек с 28 июня не был на форуме , то вряд ли будет иметь эта тема продолжение в этом направлении.

Изменено пользователем Klassikovod

Опубликовано

А тут жалеть то нечего.

Просто я не программист , но если логически разобраться.

Команды будут отличаться от версии загрузчика и что то на закрытом эбу не будет проходить. Не могу утверждать , что выше написанное не так все или сказать что это поможет. Тут даже не указано что и как. Почему на данный момент есть только два варианта сделать эбу открытым , разве нет умных людей если так все просто ?

Другие флешеры шьют , но оставляют бутлоадер в том же состоянии.

Опубликовано

у меня микас с чистым процом (наверное) а их походу нет с закрытым загрузчиком.

  • 9 месяцев спустя...
Опубликовано

Значит создаем бинарник с содержимым:

"E6 F0 00 F6 9A B7 FE 70  A4 00 B2 FE 7E B7 86 F0

FF F9 3D F8 EA 00 00 F6  CC 00 CC 00 CC 00 CC 00"

 

И через стфлешер вгоняем его в проц в бсл режиме. И сразу же вгоняем сток прошивку? 

 

 

Или лучше сделать это через usb-com и терминал?

Нет.

Этот мини загрузчик нужен лишь для того чтобы загрузить в память проца загрузчик побольше - который уже умеет прошивать встроенную память и т.д.

По поводу закрытый открытый я хз.. у меня только 7.2+ есть.. на других не тестил.

  • 3 месяца спустя...
Опубликовано

Нет.

Этот мини загрузчик нужен лишь для того чтобы загрузить в память проца загрузчик побольше - который уже умеет прошивать встроенную память и т.д.

По поводу закрытый открытый я хз.. у меня только 7.2+ есть.. на других не тестил.

 

а вот если после замена проца на новый .....как запустить этот мини загрузчик ?

  • 5 месяцев спустя...
Опубликовано

Он скорее всего не заблокировался,а остался в режиме перепрограммирования.А из этого состояния он легко переводиться в режим диагностики.И блок оживает.

Привет. Расскажи, как его легко вывести из режима программирования. Столкнулся с такой же проблемой. Прошил я7.2+ правильной прошивкой, и все, насос и стартер не срабатывают, на авто блок на Диагностику не выходит. Возвращал м сток и чистый еепром лил- результата ноль. Ещё после этого теперь нельзя считать еепром- выдает ошибку, в тоже время считать и стереть еепром можно. Уже весь мозг сломал в чем же причина

Для публикации сообщений создайте учётную запись или авторизуйтесь

Последние посетители 0

  • Ни одного зарегистрированного пользователя не просматривает данную страницу
Яндекс цитирования

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.