No video

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

  Рет қаралды 9,044

ФРТК МФТИ

ФРТК МФТИ

5 жыл бұрын

Лектор - Казиахмедов Эдгар.
Сообщество проекта: drec_courses
Репозиторий с материалами курса: github.com/edosedgar/stm32f0_ARM
Приняли участие в создании:
- Филипп Микоян philalala
- Владислав Молодцов molvlad
- Прутьянов Виктор vprutyanov

Пікірлер: 17
@user-zj4rh5yw9g
@user-zj4rh5yw9g 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 kzfaq.info/get/bejne/eKd1hpuYx8-mhXU.html тут о ядре книжки
@vitgo
@vitgo 2 жыл бұрын
гм. разве не 4 старших бита отвечает за приоритет ?
@volervagashim
@volervagashim 4 жыл бұрын
Не рассмотренная ситуация: во время длительной обработки прерывания#1 дважды происходит прерывание#2 с меньшим приоритетом. Сколько раз в таком случае обработается второе прерывание? Правильно ли я понял, что для каждого прерывания хранится, по сути, что-то вроде флага его состояния (не был/был и ожидает обработки/исполняется/исполняется и ожидает обработки) и, в таком случае, обработается он только 1 раз? Если же во время обработки прерывания#2 оно произойдет ещё раз - оно обработается дважды
@EdosEdgar
@EdosEdgar 4 жыл бұрын
Да, если прерывание сработало дважды во время обработки другого, то обработка первого произойдет один раз. Если во время обработки прерывания произойдет ещё раз это же прерывание, то оно будет обработано повторно, про флаги вроде было сказано в NVIC контроллере.
@user-yp8dg7qt6o
@user-yp8dg7qt6o 4 жыл бұрын
А по векторам прерывания- вот есть их адрес, а дальше как происходит отсылка из этого адреса непосредственно в обработчик?
@EdosEdgar
@EdosEdgar 4 жыл бұрын
а в чём проблема? ядро записывает адрес в регистр PC и контроллер памяти уже выдаёт инструкции по новому адресу
@user-vq9ji5km8q
@user-vq9ji5km8q 4 жыл бұрын
Не думали лекции на степик выложить?
@EdosEdgar
@EdosEdgar 4 жыл бұрын
пока нет, но придётся подстраиваться под формат, как мне кажется
@Vlad_4572
@Vlad_4572 4 жыл бұрын
Ха, парадокс: если человек поднимет трубку, то ему не смогут дозвониться))))
@DS-ls7ck
@DS-ls7ck 4 жыл бұрын
Он надеется на то что звонок придет за наносекунду до поднятия трубки
@egorkrapovnitskiy997
@egorkrapovnitskiy997 3 жыл бұрын
Эх, ребята, хотел в ваш универ на магистра поступить, но только зачем столько физики сдавать???
Nastya and SeanDoesMagic
00:16
Nastya
Рет қаралды 44 МЛН
Mom's Unique Approach to Teaching Kids Hygiene #shorts
00:16
Fabiosa Stories
Рет қаралды 39 МЛН
STM32. Ядро Cortex-M0.
27:42
ФРТК МФТИ
Рет қаралды 13 М.
STM32. Таймеры общего назначения. Часть 1.
25:39
Lecture 9: Interrupts
20:43
Embedded Systems and Deep Learning
Рет қаралды 263 М.
Nastya and SeanDoesMagic
00:16
Nastya
Рет қаралды 44 МЛН