Спасибо за Вашу работу. Хотелось бы поподробнее по функциям Callback. Попробуйте загуглить, нет ничего(хотя, может я не могу найти, буду благодарен за ссылку). Общий принцип как то понятен, но нет информации в каких случаях оправданно их использование, когда обработчик можно посадить в ..._it.c. То есть, нет какой то стройной теории по использованию обработчика
@NRelectronics4 жыл бұрын
Пожалуйста, не забывайте про лайки для других. Записал себе в план.
@Vlad_45724 жыл бұрын
"Здесь мы научились... " )))) смех сквозь слёзы. Чем дальше изучаю, тем больше информации, которая уже не хочет укладываться. Такое чувство, что я этот STM32 никогда не победю(( Люди, у меня у одного такая фигня? Или у меня слишком большие требования к себе? Автор, а сколько вы по времени изучали этот МК?
@NRelectronics4 жыл бұрын
Научитесь, главное больше практиковаться и не переживать так))
@iaroslavsisenco40724 жыл бұрын
Спасибо за проделанную работу! Возник следующий вопрос : Нет желания после какого-то большого блока уроков с основами реализовать какой-нибудь реальный (обучающий) проект? В смысле с конкретной реализацией всего разученного до этого момента, не по отдельности в отдельных тематических экспериментах, а именно как в настоящем реальном проекте в комплексе со всем, что этому сопутствует? Вариантов помигать светодиодами в сети много, но именно цельный проект со схемотехникой, программированием, отладкой, разводкой платы и видимым конечным результатом - это редкость.
@NRelectronics4 жыл бұрын
Отдельные проекты конечно будут. Это ветка "Архитектура и теория".
@NRelectronics4 жыл бұрын
Тут ещё сложность в том, что неизвестно что кому надо... Схемотехника тут простая, трассировка печатки вытекающе проста, а вот настроить МК с нужными параметрами часто вызывает вопросы, об этом и серия обучающих видео.
@ГрадиентПотенциалов3 жыл бұрын
Хороший материал
@NRelectronics3 жыл бұрын
Спасибо. Подписывайтесь, рекомендуйте.
@ГрадиентПотенциалов3 жыл бұрын
@@NRelectronics И то, и другое - уже
@ГрадиентПотенциалов3 жыл бұрын
@@NRelectronics Хорошо, что напомнили. Просили скинуть ссылку
@NRelectronics3 жыл бұрын
Спасибо за и то и то)) Ожидайте новых интересных видео.
@ГномикВася-д3ж3 жыл бұрын
Есть несколько вопросов: 1) Почему в сохранении контекста участвуют только несколько регистров, а не сохраняются регистры R4--R11 ? Почему бы не сохранить весь регистровый файл? 2) Что за мультицикловые команды STR и LDR ? Где о них почитать ? В "Mastering STM32" о них ничего не нашел. 3) Где можно получше узнать о Tail-chaining ? Откуда эти картинки?
@NRelectronics3 жыл бұрын
1. Эти регистры под несколько другие задачи, почитайте по ним. 2. Ребят, ну гугл есть, книги по NVIC есть... 3. www.amazon.com/dp/0750685344 Ваш Mastering STM32 это для тех кто сам документацию читать не может.
@НазарЛапатшо5 жыл бұрын
Привет.Я довольно давно пишу под stm32 но мне все еще не приходилось "разруливать" приоритеты прерываний.Хотя у меня и сложные проекты бывают.Но мне пока все равно какое прерывание сработает раньше другого.Классный у тебя канал
@NRelectronics5 жыл бұрын
Спасибо за оценку моей работы. Это меня подстёгивает работать дальше и лучше. Да тут действительно все от задачь зависит. Что нужно. В следующем видео пару примерчиков приведу.
@МихалИваныч5 жыл бұрын
Спасибо за труды. А будут уроки по интерфейсам связи?
@NRelectronics5 жыл бұрын
Да, конечно будут по интерфейсам. После примеров на прерывания будет USART следующее видео.
@МихалИваныч5 жыл бұрын
@@NRelectronics супер! :) Ещё одна просьба не могли бы вы чууууточку подробнее отвечать на вопросы "что это такое", "для чего нужно" и "примеры использования". Я год назад впервые в жизни столкнулся с микроконтроллерами, а именно с ардуино. Немного помигал диодами, попробовал датчики, дисплей 1602. Так же впервые стокнулся с языком С, но сложностей не возникло, так как пишу приложения на РНР. Потом заинтересовался характеристиками и возможностями МК. И тут я наткнулся на stm :D Понял, что на ардуино далеко не уедешь, да подкупала мощь стм за те же деньги)) Но так как ни русскоязычной литературы, ни толковых уроков в сети нет, где всё разбирается с азов, пришлось читать книги по авр. Разобрался с такими понятиями как архитектура; ядро; ram, rom, eeprom памяти, с регистрами и с коммуникационными интерфейсами. Разобрался как работают регистры, что такое разрядность, шины, как проходят операции чтения и записи в память на электронном уровне. Но авр и арм отличаются инструкциями. Поэтому и хотелось бы подробнее изучить этот момент.
@NRelectronics5 жыл бұрын
@@МихалИваныч Я вроде всегда стараюсь отвечать максимально подробно. Если нет, повторно переспрашивайте. Вы большой молодец что подробно разбираетесь в основным блоках МК и с самим МК, так держать!)
@igorying85483 жыл бұрын
Отличный курс, спасибо!
@NRelectronics3 жыл бұрын
Спасибо. Ожидайте его продолжения скоро.
@BoolAB762 жыл бұрын
Джиттер (дрожание) - это непостоянство времени от момента возникновения прерывающего события до момента передачи управления первой команды обработчика прерывания. Джиттера не может не быть, так как контроллер всегда должен завершить выполнение текущей команды прежде чем начать процедуру сохранения контекста и т.п. В идеале дрожание не превышает одного машинного цикла. Но может и превышать.
@NRelectronics2 жыл бұрын
Всё так примерно и есть. Для STM32 нормируется джиттер?
@BoolAB762 жыл бұрын
@@NRelectronics не могу знать, ибо пока только знакомлюсь с этими контроллерами. По Вашим урокам. Спасибо за огромный труд по созданию этого цикла. Собственно, по вопросу. На основании информации, полученной в этом плейлисте. К этому уроку Вами упоминалась самая длинная атомарная операция - чтение-модификация-запись регистра GPIO, которая выполняется за три цикла. Значит, джиттер уже может достигать длительности трёх циклов. И ещё половина плейлиста впереди ;)
@NRelectronics2 жыл бұрын
Молодцы! Продолжайте, главное не бросайте!!
@NRelectronics Жыл бұрын
Всё же джиттер отсутствует - из-за поддержки мультицикловых команд (STR, LDR)
@BoolAB76 Жыл бұрын
@@NRelectronics , в тактируемой системе ничто не может произойти быстрее одного такта. Разве что асинхронный сброс из взведение какого-то триггера, но это к обработке прерывания не относится. Это легко проверить. Делаем бесконечный цикл, который обнуляет выход. И прерывание всего из двух команд: запись 1 в выход и покидание обработчика. Прерывание по фронту на входе. Продаём на вход частоту, раз в 5 меньше частоты ядра. По фронту входа синхронизируем осциллограф. Сигнальный щуп на упомянутый выше выход. Уверен, увидите дрожание в пределах одного такта ядра.
@Aleksandr_Sidorov5 жыл бұрын
Наверно придется еще один урок делать ,где конкретно работает обработчик прерываний , и как выбирать их приоритеты
@NRelectronics5 жыл бұрын
Где и как работает обработчик прерываний будет в примерах. А какие выбирать приоритеты это собственно ты и решаешь как программист ;-)
@CoBaldr4 жыл бұрын
На cmsis это будет менее объемно, но сложнее к восприятию.
@NRelectronics4 жыл бұрын
Что это сложнее так это точно, поэтому в этой серии видео пока показываю на хале. А вот что меньше тут момент сложный, в видео указывал, что в вызовах прерываний проверяется множество условий, возможно в следующем видео...возможно не меньше если в объеме хале, а если только под одну задачу, да, поменьше.
@CoBaldr4 жыл бұрын
@@NRelectronics я подразумевал количество строк
@NRelectronics4 жыл бұрын
@@CoBaldr для одного прерывания да. Хал проверяет много чего нужного и нет.
@Korbomen3 жыл бұрын
Зачем нужны прерывания если есть dma? Нужно просто проверять флаги
@NRelectronics3 жыл бұрын
Потому что не во всех мк есть DMA, везде есть нюансы.
@NRelectronics Жыл бұрын
DMA работает на основе прерываний если что))
@Music-ec8rz3 жыл бұрын
самый доступный материал, на русском языке
@NRelectronics3 жыл бұрын
Благодарю. Рекомендуйте для других.
@Music-ec8rz3 жыл бұрын
@@NRelectronics у Вас, все структурировано и понятно. Можно конспект записывать. Очень доступно изложено про порты ввода-вывода (урок 8 и 9), всем рекомендую. На канале народ стрим, много материала, но очень сумбурно аля делаем так и просто повторяем за мной, у Вас же можно научится и потом думать своей головой. Еще раз спасибо.