Тёмный

STM32. Контроллер прерываний 

ФРТК МФТИ
Подписаться 5 тыс.
Просмотров 9 тыс.
50% 1

Опубликовано:

 

28 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 17   
@ДенисПрозор
@ДенисПрозор 3 года назад
Спасибо огромное за материал!
@EdosEdgar
@EdosEdgar 5 лет назад
1) Небольшое исправление по поводу приоритетов прерываний, в лекциях было не совсем корректно сказано, что промежуток значений для приоритета варьируется от 0 до 192. На самом деле для хранения приоритета отводится 8 бит под каждую линию прерывания, то есть диапазон допустимых приоритетов это 0..255. Эффективно ядро обращает внимание только на старшие *2 разряда* в приоритете, то есть по факту прерывания имеют всего 4 различных приоритета: 0 - 0..63 1 - 64..127 2 - 128..191 3 - 192..255 2) Также отрицательная нумерация была введена для библиотеки CMSIS, поставляемой STMicroelectronics. Включение прерываний с отриц. номером не производится в NVIC, а в сист. регистрах ядра. Но приоритет выставляется в функции NVIC_SetPriority, которая обращается к регистрам NVIC, если прерывание периферийное, либо к SCB, если прерывание системное (т.е. если с отриц. номером).
@UU5JPP
@UU5JPP 5 лет назад
Edgar K. Эдгард посоветуй какую-то книгу для изучения STM32
@DS-ls7ck
@DS-ls7ck 4 года назад
@@UU5JPP по стм 32 книг на русском я не нашел. Есть только на английском.
@DS-ls7ck
@DS-ls7ck 4 года назад
@@UU5JPP ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-BAES8gbiBUA.html тут о ядре книжки
@vitgo
@vitgo 2 года назад
гм. разве не 4 старших бита отвечает за приоритет ?
@Vlad_4572
@Vlad_4572 4 года назад
Ха, парадокс: если человек поднимет трубку, то ему не смогут дозвониться))))
@DS-ls7ck
@DS-ls7ck 4 года назад
Он надеется на то что звонок придет за наносекунду до поднятия трубки
@egorkrapovnitskiy997
@egorkrapovnitskiy997 3 года назад
Эх, ребята, хотел в ваш универ на магистра поступить, но только зачем столько физики сдавать???
@volervagashim
@volervagashim 4 года назад
Не рассмотренная ситуация: во время длительной обработки прерывания#1 дважды происходит прерывание#2 с меньшим приоритетом. Сколько раз в таком случае обработается второе прерывание? Правильно ли я понял, что для каждого прерывания хранится, по сути, что-то вроде флага его состояния (не был/был и ожидает обработки/исполняется/исполняется и ожидает обработки) и, в таком случае, обработается он только 1 раз? Если же во время обработки прерывания#2 оно произойдет ещё раз - оно обработается дважды
@EdosEdgar
@EdosEdgar 4 года назад
Да, если прерывание сработало дважды во время обработки другого, то обработка первого произойдет один раз. Если во время обработки прерывания произойдет ещё раз это же прерывание, то оно будет обработано повторно, про флаги вроде было сказано в NVIC контроллере.
@Жизньвчастномдоме-н7х
А по векторам прерывания- вот есть их адрес, а дальше как происходит отсылка из этого адреса непосредственно в обработчик?
@EdosEdgar
@EdosEdgar 4 года назад
а в чём проблема? ядро записывает адрес в регистр PC и контроллер памяти уже выдаёт инструкции по новому адресу
@ИванИванов-й7и5э
@ИванИванов-й7и5э 4 года назад
Не думали лекции на степик выложить?
@EdosEdgar
@EdosEdgar 4 года назад
пока нет, но придётся подстраиваться под формат, как мне кажется
Далее
Катаю тележки  🛒
08:48
Просмотров 445 тыс.
ДЕНЬ УЧИТЕЛЯ В ШКОЛЕ
01:00
Просмотров 1,1 млн
STM32. Ядро Cortex-M0.
27:42
Просмотров 13 тыс.
STM32. FreeRTOS and Tasks
22:43
Просмотров 6 тыс.
STM32. USART
24:45
Просмотров 6 тыс.