Подключение кнопок к микроконтроллеру STM32: устранение дребезга, автоповтор, буферизованный ввод

Поділитися
Вставка
  • Опубліковано 27 тра 2022
  • В этом видео расскажу о том, как грамотно подключить кнопки к микроконтроллеру STM32. Привожу свой модуль работы с кнопками. Возможности модуля:
    - Поддержка до 32 кнопок, с учетом того, что на 1 кнопку выделяется 1 вывод микроконтроллера, настроенный на вход с подтяжкой по питанию.
    - Доступна настройка фильтра устранения дребезга.
    - Доступен буфер состояний кнопок с настраиваемой глубиной.
    - Доступна настройка периодов задержки до первого автоповтора нажатия кнопок и последующих автоповторов.
    - Доступно добавление кнопок для опроса посредством вызова соответствующей функции.
    - Доступна установка статусов кнопки: "активна" - участвует в опросе, "пассивна" - не участвует в опросе.
    - Доступен опрос статуса кнопки (активна либо пассивна).
    Выводы микроконтроллера, к которым подключаются кнопки должны быть настроены, как входы с подтяжкой по питанию. Как вариант, с использованием внутренней подтяжки микроконтроллера pull-up, либо внешней через подтягивающий резистор, например, номиналом 10 кОм.
    При нажатии кнопки должна осуществляется притяжка входа микроконтроллера к "земле" (GND).
    Для работы модуля требуется 1 таймер с настроенным прерыванием по обновлению.
    Путем несложной модификации модуль возможно использовать на любых микроконтроллерах, отвечающих минимальным требованиям.
    Скачать проект из видео можно по ссылке:
    github.com/vadrov/stm32-butto...
    Поддержать канал:
    donate.qiwi.com/payin/VadRov
    yoomoney.ru/to/4100117522443917
    Покупал на Алиэкспресс:
    программатор ST-Link alii.pub/6fdujg
    плата разработки stm32f401ccu6 alii.pub/6fdumy
    плата разработки stm32f411ceu6 alii.pub/6fduop
    аудио-ЦАП pcm5102a alii.pub/6fdurf
    макетная плата alii.pub/6fduuq
    провода для макетной платы alii.pub/6fduwo
    3.2" дисплей с тачскрином ILI9341 spi alii.pub/6fdvcf
    1.3" дисплей ST7789 spi alii.pub/6fdvks
    модуль микро SD карты alii.pub/6fdvoh
    #stm32
    #buttons
    #программирование

КОМЕНТАРІ • 17

  • @VadRov
    @VadRov  2 роки тому

    Проект из видео на гитхабе:

  • @user-hh1vp6vt8w
    @user-hh1vp6vt8w 2 роки тому +2

    Крепко вы прошлись по демонстрации возможностей работы с этим мк...! ;)

  • @kokotmkokot4926
    @kokotmkokot4926 Рік тому

    Спасибо, очень достойный алгоритм! Позволю себе пару предложений к усовершенствованию. Иногда на одну физическую кнопку целесообразно вешать две функции. Одна срабатывает при коротком одиночном нажатии по отжатию кнопки (как пример кнопки мышки). Вторая функция - при длительном удержании кнопки. Этот алгоритм позволяет упростить конечное устройство.

  • @user-hk5vg9jj9g

    Класс виде подписка и лайкосик

  • @avr_stm_pro2955

    Спасибо 👍👍👍👍

  • @alexshu1609
    @alexshu1609 Рік тому

    Не давно обнаружил в телике кнопку для управления, до этого только пультом пользовались не было необходимости . Карл 1 кнопка на весь телик. Кнопка которая не фига не джойстик, хоть в другом телике джойстик под кнопку замаскирован, но джойстик, который по факту 4-5 кнопок Переключение каналов, звук больше меньше, меню и настройка осуществляется 1короткое ВВЕРХ 2коротких ВНИЗ 1длинный ВЫБОР. При необходимости можно еще всякий функционал навешать разных комбинаций нажатий.

  • @allallall2321
    @allallall2321 2 роки тому +1

    Stm32f401 прога не ругается на не подлиность клонов с Алишки и как у Вас все функции заявленные по даташнику работают?

  • @Violancergta
    @Violancergta Рік тому

    Что делать с шумами на пине во время спада или нарастания импульса ?

  • @user-rf1yx4kp4r

    Только не 5 вольт ,а до 3.3в.