ΣSigmaStudio English

Это старая версия документа!


Нажатие и удержание

Нажатие и удержание Этот блок может использоваться для таких функций, как кнопка, для обработки входа GPIO с целью создания импульсов в ответ на нажатие или удержание кнопки пользователем.

Типичным применением является регулятор громкости, состоящий из двух кнопок: одной для увеличения и другой для уменьшения.

  1. Перетащите блок в рабочую область.
  2. Щелкните по нему правой кнопкой мыши и выберите алгоритм:
    • push_hold
    • push/hold 2-in 2-out
    • push/hold with two-button mute
  3. Установите параметры в соответствии с вашим приложением:
Удержание (ms)Определяет, как долго сигнал удерживается перед генерацией повторяющихся импульсов.Нажатие и удержание
Повтор (ms)Задает интервал между повторяющимися импульсами. Введите время в миллисекундах в это поле.Нажатие и удержание
Примечание: Для изображения выше справа был выбран алгоритм push_hold. Используйте push/hold 2-in 2-out для обработки двух входов GPIO, например, один для увеличения и один для уменьшения. Push/hold with mute работает аналогично, но с дополнительной функцией: если нажаты обе кнопки, генерируется импульс mute (нижний выходной пин). Для отключения mute можно нажать любую из кнопок.

Push and Hold в SigmaStudio: настройка и параметры

Push and Hold — это блок обработки сигналов GPIO в среде SigmaStudio для цифровых сигнальных процессоров ADAU от Analog Devices. Он предназначен для преобразования длительного нажатия кнопки в серию импульсов, что позволяет реализовать функции, требующие повторяющегося действия, например, плавное изменение громкости. Принцип работы блока основан на двух ключевых параметрах, задаваемых в миллисекундах. Параметр «Удержание» определяет, как долго сигнал должен удерживаться после нажатия, прежде чем начнут генерироваться повторяющиеся импульсы. Параметр «Повтор» задает интервал между этими импульсами. Таким образом, короткое нажатие создает один импульс, а удержание кнопки — непрерывную последовательность с заданной частотой. Для настройки в проекте SigmaStudio перетащите блок в рабочую область и выберите один из алгоритмов. Алгоритм push_hold подходит для одиночного входа GPIO. Для реализации двухкнопочного регулятора громкости используйте вариант push/hold 2-in 2-out, где один вход отвечает за увеличение, а другой — за уменьшение уровня. Алгоритм push/hold with two-button mute добавляет дополнительную логику: при одновременном нажатии обеих кнопок на нижнем выходном пине формируется импульс mute, а повторное нажатие любой кнопки снимает режим отключения звука. При проектировании сигнальной цепочки учитывайте, что блок работает с логическими уровнями GPIO и не требует настройки частоты дискретизации.