STM32. Урок 12. NVIC. EXTI. Примеры внешних прерываний

  Рет қаралды 11,929

NR.electronics

NR.electronics

Күн бұрын

Данный урок это практическое продолжение теоретического урока №11 - "STM32. Урок 11. NVIC. Прерывания. Контроллер прерываний NVIC".
Здесь приводятся примеры по работе EXTI с микроконтроллером STM32F103 в части вложенных прерываниях, очереди, приоритетам группы прерываний.
Вы можете помочь каналу Яндекс-деньги:
money.yandex.r...

Пікірлер: 88
@VideobufferGoPro12-kn2ok
@VideobufferGoPro12-kn2ok 6 ай бұрын
Примерно раз в пол года просматриваю этот урок, когда требуется прерывания использовать! Спасибо большое!)
@NRelectronics
@NRelectronics 6 ай бұрын
Спасибо и Вам за оценку моего труда!
@YurijVasiliev
@YurijVasiliev 11 күн бұрын
супер! особенно про приоритеты - СПАСИБО
@NRelectronics
@NRelectronics 11 күн бұрын
Благодарю. Подписывайтесь на канал и создавайте предзаказ на книгу!)
@АллоЭксперт-ж8в
@АллоЭксперт-ж8в 5 жыл бұрын
Все. Перехожу к Вам. Такой подачи материала еще не видел на русскоязычной стороне Ютуба!! Подписался и лайкнул все, что можно было (кроме Миландра, он не интересен, т. к. Stm он не конкурент). Для меня программирование микроконтроллеров это хобби, а Вы, видимо, занимаетесь этим профессионально!?
@NRelectronics
@NRelectronics 5 жыл бұрын
Ох спасибо за такую похвалу, главное чтобы я не зазвидился как народ стрим. И профессионально, на работе, и дома конечно же. На Инстаграмме небольшая подборка моего рабочего стола и только некоторых отладочных плат. Я это делаю для людей, как для самого себя, когда бы сам этого не знал. Смотрите мои видео, кликая на колокольчик, за лайки тоже благодарю.
@Vladimir_Zarubin
@Vladimir_Zarubin 5 жыл бұрын
@@NRelectronics В десяточку!!! Это насчет народ стрим.
@raven8867
@raven8867 3 жыл бұрын
Спасибо, все просто и понятно. Очень размеренный/интересный канал!
@NRelectronics
@NRelectronics 3 жыл бұрын
Вам спасибо за такие слова! Стараюсь. Не забывайте про лайки и рекомендуйте знакомым.
@std-sort
@std-sort 2 жыл бұрын
Большое спасибо за урок! Очень информативно и все понятно!
@NRelectronics
@NRelectronics 2 жыл бұрын
Пожалуйста. Рекомендуйте другим.
@АлексПовзун-г6у
@АлексПовзун-г6у 5 жыл бұрын
Спасибо за ваше творчество!
@NRelectronics
@NRelectronics 5 жыл бұрын
Вам спасибо за такую оценку!) Приятного обучения!)
@iaroslavsisenco4072
@iaroslavsisenco4072 4 жыл бұрын
Большое спасибо! Очень показательно и доходчиво!
@NRelectronics
@NRelectronics 4 жыл бұрын
Спасибо, стараюсь)
@МихалИваныч
@МихалИваныч 5 жыл бұрын
Спасибо огромное!) А примеры видов прерывания будете разбирать? Так же хотелось бы увидеть уроки по счётчикам/таймерам с примерами. Просьба - больше уделять внимание настройкам куба. Ещё раз огромное спасибо за разъяснения.
@NRelectronics
@NRelectronics 5 жыл бұрын
Прерывания по таймерам будут когда будем рассматривать сами таймеры. Прерывания есть на всю периферию, у меня нет желания делать все обо всем и кучу мола. Ваша просьба выполнена! У меня есть специально для Вас видео по кубу: kzbin.info/www/bejne/e2Oxk6SQd797Y5I
@Nazaro4ka
@Nazaro4ka 8 ай бұрын
Спасибо большое за отличный урок !
@NRelectronics
@NRelectronics 8 ай бұрын
Стараюсь. Подписывайтесь на канал, ставьте лайки, чтобы видео было доступно чаще в поиске для всех желающих!
@0mgPoco
@0mgPoco 2 ай бұрын
Автору 👍
@NRelectronics
@NRelectronics 2 ай бұрын
Благодарю.
@clora1136
@clora1136 4 жыл бұрын
Хорошие видео. Спасибо)
@NRelectronics
@NRelectronics 4 жыл бұрын
Пожалуйста) не забывайте про лайки)
@aliscander92
@aliscander92 4 жыл бұрын
Спасибо Вам большущее! Осваиваю stm32 для работы и своих радиотехнических проектов. Недавно нашел Ваш канал. У вас прекрасно сбалансирована теория и практика,что дает целостное понимание каждой функции. Если есть возможность можете сделать уроки по CMSIS, пожалуйста.
@NRelectronics
@NRelectronics 4 жыл бұрын
Спасибо и Вам за высокую оценку. Стараюсь. Уроки по CMSIS планируются в этом году.
@alexmak4201
@alexmak4201 5 жыл бұрын
Всё супер. Просьба, уменьшить громкость при заставке.
@NRelectronics
@NRelectronics 5 жыл бұрын
Спасибо. Хорошо уменьшу.
@Ironziz
@Ironziz 5 жыл бұрын
Познавательные уроки !!!😎 👍 Так держать! Единственно, а можно ещё уроки по cubeide , очень интересны возможности и специфика работы с STM ской прогой!!! А так все классно!!!
@NRelectronics
@NRelectronics 5 жыл бұрын
Спасибо за такие слова оценки!) Стараюсь как могу, жалко времени свободного немного, работа, семья, доча) Но при этом канал будет развиваться глубоко. Я уже обещал одному из подписчиков о втором видео по CubeIDE, видео по ней в планах стоит ;-) не забываем про лайки ;-)
@Ironziz
@Ironziz 5 жыл бұрын
Спасибо за обратную связь! Ждём уроки! 😊
@NRelectronics
@NRelectronics 5 жыл бұрын
@@Ironziz а пожалуйста за обратную связь ;-) !
@YurijVasiliev
@YurijVasiliev 10 күн бұрын
И подписан и лайк!!!! а что за книга???
@NRelectronics
@NRelectronics 10 күн бұрын
Благодарю. "Освоение STM32 самостоятельно" - первая книга из серии. Сейчас можно оформить предзаказ оформить, сейчас печатается в издательстве.
@therianet
@therianet 4 жыл бұрын
ogromnoe spasibo, ochen horosho uchite. zachem tolko if(User_pin==GPIO_PIN_9) ono ze vsegda TRUE, i pochemy ne stali ispolzovat callback fuction ?
@NRelectronics
@NRelectronics 4 жыл бұрын
Callback покажу в другом видео, сложно показать примеры по всей библиотеки. Поэтому пока основу или базу показываю.
@elmirakassymova380
@elmirakassymova380 2 жыл бұрын
Здравствуйте, подскажите, пожалуйста, кнопками EXTI отправляю пакеты в Кан шину, они мешают друг другу. В чем может быть проблема?
@NRelectronics
@NRelectronics 2 жыл бұрын
Формируйте тогда пакет, так чтобы они вам не мешали))
@scanty6996
@scanty6996 3 жыл бұрын
Не сразу заработало, пришлось включать мозги. У меня на плате кнопка по дефотлу подтянута к земле и пришлось поменять подтяжку на pull-down и изменить на реагирование по fading edge trigger detection. После этого заработало, но очень не хватает тригера шмидта, по тому что из за дребезга контактов, срабатывает иногда по 2 раза
@NRelectronics
@NRelectronics 3 жыл бұрын
Мои поздравления что разобрались!
@ivanrusev2270
@ivanrusev2270 7 ай бұрын
Я недавно только понял как делать аппаратно-программную задержку.Через внешние прерывание с таймером .
@NRelectronics
@NRelectronics 7 ай бұрын
Отлично что разобрались.
@ЭльМеф
@ЭльМеф 7 ай бұрын
@@NRelectronicsПравда ресурсов аппаратно-программная задержка требует больше. Правда я в AVR экспериментировал.4 ШИМ канала нужно было чтобы один ШИМ канал загорелся плавно и и погас потом второй канал так же третий и четвёртый.На каждое действие один внешний канал.Действий в одном канале ШИМа 2 .Вообщем 8 INT каналов .два таймера на ШИМ.Один таймер в прерываниях работает.8 установочных флагов .8 GPIO работающих в двух режимах togle и в логическом "0".Сейчас на Stm32 переношу опыт.На другие проекты.Переферия лучше.
@NRelectronics
@NRelectronics 7 ай бұрын
Молодцы, интересно сделали. На STM32 переферия значительно лучше чем на AVR. Даже на простых семействах класс. Рекомендую!
@ЭльМеф
@ЭльМеф 7 ай бұрын
@@NRelectronics На stm32 проект Bobr-станция управления глубинным насосом с защитой 3фазного эл.двигателя по току от обрыва фаз и перегрузки на ютубе посмотрите.5 лет програмирую на stm32 9 на avr.Начинал с абсолютного нуля.Работал электриком.
@NRelectronics
@NRelectronics 7 ай бұрын
Молодцы, здорово. Как поищу посмотрю обязанности.
@takeshi854
@takeshi854 4 жыл бұрын
Спасибо за видео! Очень круто объясняете. Хотел бы задать вопрос: а если нужно сделать задержку на определенное время в прерывании это надо новый счётчик включать, раз HAL_Delay() вводит в boot loop.
@NRelectronics
@NRelectronics 4 жыл бұрын
Спасибо. Так да, новый счётчик, зачем только по прерыванию еще задержка?
@takeshi854
@takeshi854 4 жыл бұрын
@@NRelectronics Да, такой вопрос часто спрашивают) Я хотел бы по нажатию кнопки прекратить на некоторое время идущий таймер, отобразить на этом же led сегменте температуру и влажность и потом после отпускания продолжить работу счётчика. Так же в будущем хочу подсчитать время нажатия кнопки, для долгого удержания ещё и обнулить счётчик.
@NRelectronics
@NRelectronics 4 жыл бұрын
Я вас понял, зачем так нужно. Помереть время работы участков программы можно с помощью DWT.
@ДимаДима-к1н
@ДимаДима-к1н 3 жыл бұрын
@@NRelectronics пРИМЕРЧИК ...ДЛЯ ЛЮДЕЁ НЕ ОБЛАДАЮЩИХ...знанием и фантазией! Про систик слышал, кнопку с прерыванием на вход таймера(захват)представил...только можно ли сразу 2е ф-ии на один вход навесить(таймер & прерывание)?
@ДимаДима-к1н
@ДимаДима-к1н 3 жыл бұрын
USER_Pin битовая маска == GPIO_PIN_9 Смысл СРАВНИВАТЬ МАСКИ ? Там должно быть как минимум *GPIOA->IDR&& GPIO_PIN_9 (bulean)Hal_ReadPin(*port,USER_Pin) Прошу прощения за вольную трактовку синтаксиса.... Hal хорошо, ГДЕ CMSIS?
@NRelectronics
@NRelectronics 3 жыл бұрын
Будет, когда подойдет время.
@ЕвгенийМельник-я6в
@ЕвгенийМельник-я6в 5 жыл бұрын
Непонятно как при нажатии на кнопку "User" будет лог."1". Было бы хорошо еще над группами приоритетов провести опыты, этого уж точно никто не делал. Нагляднее было бы 4 кнопки и на каждую кнопку свой светодиод. За видео спасибо.
@NRelectronics
@NRelectronics 5 жыл бұрын
Там в одном месте оговорился, так как кнопка срабатывает на землю. А с группами приоритетов это второй пример, который объемный ;-)
@NRelectronics
@NRelectronics 5 жыл бұрын
Может в другой раз привести с 4-мя кнопками пример над субгруппами, но суть то такая же как и с группами. Благо их 9 штук в таком исполнении отладочной платы))
@TheAurumsan1
@TheAurumsan1 4 жыл бұрын
Огромное спасибо! Ну почему нет таких преподов, или они попадаются только счастливчикам?!
@NRelectronics
@NRelectronics 4 жыл бұрын
Значит Вы счастливчик ;-)
@alexivanov4022
@alexivanov4022 5 жыл бұрын
Ждем ЮАРТ на прерываниях!!!!!
@NRelectronics
@NRelectronics 5 жыл бұрын
Конечно будет UART на прерываниях ;-)
@slavaglow6933
@slavaglow6933 5 жыл бұрын
Спасибо за урок. Не совсем понял в прерывании зачем вызов функции : HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_9);
@NRelectronics
@NRelectronics 5 жыл бұрын
Пожалуйста) Она генерируется самим кубом, я ее не писал и об этом говорил.
@alexivanov4022
@alexivanov4022 5 жыл бұрын
Чтоб сбрасывать флаги
@АркадийБардамов
@АркадийБардамов 5 жыл бұрын
А каким образом решается проблема с дребезгом кнопок??? Спасибо за видео, пример хороший)
@NRelectronics
@NRelectronics 5 жыл бұрын
В данных примерах не акцентировал внимание на дребезге. Обещаю в ближайшем уроке приведу код по решению данного вопроса)
@АркадийБардамов
@АркадийБардамов 5 жыл бұрын
@@NRelectronics спасибо, жду) И ещё сам подумаю конечно)
@kokotmkokot4926
@kokotmkokot4926 4 жыл бұрын
@@NRelectronics Вы это серьезно? Прерывание срабатывает на заданный фронт и второго фронта для проверки не подразумевается. Может я ошибаюсь и Вы привели пример кода, позволяющий отделить фронт помехи от фронта полезного сигнала?
@kokotmkokot4926
@kokotmkokot4926 4 жыл бұрын
@@NRelectronics еще возникает такой вопрос, Вы обрабатываете прерывание после сброса флага. Что произойдет в случае прихода нового прерывания если обработчик еще не закончил свою работу? спасибо.
@NRelectronics
@NRelectronics 4 жыл бұрын
@@kokotmkokot4926 по приходу нового прерывания в теоретическим видео все разжевано, посмотрите пожалуйста. Все зависит от уровня приоритета в таблице векторов прерываний, а также от субгруппы. Может как и прервать выполнения перывания, так и стать в очередь на выполнение...
@DunnoOnTheMoon
@DunnoOnTheMoon 3 жыл бұрын
Что то не могу понять. После каждой перегенерации кода очищается мой код. Хотя вроде и галочка стоит сохранять код и пишу между тегами юзерского кода. Загадка..🙄 Сорян. Не разобрался где начало, а где конец тега😂. Вроде работает.
@NRelectronics
@NRelectronics 3 жыл бұрын
Да, там нужно писать в тегах между begin и end. И все будет отлично!
@DunnoOnTheMoon
@DunnoOnTheMoon 3 жыл бұрын
@@NRelectronics там слишком много оказалось бегинов и эндов в одном месте). Надо внимательно читать)
@DunnoOnTheMoon
@DunnoOnTheMoon 3 жыл бұрын
@@NRelectronics делаю примеры на своей f0discovery. Там схемотехника кнопки дурацкая. Кнопка замыкает питание. Получается никакой подтяжки делать не нужно? И без подтяжки у меня неустойчиво работает. Похоже на дребезг кнопки. Хотя не жму уже в этот момент давно.
@NRelectronics
@NRelectronics 3 жыл бұрын
Конечно внимательнее надо ;)
@NRelectronics
@NRelectronics 3 жыл бұрын
Там на кнопке должен был кондер, чтобы не было дребезга.
@sama9_Live
@sama9_Live 4 жыл бұрын
пачему HAL учите нармально , библиотека убогая и медленная
@NRelectronics
@NRelectronics 4 жыл бұрын
пАтАму что ))
@takeshi854
@takeshi854 4 жыл бұрын
STMicroelctronics её, если не ошибаюсь, рекомендует на АК основную. Не зря же они пыхтели и оборачивали функции.
Stm32 - How to work with St-link Utility.
3:26
ali_azimian
Рет қаралды 66
Остановили аттракцион из-за дочки!
00:42
Victoria Portfolio
Рет қаралды 3,1 МЛН
Will A Guitar Boat Hold My Weight?
00:20
MrBeast
Рет қаралды 196 МЛН
An Unknown Ending💪
00:49
ISSEI / いっせい
Рет қаралды 48 МЛН
STM32. Урок 13. USART. Теория. Часть 1
45:45
NR.electronics
Рет қаралды 10 М.
STM32. Урок 13. USART. STM32F103  CMSIS. Часть 3
34:18
NR.electronics
Рет қаралды 6 М.
STM32. Урок 21. I2C. Inter Integrated Circuit. part 1
27:24
NR.electronics
Рет қаралды 4,8 М.
Остановили аттракцион из-за дочки!
00:42
Victoria Portfolio
Рет қаралды 3,1 МЛН