реклама на сайте
подробности

 
 
> написание кода в самом обработчике прерывания, вылетает за стек, похоже
Метценгерштейн
сообщение May 25 2016, 17:05
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 357
Регистрация: 12-04-05
Из: Петербург
Пользователь №: 4 079



На сколько корректно считается написание каких-либо алгоритмов и вызов ф-й от туда из самого прерывания. Например, если оно по I2C пришло. Дело в том, что проц вел себя вообще неадекватно. I2C вис наглухо. Как только в самом прерывании локальную переменную заменил на глобальную, проблема пропала. Размер стека с 0х200 увеличил до 0х400- проблема та же. Как только локально объявлена переменная- глючит.
Можно же локальные переменные в обработчике создавать? Думаю, да.
Тогда как правильно писать код? Вывешивать флаг там? Потом уже смотреть в вечном цикле на него и если стоит, то обрабатывать?
Или в чем я не прав? Проц STM32
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
ViKo
сообщение May 25 2016, 19:51
Сообщение #2


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Задайте статическую локальную переменную. Она вечная.
Ну, конечно же, в прерывании можно делать что угодно. Важно успеть закончить до поступления следующего запроса. rolleyes.gif
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th July 2025 - 00:09
Рейтинг@Mail.ru


Страница сгенерированна за 0.01349 секунд с 7
ELECTRONIX ©2004-2016