Организация памяти STM
- КРАМ
- Друг Кота
- Сообщения: 25259
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: Организация памяти STM
При разрушении стека этот метод не работает, а так да...
- Реклама
Re: Организация памяти STM
Для обнаружения причины есть биты и регистры ошибок, их и нужно читать. Кагбе вот.
- КРАМ
- Друг Кота
- Сообщения: 25259
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: Организация памяти STM
[uquote="MLX90640",url="/forum/viewtopic.php?p=4322372#p4322372"]Для обнаружения причины[/uquote]
Разговор шел не о причине, а о МЕСТЕ возникновения исключения.
Разговор шел не о причине, а о МЕСТЕ возникновения исключения.
Re: Организация памяти STM
[uquote="MLX90640",url="/forum/viewtopic.php?p=4322301#p4322301"]Может, стоит вначале почитать контекст предыдущего поста, прежде чем писать столь длинный мессаг?[/uquote]Какой "контекст"? Этот бред:
[uquote="MLX90640",url="/forum/viewtopic.php?p=4321680#p4321680"]исключение - исключительная ситуация, ну то есть "катастрофа, всё пропало!". Дальнейшая работа микроконтроллера будет невозможна, он переходит в специальный режим и остается в нем до сброса.[/uquote]что-ли?
А вы уже прочитали мануал на ядро, где описано что такое "исключение"? Если бы его открыли, то нашли бы там например следующее:
"Enables SysTick exception request:
0 = counting down to zero does not assert the SysTick exception request
1 = counting down to zero asserts the SysTick exception request.
Software can use COUNTFLAG to determine if SysTick has ever counted to zero."
в описании "SysTick Control and Status Register".
Что такое "exception" перевести сможете?
Т.е. по вашему - после первого же exception-а от SysTick остаётся только перегрузиться. Работать никак нельзя.
[uquote="MLX90640",url="/forum/viewtopic.php?p=4321680#p4321680"]исключение - исключительная ситуация, ну то есть "катастрофа, всё пропало!". Дальнейшая работа микроконтроллера будет невозможна, он переходит в специальный режим и остается в нем до сброса.[/uquote]что-ли?
А вы уже прочитали мануал на ядро, где описано что такое "исключение"? Если бы его открыли, то нашли бы там например следующее:
"Enables SysTick exception request:
0 = counting down to zero does not assert the SysTick exception request
1 = counting down to zero asserts the SysTick exception request.
Software can use COUNTFLAG to determine if SysTick has ever counted to zero."
в описании "SysTick Control and Status Register".
Что такое "exception" перевести сможете?
Т.е. по вашему - после первого же exception-а от SysTick остаётся только перегрузиться. Работать никак нельзя.
Re: Организация памяти STM
Согласно мануалу, исключение - это исключительная ситуация. Ошибки - это подмножество исключительных ситуаций. А контекст темы касался именно ошибок. Так что сам ты "бред", сударь
Ичись читать, а не спорить
- Реклама
- КРАМ
- Друг Кота
- Сообщения: 25259
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: Организация памяти STM
[uquote="MLX90640",url="/forum/viewtopic.php?p=4322904#p4322904"]Согласно мануалу, исключение - это исключительная ситуация.[/uquote]
Вообще-то читаем мануал в части его Глоссария:
Из чего следует, что никаких "караул все пропало" или "исключительной ситуации" из обсуждаемого термина Exception не следует, а данный термин полностью синонимичен термину Non-maskable interrupt в других архитектурах.
Обрабатывается как обычное прерывание, потому что по сути ничем от него не отличается.
А уж если совсем строго по терминологии Мануала, то ЛЮБОЕ ПРЕРЫВАНИЕ классифицируется как Mode of Exception. Смотрим таблицу в цитате.
[uquote="MLX90640",url="/forum/viewtopic.php?p=4321680#p4321680"]работа микроконтроллера будет невозможна, он переходит в специальный режим и остается в нем до сброса.[/uquote]Никакого "специального режима" нет. Просто в обработчике ПО ДЕФОЛТУ startup-а тупо записан зацикливающий branch (B). Если туда написать возврат из прерывания, то получим игнорирование исключения. Можно уйти на иное тело обработчика и там разрулить исключение.
Вообще-то читаем мануал в части его Глоссария:
Далее читаем мануал в части раздела "Исключения":ARM Architecture Reference Manual писал(а):Exception
Handles an event. For example, an exception could handle an external interrupt or an Undefined instruction.
*) по картинке с таблицей в цитате следует кликнуть для увеличения.ARM Architecture Reference Manual писал(а):A2.6 Exceptions
Exceptions are generated by internal and external sources to cause the processor to handle an event, such as
an externally generated interrupt or an attempt to execute an Undefined instruction. The processor state just
before handling the exception is normally preserved so that the original program can be resumed when the
exception routine has completed. More than one exception can arise at the same time.
The ARM architecture supports seven types of exception. Table A2-4 lists the types of exception and the
processor mode that is used to process each type. When an exception occurs, execution is forced from a fixed
memory address corresponding to the type of exception. These fixed addresses are called the exception
vectors.
Из чего следует, что никаких "караул все пропало" или "исключительной ситуации" из обсуждаемого термина Exception не следует, а данный термин полностью синонимичен термину Non-maskable interrupt в других архитектурах.
Обрабатывается как обычное прерывание, потому что по сути ничем от него не отличается.
А уж если совсем строго по терминологии Мануала, то ЛЮБОЕ ПРЕРЫВАНИЕ классифицируется как Mode of Exception. Смотрим таблицу в цитате.
[uquote="MLX90640",url="/forum/viewtopic.php?p=4321680#p4321680"]работа микроконтроллера будет невозможна, он переходит в специальный режим и остается в нем до сброса.[/uquote]Никакого "специального режима" нет. Просто в обработчике ПО ДЕФОЛТУ startup-а тупо записан зацикливающий branch (B). Если туда написать возврат из прерывания, то получим игнорирование исключения. Можно уйти на иное тело обработчика и там разрулить исключение.
Re: Организация памяти STM
Ну тогда следует почитать мануал чуть дальше показанного.
- КРАМ
- Друг Кота
- Сообщения: 25259
- Зарегистрирован: Чт янв 10, 2008 22:01:02
- Откуда: Московская область, Фрязино
Re: Организация памяти STM
[uquote="MLX90640",url="/forum/viewtopic.php?p=4323034#p4323034"]почитать мануал чуть дальше[/uquote]
Зачем? Если у вас есть возражения по существу, то цитируйте дальше сами. Могу только намекнуть, что "дальше" в этом параграфе мануала расписаны все типы исключений в порядке указанном в представленной таблице. И среди них есть и обычные IRQ.
Зачем? Если у вас есть возражения по существу, то цитируйте дальше сами. Могу только намекнуть, что "дальше" в этом параграфе мануала расписаны все типы исключений в порядке указанном в представленной таблице. И среди них есть и обычные IRQ.
Re: Организация памяти STM
[uquote="MLX90640",url="/forum/viewtopic.php?p=4322904#p4322904"]Согласно мануалу, исключение - это исключительная ситуация. Ошибки - это подмножество исключительных ситуаций. А контекст темы касался именно ошибок.[/uquote]Ясно, предпочитаем крутиться как уж на сковородке, лишь бы не признавать свою ошибку. Всё с вами ясно. Эксперд млин....


