Энкодер 🕹️ и STM32 подключение (на CMSIS и HAL)

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

Cxemka Com

Cxemka Com

Күн бұрын

📝 Статья: cxemka.com/71-...
🏷️ KY-040 360 Degrees EC11 (0.71💲): ali.ski/H-gY0_
🏷️ 360 Degrees Rotary Encoder (0.46💲): ali.ski/NrPIM
🏷️ USB Logic Analyze 24M 8CH (4.69💲): ali.ski/RFBZY
🏷️ Logic Analyzer 24M 8CH (5.30💲): ali.ski/pRABTt
🏷️ STM32F030F4P6 Board (1.20💲): ali.ski/jiIOj2
🏷️ 0.91 inch OLED (1.42💲): ali.ski/8JgXx
🏷️ SG90 Servo 9g (0.77💲): ali.ski/Z3Qe_
🛒 Мой мультиметр T21D RM113D (13.81💲): ali.ski/ED0syl
↪️ GitHub: github.com/Ego...
#stm32 #cmsis #hal #stm32cubeide
✒️ Благодаря возможности работы некоторых таймеров с накопительным (инкрементальным) энкодером его можно подключать аппаратно. Таким образом после настройки и подключения изменения в счетчике будет происходить независимо. Но кроме обычной настройки рассмотрен способ определять вращение путем настройки прерывания по триггеру .

