Самодельная MIDI система для баяна или гармони

Больше
11 мес. 4 дн. назад #43230 от Иван Подольский
Иван Подольский ответил в теме Самодельная MIDI система для баяна или гармони
Поздравьте меня, правая клавиатура звучит! Задержек не зафиксировано, но есть незначительные артефакты дребезга. Есть хорошие идеи по избавлению от дребезга с учетом того, что кнопки опрашиваются в цикле?

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
11 мес. 4 дн. назад #43234 от Александр
Александр ответил в теме Самодельная MIDI система для баяна или гармони
Иван, нужно сделать массив с "таймерами" на каждый клапан, 8 битных переменных будет достаточно.
Идея такая:
При изменении состояния кнопки из отжато в нажато записывать в таймер для этой кнопки какое-то фиксированное значение, например 5.
Если состояние кнопки осталось нажатым при следующем опросе - уменьшить таймер на 1.
Если при каком-то опросе кнопка отжалась (дребезг), то ничего не делать - таймер выставится снова в 5 при следующем нажатии.
Если удалось досчитать до 0, значит кнопка достаточно долго нажата и можно выставить 1 в состояние кнопки и дальше обрабатывать как нажатую.

Минус этого метода - сначала нужно будет подождать серию нажатий дребезга, потом выждать таймер, а только потом кнопка сработает.

Если добавить таймер отжатия и сбрасывать нажатие только после его истечения, то придётся ждать только время таймера 5 тактов, не затормаживая звучание дребезгом.

В моей прошивке bayan_mega (на сайте openmidi.ru) всё это уже сделано. Правда состояние кнопки описано не одним битом, а несколькими. Там отслеживаются несколько событий:
На этом цикле нажата (1 - нажата 0 - нет),
На этом цикле отпущена (1 - отпущена 0 - нет),
Состояние текущее (1 - нажата или 0 - отпущена),
Состояние предыдущее (аналогично).
строки 432 - 460 это антидребезг.
Всё это сделано для чёткого отслеживания нажатий, антидребезга и удобства работы с меню.
Антидребезг настраивается для всех кнопок одновременно в переменной global_debounce в структуре control.
Но так же он присутствует и в каждой кнопке. Если задан не нулевой для кнопки, то игнорируется глобальный.
Спасибо сказали: Иван Подольский

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
11 мес. 3 дн. назад - 11 мес. 3 дн. назад #43235 от Иван Подольский
Иван Подольский ответил в теме Самодельная MIDI система для баяна или гармони
Вот я примерно так и сделал, только пришлось записывать кокнкретно время нажатия и считать по миллисекундам. Хотя герконы почти не дребезжат, больше пришлось их по расстоянию выставлять.

Вот еще какая странная штука. Мидиплюс прекрасно играет в наушниках, но когда подключаю его к компьютерной колонке, перед каждой нотой раздается треск (такой же, как при втыкании джека в разъем). Такое ощущение, что наводка какая-то от модуля, но почему в наушниках ее нет? А рабочая колонка у меня пока одна.
Последнее редактирование: 11 мес. 3 дн. назад от Иван Подольский.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
11 мес. 3 дн. назад #43237 от Александр
Александр ответил в теме Самодельная MIDI система для баяна или гармони
Иван, проблема с активными колонками чаще всего происходит из-за питания и проводов. Возможные проблемы:
- Гармонь или мидиплюс и колонка гальванически связаны по "земле" питания. Общее заземление, общий источник питания. Лучше всего запитать гармонь от аккумулятора, а мидиплюс уже с аккумулятором. Колонку можно оставить подключенной к блоку питания.
- плохой контакт земельного провода от колонки к мидиплюс, при этом звук есть и землёй является провод от питания, он длинный и ловит на себя помехи от различных электроприборов.
- слишком большая громкость, усилитель перегружается (вряд ли, но тоже как вариант)

Я себе купил маленькие колонки с питанием от USB. Аудио джек и USB вставляем в мидиплюс, всё работает прямо от него.

Посмотрите, может и ваши колонки тоже от 5В работают, их можно будет от мидиплюс запитать через кусок старого USB провода. Если у колонок вход питания 12В, то внутри обычно стоит преобразователь 12В-5В. К его выходу нужно подать 5В от USB провода.
Спасибо сказали: Иван Подольский

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
11 мес. 2 дн. назад #43238 от Иван Подольский
Иван Подольский ответил в теме Самодельная MIDI система для баяна или гармони
У меня мидиплюс питается от аккумулятора, а ардуина в гармошке и колонка - от компьютера (то есть, у них общая земля, а у мидиплюса - своя). Спасибо за советы, будем экспериментировать.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
11 мес. 1 день назад - 11 мес. 1 день назад #43247 от Дмитрий
Дмитрий ответил в теме Самодельная MIDI система для баяна или гармони
Всех с о всеми праздниками!
приехал ко мне Кетрон SD2 , не могу от баяна оторваться, настолько натурально и красочно звучит! .()
а теперь о грустном.
настроить и сохранить в слепую из пяти банков инструментов , это целый квест ,(настраивал с ноутбуком , хотя бы вижу какой банк включен ).
присматриваюсь вот к этим компонентам ,что скажите?
ВНИМАНИЕ: Спойлер! [ Нажмите, чтобы развернуть ]

дисплеи будут включаться только в режиме настройки , переход в режим настройки длительное удержание одной из кнопок,
действие кнопок при этом изменятся , а светодиоды кроме индикации какой регистр включен , будут кратковременно
показывать заряд батареи ,
жду критики
Последнее редактирование: 11 мес. 1 день назад от Дмитрий.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Время создания страницы: 0.781 секунд
Работает на Kunena форум