Например TDA7294

Форум РадиоКот • Просмотр темы - stm32 WWDG.IWDG настройка таймеров.
Форум РадиоКот
Здесь можно немножко помяукать :)

Текущее время: Чт дек 25, 2025 15:45:23

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 25 ]    , 2
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: stm32 WWDG.IWDG настройка таймеров.
СообщениеДобавлено: Пт мар 04, 2022 06:46:45 
Прорезались зубы
Аватар пользователя

Карма: 5
Рейтинг сообщений: 30
Зарегистрирован: Пн июл 04, 2016 16:51:22
Сообщений: 234
Откуда: Россия, Омск
Рейтинг сообщения: 0
А Вам запрещают использовать прерывания на своё усмотрение?
У меня сейчас имеется прототип детектора сигнала, в котором прерывания используются достаточно активно. Ну как активно...
1. Стандартный SysTick для счётчика милисекунд (отмеряет время для основного цикла, увеличивает volatile переменные, хранящие пару флагов типа "Тут милисекунда таки тикнула", "Тикнула секунда", и собственно счётчики милисекунд), там же опрос кнопки выключения. Прибор позволяет его просто обесточить. =]
2. Прерывание DMA, которое запрашивает новую порцию данных для SPI модуля, который отправляет поток битов на управляемые светодиоды (WS2812, точнее их аналог в компактном корпусе).
3. Прерывание другого канала DMA, которое завершает выборку сэмплов от АЦП, которые дальше отправляются на обработку в функцию БПФ для определения наличия/отсутствия тона от генератора.

Так что, сон контроллеру в принципе разрешён.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: stm32 WWDG.IWDG настройка таймеров.
СообщениеДобавлено: Вс мар 06, 2022 23:20:28 
Мучитель микросхем

Карма: -8
Рейтинг сообщений: -23
Зарегистрирован: Вс дек 29, 2019 08:05:21
Сообщений: 440
Рейтинг сообщения: 0
У меня маленькая проблемка.При включении контроллера немного и иногда подвесает он.На LCD ничего не показывает.Конечно сразу срабатывает вач дог.Но мне кажется нужно ещё аппаратно решать.Что вы можете посоветовать?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: stm32 WWDG.IWDG настройка таймеров.
СообщениеДобавлено: Пн мар 07, 2022 14:09:05 
Прорезались зубы
Аватар пользователя

Карма: 5
Рейтинг сообщений: 30
Зарегистрирован: Пн июл 04, 2016 16:51:22
Сообщений: 234
Откуда: Россия, Омск
Рейтинг сообщения: 0
Аппаратно решать - это правильно.
Не инициализируется экран и зависает контроллер на старте - разные вещи.
К тому же, если контроллер зависает, то почему идёт перезагрузка по часам? Контроллер должен их настроить для того, чтобы они сработали.

У себя я стараюсь придерживаться такого алгоритма работы:
1. После включения максимально быстро настраиваем порты ввода-вывода в ожидаемое состояние.
Например, последовательные шины - в неактивное состояние - I2C в IDLE, SPI - поднять все пины, являющиеся выбором ведомого (ведомых) в "1", паралельные - в "0x00" с поднятыми в "1" пинами /WE /RE /RS, и так далее. Обычно это занимает достаточно мало времени.
2. Настроить внутренний тактовый генератор на нужную частоту. HSE ON -> PLL ON -> Core
3. После переключения на нужную частоту - инициализировать остальную периферию - сами модули I2C/SPI/UART и так далее.
4. Инициализировать устройства на шинах, предварительно выполнив их сброс (если есть пин /RESET).
5. Выйти в основной цикл.

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

В остальном - стандартные советы - по возможности короткие провода, экранирование, если есть такая возможность, изоляция от частей схемы, где возможны всплески тока.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: stm32 WWDG.IWDG настройка таймеров.
СообщениеДобавлено: Пн мар 07, 2022 14:58:35 
Мучитель микросхем

Карма: -8
Рейтинг сообщений: -23
Зарегистрирован: Вс дек 29, 2019 08:05:21
Сообщений: 440
Рейтинг сообщения: 0
Но второй пункт это внешний генератор.Вы имеете ввиду при включении использовать внутренний генератор при запуске а потом переключится на HSE ON -> PLL ON -> Core .


Вернуться наверх
 
Эиком - электронные компоненты и радиодетали
Не в сети
 Заголовок сообщения: Re: stm32 WWDG.IWDG настройка таймеров.
СообщениеДобавлено: Вт мар 08, 2022 14:03:59 
Прорезались зубы
Аватар пользователя

Карма: 5
Рейтинг сообщений: 30
Зарегистрирован: Пн июл 04, 2016 16:51:22
Сообщений: 234
Откуда: Россия, Омск
Рейтинг сообщения: 0
Но второй пункт это внешний генератор.Вы имеете ввиду при включении использовать внутренний генератор при запуске а потом переключится на HSE ON -> PLL ON -> Core .

Я привожу пример того, как код работает у меня. Чип в любом случае стартует на внутреннем генераторе, а затем можно включить внешний, подключить с него PLL, и тактироваться от него.
Можно подавать внутренний генератор на вход PLL.
Это всё по вкусу, как приправы в кулинарии.


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 25 ]    , 2

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 12


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y