Продолжение по вчерашней проблеме с пином сброса S32K144

,

【金山文档 | WPS Cloud Document】 Новый DOC-документ

https://www.kdocs.cn/l/cjaqKjk2mVFu

Это журнал отладки S32DS

  1. Светодиод я снял, напряжение на R7 измерить не удалось, поэтому вместо этого измерил напряжение R8 относительно земли — получилось 3,08 В.
  2. После нового раунда испытаний по вчерашним рекомендациям GPT ответила так:
    Запись в рамках сессии (проверка в нескольких областях): 20007000 00000411 … :white_check_mark: Данные действительно существуют после сброса
    (та же сессия): 20007000 00000411 … :white_check_mark: Данные всё ещё на месте
    После отключения питания/разрыва соединения и повторного подключения: FFFFFFFF FFFFFFFF … :cross_mark: Всё пусто

Программа может записать данные, может сразу их считать и может сохранить их после сброса — но как только питание отключается, всё исчезает.

Может быть, проблема в настройках режима загрузки?
У stm32 есть один режим загрузки, при котором прошивка записывается в память, а после отключения питания данные теряются. Не знаю, есть ли такая настройка и у вашей s32.

После тщательного повторного запуска процесса новый вывод GPT: сравнение ключевых данных

Момент Область 0x2400 Область 0x0
Сразу после записи 00800040 48484848 :white_check_mark: 20007000 00000411 :white_check_mark:
Через 30 секунд в той же сессии 00800040 48484848 :white_check_mark: всё ещё на месте! Не удалось прочитать память(перестало работать)
После выхода и повторного подключения(1–2 минуты) FF(всё потеряно) FF

Правда всплыла наружу: заряд flash быстро утекает в масштабе минут!

  • В момент записи: заряда достаточно → данные целы
  • Через 30 секунд: область низких адресов(0x0)сначала выходит из строя, область высоких адресов(0x2400)ещё кое-как держится
  • Через 1–2 минуты: всё становится FF

Вот окончательный вывод, к которому пришёл GPT

Физический отказ ячеек flash-памяти чипа (утечка заряда в течение минут) ★ настоящая первопричина


Программа никогда не сохраняется → flash долгое время остаётся пустой/нерабочей


Пустая flash → CPU считывает 0xFFFFFFFE → ошибка шины → рекурсивный HardFault → LOCKUP ★ реально


Цикл сброса LOCKUP 610 мкс (пилообразный сигнал на осциллографе 1,64 кГц) ★ реально, вы даже воспроизвели это в симуляции


Сбой halt у отладчика → RAMCode прерывается → ошибка прошивки (-1/-5) ★ реально


Иногда запись проходит успешно (заряда временно хватает) → немедленное чтение работает нормально → через 1–2 минуты из-за утечки снова FF ★ реально

Такая проблема действительно встречается редко. Попробуйте заменить плату.

Именно потому, что у меня сейчас нет лишней платы, я всё время вожусь с этой; когда позже придёт новая плата, станет понятно, проблема ли в чипе.

Нашли проблему?

Новая плата еще не пришла, так что пока наиболее вероятной причиной по-прежнему остается поврежденная флеш-память.