Помощник
Здравствуйте, гость ( Вход | Регистрация )
| Дата поста: | В теме: | За сообщение: | Спасибо сказали: | ||
|---|---|---|---|---|---|
| 12.4.2017, 17:59 |
9S12 Write/Read OBD Чтение и запись процессора не вытаскивая его из машины |
Всем привет! :) Решил всё таки я проблему с D-Flash, писать напрямую в D-Flash нельзя. Нужно как я сказал делать это с помощью RAM. Код показывать не хочу, но расскажу последовательность, также всё очень хорошо расписано в даташите. Итак как я сказал ранее писать напрямую в D-Flash нельзя. То есть вот этот код не верный: CODE LDD #$1234; load value LDX #$0800; load addr STD 0,X; err Правильная последовательность записи в D-Flash: 1. Проверяем занята ли флеша. 2. Настраиваем тактирование флеши. (Это достаточно важное действие, без него не будут работать команды работы с флешой) Но для того чтобы его настроить нужно знать тактовую частоту моторолы, и относительно этой частоты выставлять тактирование флеши. Для этого просто достаточно посмотреть на кварц, но бывают такие кварцы где не написано ничего. (Такой как у меня). То это можно сделать двумя способами. 1) Методом подбора, что достаточно долго. 2) С помощью осциллографа, просто прикоснувшись к выходу кварцевого резонатора. 3. Чистим ошибки флеши. 4. Дальше нужно снять protection с флеши. 5. Стираем сектор D-Flash. (Без этого пункта мы не запишем никакие данные) 6. Снова удаляем все ошибки. 7. Пишем данные в D-Flash. (Про этот пункт можно узнать более точно в даташите найдя "Program D-Flash") 8. Снова удаляем все ошибки. 9. Радуемся данные находятся там где нам надо. Также нужно понимать что когда мы пишем и стираем данные используется глобальный адрес, а не локальный. Данные можно писать по 2,4,6,8 байта. После чего я получил готовый загрузчик для чтения и записи RAM, D-FLASH, EEPROM, P-FLASH с помощью OBD2. У меня получилась вот такая скорость: 1. Чтение 1 кб/сек. 2. Запись 90 байт/сек. 1. Чтение D-FLASH за 30сек, 32кб памяти. 2. Запись D-FLASH за 6мин, 32кб памяти. (Написал поправки и время записи уменьшилось к 2 мин) 3. Чтение P-FLASH не меньше чем за 10мин-15мин, 1мб 4. Запись и говорить не хочу) очень долго) При этом не нужно разбирать автомобиль. :) Получил то что и хотел:) Буду переходить на микрокотроллеры NEC. |
Saveliy, Easy, Vkvetin | ||
| 8.4.2017, 12:49 |
Дизассемблировать прошивку 68HC11? |
Чем и как дизассемблировать прошивку для 68HC11? С помощью Cats или IDA удаётся дизассемблировать только основную программу, а участка программы, которым должна заполняться таблица векторов прерываний, - не видно... То есть, по FFF0...FFFF нет ни единой команды перехода... Чего мы не понимаем или что может быть не так? Потому что вы вычитали только область памяти P-FLASH. А вся память имеет вот такую структуру. CODE { REGISTERS } { EEPROM } { RAM } { P-FLASH вы вычитали только вот это } { VECTORS } Для вычитывания всей области нужно писать собственный код и внедрять его в процессор. (так сказать некий вирус) который выдаст вам всё полностью от А до Я. |
vovas2811 | ||
![]() |
|
27.10.2025, 18:12 Посл. ответ от apr |
|
![]() |
|
3.1.2024, 5:58 Посл. ответ от Александр |
|
![]() |
|
25.7.2022, 7:21 Посл. ответ от Fedorov |
|
![]() |
|
16.3.2022, 12:28 Посл. ответ от Saveliy |
|
![]() |
|
10.5.2019, 16:43 Посл. ответ от Saveliy |
![]() |
|
Вчера, 22:48 Посл. ответ от Vlad |
|
![]() |
|
Вчера, 20:27 Посл. ответ от Vlad |
|
![]() |
|
Вчера, 15:50 Посл. ответ от den5 |
|
![]() |
|
Вчера, 13:06 Посл. ответ от Reanimotor |
|
![]() |
|
14.11.2025, 18:40 Посл. ответ от den5 |
| Сейчас: 16.11.2025, 9:04 |