Программный антидребезг (Software Debounce)
Контакты механических переключателей и энкодеров могут «дребезжать» при изменении положения; это означает, что напряжение может несколько раз колебаться между состояниями в течение переходного периода. Если переход не является четким, в вашей системе могут устанавливаться ошибочные состояния. Этот блок устраняет дребезг (убирает пульсации переходного процесса) из сигнала, ожидая заданное количество времени между периодами дискретизации. Это обеспечивает чистый переходный сигнал на выходе.
Обычно этот блок используется для устранения дребезга входного сигнала GPIO.
Чтобы использовать этот блок, перетащите его на схему и подключите вход к сигналу GPIO.
Регулятор времени антидребезга задает постоянную времени для устройства подавления дребезга в сэмплах (samples); значение по умолчанию — 20. Для достижения наилучших результатов подбирайте значение методом проб и ошибок для конкретного оборудования, подключенного к входу GPIO.
Software Debounce в SigmaStudio: настройка и параметры
Software Debounce — это программный блок антидребезга в среде разработки SigmaStudio, предназначенный для процессоров семейства ADAU (SigmaDSP) от Analog Devices. Он решает распространенную проблему «дребезга» контактов механических переключателей и энкодеров, когда напряжение при переключении колеблется между логическими уровнями в течение переходного периода. Без обработки такие колебания могут привести к ошибочным состояниям в цифровой системе управления. Принцип работы блока основан на временной фильтрации входного сигнала. Когда на входе GPIO происходит изменение состояния, Software Debounce не пропускает его на выход мгновенно, а ожидает заданное количество периодов дискретизации (сэмплов). Если сигнал остается стабильным в течение этого времени, переход считается завершенным, и на выходе формируется чистый фронт. Таким образом, блок эффективно подавляет пульсации переходного процесса, обеспечивая надежное распознавание нажатий клавиш или поворотов энкодера. Для использования в проекте SigmaStudio перетащите блок Software Debounce на рабочую схему и подключите его вход к источнику сигнала GPIO. Основной параметр настройки — регулятор времени антидребезга (Debounce Time), который задает постоянную времени устройства в сэмплах. Значение по умолчанию установлено на 20, что подходит для большинства стандартных механических переключателей. Однако для конкретного оборудования это значение рекомендуется подбирать методом проб и ошибок, наблюдая за поведением сигнала на выходе блока.