Перейти к содержанию
    

stm32g030 что-то с boot

Добрый день. Не знаю может кто поможет..
У меня 2 устройства на stm32g030. Процессора с одной партии взяты.

По одному вообще нет никаких вопросов. И не было изначально. Второе по схемотехнике (питание, сброс, SW) не отличается и начальная инициализация тоже не отличается.
Прошивка заливается и всё. Отлаживать невозможно. Пишет ошибка коммуникации с процессором... и вываливается. Короче к процессору подключиться отладчиком невозможно.

Ещё, что мне вообще непонятно - всегда стартует прошивка. Даже если BOOT0 сидит в единице.
ЗЫ: ST-LINK V3.

Изменено пользователем haker_fox
Для STM32 есть свой подраздел на форуме.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 minutes ago, SapegoAL said:

Процессора с одной партии взяты.

Надо еще платы взять из одной партии. Я серьезно - поменяйте процы местами.

Если проблема с этим процоем уйдет, и появится на первом "нормальном", то дело в платах.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Платы разные. Это разные изделия. Мне не совсем понятно, почему она стартует с флэши при BOOT0 == 1? И почему отладчик отваливается. Там же, по сути, 3 ноги. SWDIO, SWCLK и RST. Ну и питание... По ним проблем не вижу никаких...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

13 minutes ago, SapegoAL said:

Платы разные. Это разные изделия.

Это не имеет значения, вам же нужно проверить конкретный камень

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 4/27/2023 at 3:08 PM, mov said:

ST-LINK 2 не пробовали подключить?

Буду пробовать. Кое какая информация есть в RM глава "2.5 Boot configuration". Там есть биты, которые программируются с завода. В этом случае, нога boot0 не имеет значения. Но как-бы всё это не объясняет. Я сделал 11 устройств "ус" и 2 "ур", условно. Все 11 "ус" отлично зашились по swd. Прекрасно отлаживаются и перешиваются. На ногу бут я внимания не обратил (на объекте). А обе "ур" ведут себя одинаково. Записались и с концами. Буду рыть дальше.
Просто непонятно, как процы вывести из этого состояния. И можно ли это сделать вообще? В момент коннекта вижу сигналы и на swdio и на swclk. На rst не вижу.
Буду рыть бальше.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ревизия "Z". В ерате есть такое "An option byte mismatch (for example, due to its failing modification attempt) detection leads to setting the BOOT_LOCK register bit high and the RDP to Level 1 or higher. This disables the debug interface, which then makes the device reprogramming impossible"
Я точно не лезу в option byte. Если только отладчик. Короче пока ничего не понятно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

52 минуты назад, SapegoAL сказал:

Я сделал 11 устройств "ус" и 2 "ур", условно. Все 11 "ус" отлично зашились по swd. Прекрасно отлаживаются и перешиваются. На ногу бут я внимания не обратил (на объекте). А обе "ур" ведут себя одинаково. Записались и с концами. Буду рыть дальше.
Просто непонятно, как процы вывести из этого состояния. И можно ли это сделать вообще? В момент коннекта вижу сигналы и на swdio и на swclk. На rst не вижу.
Буду рыть бальше.

прошейте "ур" прошивкой от "ус" (если это не приведет к катастрофе). если отладчик продолжит работу - дело в прошивке "ур". в самом начале изучения STM наступил на грабли, когда при инициализации отключал SWD. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Можно прошить пустой проект из куба сгенеренный, настроить только RCC если внешний кварц и отладчик.

Если стартует и отлаживается - копать программу

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

у меня тоже был печальный опыт отключения SWD (типа - временно, на этапе запуска). Поэтому зарекся вообще эти ножки трогать, даже в самых малоногих корпусах.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

19 часов назад, SapegoAL сказал:

почему она стартует с флэши при BOOT0 == 1?

image.thumb.png.6fef9df3b5af121714697c4bd7f71629.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 4/28/2023 at 9:18 AM, VladislavS said:

 

Да. Это я уже увидел, естественно. Шаблон 11. Не совсем мне понятно, как это поменять, ну да ладно.
На стр. 64 RM0454 Rev 5 видно что все эти биты в 1 с завода. Поэтому pin BOOT0 игнорируется.
serglg я не трогаю swd. И у меня нет ошибки.
 

Итак. Может быть кому пригодится:
1. Научился выводить чип из состояния потери связи.
    Запускаю STM32 ST-LINK Utility. Выставляю частоту SWD порядка 200 и пытаюсь подключиться к кристаллу периодически его сбрасывая аппаратно. На 5-10 раз получается сконектится.
   После этого стираю флэш. После этого связь восстанавливается. (Понятно почему - устанавливается признак чистой памяти)

2. Обнаружил, соответственно место, где гарантированно теряется коннект.
    Достаточно в любой порт (А или Б) настроить 8 ног на вывод (точное количество не подбирал). По умолчанию там ODR = 0. Соответственно на эти ноги будет выведен 0. Сразу вылет.
    Сразу говорю, что на плате ноги данные просто выходят на разъёмы. То есть никуда не подключены. Сам факт инициализации приводит к потере связи с процом. Без восстановления.
    Если ноги инициализировать на ввод, то проект полностью работает и всё успешно отлаживается.

На текущий момент внёс изменения следующего характера. Сначала в 1 вывожу эти линии ODR = 1. Далее инициализирую OTYPER в 1. Открытый коллектор. И только потом инициализирую MODER (линии на вывод).
Пока работает. Сейчас буду смотреть не будет ли проблем при дёрганье ногами.

Есть подозрение, что проблема с питанием кристалла. Там по сути всего одна земля и одно питание. На 48 ног что-то маловато выглядит. Плюс ещё разводка не очень. Питание передаётся ч/з переходное.
Возле ноги есть кондёр. Попробую кинуть перемычку. напрямую.

Заявлено 100ма кристалл, 80ма суммарно на ноги 15-20 на одну ногу.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В 27.04.2023 в 17:38, SapegoAL сказал:

Платы разные. Это разные изделия. Мне не совсем понятно, почему она стартует с флэши при BOOT0 == 1? И почему отладчик отваливается.

Такие проблемы возникают обычно, если слишком длинный провод SWD.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 часа назад, SapegoAL сказал:

Выставляю частоту SWD порядка 200 и пытаюсь подключиться к кристаллу периодически его сбрасывая аппаратно. На 5-10 раз получается сконектится.

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

3 часа назад, SapegoAL сказал:

    Достаточно в любой порт (А или Б) настроить 8 ног на вывод (точное количество не подбирал). По умолчанию там ODR = 0. Соответственно на эти ноги будет выведен 0. Сразу вылет.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

7 часов назад, SapegoAL сказал:

Достаточно в любой порт (А или Б) настроить 8 ног на вывод (точное количество не подбирал). По умолчанию там ODR = 0. Соответственно на эти ноги будет выведен 0. Сразу вылет.
    Сразу говорю, что на плате ноги данные просто выходят на разъёмы. То есть никуда не подключены. Сам факт инициализации приводит к потере связи с процом. Без восстановления.
    Если ноги инициализировать на ввод, то проект полностью работает и всё успешно отлаживается.

Как версия: Может у вас по одной из этих ног разрешено прерывание по спаду? а обработчик не прописан.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...