Пікірлер: 56
@CanchezAK
@CanchezAK 3 жыл бұрын
Внезапно, очень толково... Мужик, продолжай, прямо вот всё идеально показано и рассказано.
@sebastianangelo2054
@sebastianangelo2054 3 жыл бұрын
i guess it's kinda randomly asking but do anybody know a good site to watch new series online ?
@xavierkoda9531
@xavierkoda9531 3 жыл бұрын
@Sebastian Angelo i dunno atm I've been using Flixportal. just search on google after it :D -xavier
@sebastianangelo2054
@sebastianangelo2054 3 жыл бұрын
@Xavier Koda thank you, I went there and it seems to work :) I really appreciate it !
@xavierkoda9531
@xavierkoda9531 3 жыл бұрын
@Sebastian Angelo You are welcome :)
@LMTS100
@LMTS100 3 жыл бұрын
Давно ничего толкового по CMSIS не видел. Спасибо + Like
@andreiefimov9666
@andreiefimov9666 3 жыл бұрын
Спасибо за детальное пояснение. У Вас хорошо получается: по делу и коротко. Продолжайте в том же духе!
@sledleo
@sledleo 3 жыл бұрын
Вот это заход по CMSIS, шикарно! Ждем еще!
@dobroliub1908
@dobroliub1908 3 жыл бұрын
Как же хорошо что о CMSISe с её регистрами не забываете, плюс еще и HALL ...Моё почтение!) и дальше так держать!! всё очень толково изложено. Всегда предпочитаю понимать что и где у меня в коде происходит, а не тонуть в куче библиотек..Возможно на HALL и перейду, но пока об этом рано говорить)) Спасибо Вам за моё сэкономленное время!
@world_conspiracy
@world_conspiracy 3 жыл бұрын
Хотел посмотреть пример работы с энкодером на CMSIS, но ещё и гуглить правильно научился))
@TDMLab
@TDMLab 3 жыл бұрын
Огонь👍
@cxemkacom3623
@cxemkacom3623 3 жыл бұрын
о, какие люди я подписан на вас)
@TDMLab
@TDMLab 3 жыл бұрын
@@cxemkacom3623 а я на вас) сейчас смотрю про дребезг. Подача мне нравится, желаю успехов в развитии канала.
@IvanIvanov-ny4nz
@IvanIvanov-ny4nz 3 жыл бұрын
Спасибо. Интересное видео. Продолжайте снимать про STM32.
@Diamond8822
@Diamond8822 3 жыл бұрын
Очень обстоятельно и без воды! лайк и подиписка
@MrSergej72
@MrSergej72 3 жыл бұрын
Такого ещё не видел на Ютубе, Лайк !!!
@OhrimenkoDI
@OhrimenkoDI 3 жыл бұрын
Отличное видео! Без воды, все по делу!
@slavaglow6933
@slavaglow6933 3 жыл бұрын
Спасибо, очень полезно. Продолжайте, лайк и подписка.
@АлександрШниперсон-г5м
@АлександрШниперсон-г5м Жыл бұрын
Вот это ДА!!! Вот это подача! Никакого жевания соплей! Всё чётко , развёрнуто и информативно. Подписываюсь однозначно.
@ivangolubov4931
@ivangolubov4931 9 ай бұрын
Тоже начинал c CMSIS. Новичку конечно сложновато, но зато один раз разобравшись дальше всё идёт по накатанной.
@Chettuser
@Chettuser 3 жыл бұрын
Благодарю! Особенно за CMSIS.
@statstopfinish
@statstopfinish 3 жыл бұрын
Хорошо подана информация. Так держать.
@ebjikkolu4757
@ebjikkolu4757 2 жыл бұрын
Когда речь зашла о сравнении занимаемой программой памяти я закрыл глаза и заткнул уши
@artvk8294
@artvk8294 3 жыл бұрын
Круто. Спасибо!
@serggorod7916
@serggorod7916 3 жыл бұрын
Mustech MS8220R Лучший тестер! но и в описании совсем хорош,единственное что не УДОБНО КНОПКА ВКЛЮЧЕНИЯ. ТЕХНИЧЕСКИЕ ХАРАКТЕРИСТИКИ Выбор пределов измерений автоматический/ручной Максимальное значение индикатора 5999 Диапазоны измерения постоянного напряжения 6/60/600В ±0.5%, 1000В ±0.8% Диапазоны измерения переменного напряжения 6/60/600В ±0.8%, 1000В ±1.0% Диапазоны измерения постоянного тока 600/6000 мкА/60/600 мА ±1.2%, 10A ±1.5% Диапазоны измерения переменного тока 600/6000 мкА/60/600 мА ±1.5%, 10A ±2.0% Диапазоны измерения частоты 6000Гц - 60Мгц Диапазоны измерения сопротивления 600 Ом/6/60/600 кОм/6 MОм ±1.0%,60Ом ±1.5% Диапазоны измерения температуры t°C -40°C ~ 1000°C±2.9% Диапазоны измерения емкости 6 нФ - 6000 мкФ Прозвонка цепей на проводимость есть Tест диодов, транзисторов есть Автоматическое отключение питания есть (Cо звуковым сигналом!) Удержание данных на дисплее (Data Hold) есть Источник питания 6F22(9В) Габариты 195 x 92 x 43 мм ИК КОМ ПОРТ. реальные значения (тру РМС)
@lsdlsd6036
@lsdlsd6036 2 жыл бұрын
Я обескуражен данным видео
@masterkit9517
@masterkit9517 3 жыл бұрын
CDC_Transmit_FS((uint8_t*)"0x90",strlen("0x90")); передает как строку данные в ком порт, а как передать в виде HEX ? в ардуино было SERIAL.WRITE (0x90); отлично работало, а как в STM32, пишу вам вопрос, так как вы практически единственный кто может ответить, остальные пустое место
@masterkit9517
@masterkit9517 3 жыл бұрын
Умница!
@42Only-b1z
@42Only-b1z 3 ай бұрын
почему у меня имя константы (тип uint8_t) подчеркивается красным? при наведении на имя отображается вот такое предупреждение warning: no previous extern declaration for non-static variable 'name'
@clora1136
@clora1136 3 жыл бұрын
Вроде как вы при подтяжке забыли отрицание маски сделать. Я на гите оставил задачу с пояснением.
@SmNikolay
@SmNikolay 3 жыл бұрын
Хорошее видео. Не подскажите как работать с энкодером(hal timer) который дает полный импульс за 2 щелчка?
@masterkit9517
@masterkit9517 3 жыл бұрын
Хочу сделать отправку в USB через дескриптор из примера джойстика миди сообщение, подключил миди устройство отлично на STM32 103 определили fruity loops и любые муз. редакторы, а вот упаковать не могу сообщение и отправить, нашел потом пример джойстика очень хороший, там есть упаковка байта или двух, но все равно не сообразил, новичку трудно очень, вы явно разобрались бы, слушал ваше видео с открытым ртом, кому не задавал вопрос только мямлили что-то невнятное, даже самые крупные каналы оказывались мыльными пузырями. На вашем канале нашёл больше чем на самых "громких" каналах по STM32 где даже не ответят на комментарий, а тем более как миди 2 байта отправить уже известному дескриптору, подключенному в муз.редактор, никто не помог, отпинали ногами только всюду( у вас хоть приятно послушать уроки, нигде не было того что есть у вас. Ни по сдвиговым регистрам ни по serial. Уверен миди тема вам легко бы далась, я смеюсь с предыдущих "гуру" которые 2 байта даже не подсказали как послать и куда. А как реклама на их каналах, так профессоры все.
@sskdll
@sskdll 3 жыл бұрын
Спасибо за видео! Мне не понятно зачем нужна приставка UL. то что это unsigned long понятно, но вот в чем разница между ( 0x1
@dinvinchester3353
@dinvinchester3353 Жыл бұрын
В том что ul ансигнед Лонг а 0x1 скорее всего инт или int8_t короче это уточнение для компилятора какого типа будет переменная
@МихаилКононенко-ж3ю
@МихаилКононенко-ж3ю 3 күн бұрын
Никогда небыло и вот опять!! Попался видос как прикрутить энкодер к стм32. И мне сразбегу в лоб начинают объяснять что это и для чего😡😡. Пойду на дром ёмобиль искать.
@ivanrusev2270
@ivanrusev2270 3 жыл бұрын
В режиме Энкодера прерывания не включают.И при включеня шим вывода также не включают
@micromaster4405
@micromaster4405 Жыл бұрын
Почему же?
@ivanrusev2270
@ivanrusev2270 Жыл бұрын
@@micromaster4405 Есть примеры.Но я их не прописывал.По крайне мере в AVR .Ну хоорошо а прерывание по таймеру и ДМА по таймеру совместимы?
@micromaster4405
@micromaster4405 Жыл бұрын
@@ivanrusev2270 думаю да, так как по идее дма и прерывания разные блоки, и коллизий быть не должно
@statstopfinish
@statstopfinish 3 жыл бұрын
Все хорош, работает, но какого фига он считает по два значения за один щелчок энкодера . Ведь режим энкодера стоит TI1
@olegp.3012
@olegp.3012 2 жыл бұрын
Так и должно быть, значение счетчика изменяется при любом изменении сигнала на ножке мк, посмотрите рисунки в referens manual. Обрабатывайте значение счетчика програмно.
@ИванВасильев-т4ш
@ИванВасильев-т4ш Жыл бұрын
@@olegp.3012 А в ролике видно, шо переменная изменяется на один, как- так-то?
@olegp.3012
@olegp.3012 Жыл бұрын
@@ИванВасильев-т4ш за один "щелчек" сигнал на ножке мк меняется дважды - с высокого на низкий и опять с низкого на высокий. Оба эти события изменяют регистр CNT счетчика в одну сторону. Никто не запрещает зафиксировать промежуточное значение счетчика для красивого видео. Если вести счет по двум ножкам, счетчик будет изменяться на 4 единицы.
@ИванВасильев-т4ш
@ИванВасильев-т4ш Жыл бұрын
@@olegp.3012 Тобиш чтобы переменная менялась на один, надо TIM->CNT делить на 4 (при счете с двух выходов), окай, а в ролике нет этого и переменная меняется на один, как так?
@olegp.3012
@olegp.3012 Жыл бұрын
@@ИванВасильев-т4ш думаю, автор ролика крутит энкодер плавно и ловит промежуточные значения счетчика между щелчками. Весь код есть в видео, вы уже повторили его в железе? На сколько изменяется значение?
@Argonec
@Argonec 3 жыл бұрын
Если не оскорбит , подскажите пожалуйста как изменить " направление вращения " энкодера при аппаратной реализации на HAL . Спасибо . P.S. Искал , гуглил , не получилось .
@cxemkacom3623
@cxemkacom3623 3 жыл бұрын
поменять местами выводы DT и CLK физически
@bogdanzayatsastronomyandna4722
@bogdanzayatsastronomyandna4722 3 жыл бұрын
@@cxemkacom3623 а програмно в мк?
@cxemkacom3623
@cxemkacom3623 3 жыл бұрын
@@bogdanzayatsastronomyandna4722 только средствами мк походу нельзя: The count direction correspond to the rotation direction of the connected sensor. Можно попробовать в прерывании свою переменную увеличивать/уменьшать проверкой в регистре TIM3->CR1 бита направления DIR. Depending on the sequence the counter counts up or down, the DIR bit in the TIMx_CR1 register is modified by hardware accordingly. The DIR bit is calculated at each transition on any input (TI1 or TI2), whatever the counter is counting on TI1 only, TI2 only or both TI1 and TI2.
@masterkit9517
@masterkit9517 3 жыл бұрын
@@bogdanzayatsastronomyandna4722 А если там поставить ! знак инверсии?
@olegp.3012
@olegp.3012 2 жыл бұрын
Направление вращения програмно меняется изменением Polarity c Rising Edge на Falling Edge в CubeMX. Polarity это немного не то, что автор озвучил. Сам же счетчик будет считать любое изменение сигнала на ножке мк, т.е. за один щелчек CNT будет увеличиваться на 2.
Как мы играем в игры 😂
00:20
МЯТНАЯ ФАНТА
Рет қаралды 3,1 МЛН
АЗАРТНИК 4 |СЕЗОН 3 Серия
30:50
Inter Production
Рет қаралды 1 МЛН
STM32Cube encoder  STM32F407 discovery (СТМ32 Энкодер)
19:23
УНИЧТОЖАЕМ КОРОБКУ В ЖЕСТКОМ ТЕСТЕ JAECOO J8.
42:33
Изучаю STM32!
20:26
Лёша Кластер
Рет қаралды 193 М.
GPIO STM32 Схемотехника портов ввода-вывода
13:06
STM32. CMSIS #0. Основные команды
11:22
NR.electronics
Рет қаралды 21 М.