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

Не стартует STM32 по RESET при включении

У меня никак не получается - отладчик не ругается, но все переменные недоступны.

Попробуйте такую штуку: https://www.segger.com/systemview.html

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


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

а не проще ли для всего этого ставить просто внешний детектор? к примеру MAX811

 

Этому супервизору мозгов хватит только на ресет чипа, с чем кстати прекрасно справляется аппаратный ресет преференции ядра самого чипа.

От сбоя отложенной записи флеша - не спасёт, от защиты BKRAM - то-же, ну и есно вращающийся движок надолго останется на выбеге, и последнее - стоимость выше ста рублей.

 

Задействовать PVD - два smd резистора!!!

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


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

Попробуйте такую штуку: https://www.segger.com/systemview.html

 

Для этого дела нужен J-LINK вроде бы, у меня его нет под руками.

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


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

Для этого дела нужен J-LINK вроде бы, у меня его нет под руками.
Нынче без этой штуки, как без рук!

Должна быть хотя бы парочка в столе у каждого ARM-программера :)

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


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

Пролейте, плиз, свет на то как подключить отладчик на всем скаку и посмотреть куда МК занесло.
Пролейте и вы свет но то, какой у вас отладчик и какая среда разработки.

 

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


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

Пролейте и вы свет но то, какой у вас отладчик и какая среда разработки.

 

Юзаю IAR+ST-LINK v2

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


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

Приветствую.

Начинающий. Есть STM32F030F4P6 (куплен не у китайцев), проблема примерно аналогичная - при отключенном ST-LINK, при подаче питания прошивка стартует только после использования кнопки RESET (подключена  внешняя на пин NRST). Если оставить подключенным ST-LINK - при сбросе питания стартует нормально, без кнопки. В прошивке (собиралась в IAR) пины PA14/PA13 используются в качестве GPIO для программного аналога I2C (TM1637) в режиме open-drain. Option bytes не трогал. В ходе попыток понять, что происходит, залил простую прошивку с блинком на PA5 пине и замерил напряжение на пине PA14 (SWCLK) при отключенном ST-LINK - после подачи питания получил 3v, прошивка не стартует. Жму RESET - на пине - 0v и начинает работать. Стер флэш полностью- тоже самое - при подаче питания - 3v, после нажатия RESET - 0v. Хотя судя по документации, PA14 при сбросе по питанию должен быть в режиме alternate pull-down. Подключенный ST-LINK, судя по его схеме, притягивает SWCLK к земле, поэтому прошивка и стартует без RESET.

Что это может быть? Бракованный чип или я его своими экспериментами доконал (например, убил встроенный резистор на пине)?

Заранее благодарен.

PS. В errata ничего подобного описанному не нашел.

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

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


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

25.09.2020 в 21:30, dfxer сказал:

Что это может быть?

Разобрался. Притянул BOOT0 к земле через 10k резистор.

Проблема была в питании, при прошивке все запитывалось от ST-LINK, он выдавал в районе 3v, и на "висящем" BOOT0 было практически 0v, при работе запитывалось от отдельного источника, на BOOT0 было около 0.6v.

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


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

Приветствую всех.

Столкнулся с такой ситуацией, STM32F030C6T6. При подаче питания от программатора не стартует. Стоит кварц 32768 для тактирования RTC. Кратковременное замыкание ноги NRST на GND приводит к запуску программы. Если подать питание с замкнутой NRST на GND, а потом разомкнуть - не стартует. Если тактирование завести со встроенного LSI, то стартует при подаче питания нормально. Как-то связано с часовым кварцем. Может быть он не запускается. Не соображу, подскажите.

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


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

Кварц LSE вообще не имеет к запуску отношения. Вероятно какие-то наводки.

1. Проверьте, что пин nRST слегка подтягивается к плюсу питания и имеет небольшой конденсатор на землю. Порядка 100-1000пФ. Резистор оптимально 1-10кОм (прямо добавочный).

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

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


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

В 28.06.2022 в 10:42, Ioann_II сказал:

При подаче питания от программатора не стартует.

Если не стартует "при подаче питания от программатора", то можно попробовать запитать от отдельного источника питания. Заведомо достаточно мощного.

Возможно просто не хватает тока от программатора и происходит просадка питания при старте (так как потребление МК увеличивается).

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


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

В 28.06.2022 в 10:42, Ioann_II сказал:

Как-то связано с часовым кварцем. Может быть он не запускается. Не соображу, подскажите.

Если вы в прошивке ждете запуска внешнего LSE, то ждать можно долго.

Нужны правильные конденсаторы на выводах LSE.

Запуск LSE иногда может занимать секунды.

image.png.c92b3fd5c60288aa4a9fa718c0cb04b3.png

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


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

В 28.06.2022 в 17:35, adnega сказал:

Запуск LSE иногда может занимать секунды.

Подтверждаю. Некоторые кварцы у меня требовали 1-3 секунды на запуск и стабилизацию. И всё это время код ждал, пока взведётся флаг готовности.

Кстати, для проверки варианта нелишним было бы зажигать светодиод "Ну я тут запускаюсь, подожди", или выводить сообщения в консоль.

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


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

В 28.06.2022 в 17:33, AlanDrakes сказал:

Кварц LSE вообще не имеет к запуску отношения

Тоже так думаю, но факт налицо: настраиваю на работу с LSI - запускается чётко, настраиваю на LSE - нет. Сброс вручную помогает, Сброс через ST-Link тоже.

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


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

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

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

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

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

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

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

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

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

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