20. Эмуляция клавиатуры | Arduino | НЕ Midi

Поділитися
Вставка
  • Опубліковано 27 вер 2024
  • Эмулировать нажатие клавиш на клавиатуре с помощью кнопок можно благодаря стандартной бибилиотеки Keyboard для Arduino.
    Это может пригодится, если по какой-то причине вам не удается использовать миди сс, или ваш сиквенсер не воспринимает как-либо миди сс команды. Благодя эмуляции клавиатурных клавиш можно задействовать какие-либо экшены в своей DAW
    Файлы: yadi.sk/d/PUv_...
    Arduino Keyboard Library:
    www.arduino.cc...

КОМЕНТАРІ • 74

  • @ЭдуардПетрик-ь9ы
    @ЭдуардПетрик-ь9ы 4 роки тому +5

    Полезное видео, давненько ничего не было. Спасибо!

  • @angelovintelservis
    @angelovintelservis 3 роки тому +1

    Очередное - Спасибо - Хороший ролик - для начинающего - MIDI-ардуинщика! С Уважением - Андрей из Казахстана - Алматы! :)

  • @gredelain3683
    @gredelain3683 Рік тому +2

    Отличное пояснение, без каких то сложных физических явлений, резисторов. Всё чётко и понятно, спасибо за ролик)

  • @JinLav
    @JinLav 4 місяці тому

    Я хочу научится создавать микросхемы для клавиатур. Что бы в итоге получилась полноценная клавиатура для компьютера

  • @МаксимЖуравлев-л2ж
    @МаксимЖуравлев-л2ж 2 роки тому +1

    Костя, спасибо огромное! Благодаря в основном твоим видео постепенно разбираюсь в теме мидиконтроллеров. Может тебе или тому кто прочтет будет интересно подумать вот над чем: если в музыкальном приложении кнопки переключения пресетов (влево вправо стрелки) не мапятся, но реагируют на KEY_LEFT(RIGHT)_ARROW, то как совместить функциии миди контроллера и клавиатуры на одной плате. У меня teency 3.2, вчера загрузил скетч из этого видео, все норм. Но это keyboard. Не миди))). Остальным регуляторам midi cc не назначить.

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

      ты можешь без труда соеденить скетч из этого видео и любой код для миди команд из бибилотеки Control Surface

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

      на одну и ту же кнопку можешь назначить как команды для клавиатуры, так и команды для миди

    • @МаксимЖуравлев-л2ж
      @МаксимЖуравлев-л2ж 2 роки тому

      Спасибо! Но наверное я чего то не допонимаю, т.к. для скетча в видео нужно устанавливать тип usb порта "keyboard", а для миди соответственно MIDI. Оба кода в одном скетче не выдают ошибок только при установке типа usb "All of the above". Но тогда звук пропадает и в списке устройств 16 портов виднеется))).

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

      @@МаксимЖуравлев-л2ж у usb портов не т такого типа "keyboard". Я понятия не имею что такое all of the above, и где это у тебя находится

  • @MrRask99
    @MrRask99 4 роки тому +3

    Дорогой друг, нет ли у тебя желания сделать видео о мультиплексоре mcp23017 в частности как к нему прикрутить 8 энкодеров в Control Surface, как я понял это единственный вариант увеличить количество энкодеров.

    • @kentforthable
      @kentforthable  4 роки тому +2

      я ещё не встречал ни одной бибилотеки которая бы имела возможность подключения нескольких энкодеров к мультиплекорам.Control Surface пока тоже не имеет такой поддержки. Потенциометры и кнопки можно, а вот энкодеры нельзя

    • @MrRask99
      @MrRask99 4 роки тому +2

      @@kentforthable как бы да я нашёл только это #include
      но думаю что проще взять несколько мега 2560 одна будет мастер остальные мультиплексоры в кавычках, по spi или i2c.

  • @masterkit9517
    @masterkit9517 4 роки тому +2

    получается не хуже джойстика, аппаратного, если аналогично делать на джойстике понадобится Xpadder программа, жаль что на stm32 всё торгуют только на биржах предложениями сделать blink, там совсем оскотинились юзеры, снега зимой не попросишь, ардуинщики хоть продвигают платформу, дружнее намного, хоть также хватает на форумах тех, кто никогда не поможет, а узнав о проекте, быстренько пойдут продавать подобный. Вроде люди интернет создавали переехать из каменного века в цивилизацию, но чем дальше, тем меньше людьми остаются, как голодная саранча не помогут ничем никогда, только себе, себе, себе. Спасибо вам за канал, где хоть как капля воздуха информация. Остальные не рады даже наверное такой информации, им лишь бы продать подороже и лохов побольше найти, диванным программистам-продаванам. Шкурнее и шкурнее многие ардуино stm32 манимейкеры диванные. Чудо, что вообще ещё есть каналы, где есть нормальные люди, которые сделают урок. Одно шкурьё кругом.

    • @kentforthable
      @kentforthable  4 роки тому +3

      нормальные програмисты всегда топят за open source, а те, кто хочет на всё нажиться - мудаки. Я за то,чтобы полезные знания были всегда бесплатными

    • @masterkit9517
      @masterkit9517 4 роки тому +2

      @@kentforthable Спасибо большое вам за то что плывёте против течения в водовороте денежном.

  • @Artemon-yl5ze
    @Artemon-yl5ze 2 роки тому

    Input pullup это подтяжка резистора с земли на выбранную ногу. При нажатии кнопки цепь замыкается и на пине появляется высокий сигнал, если не подтянуть этот пин к земле резистором или не использовать программную подтяжку, этот высокий сигнал так и останется там болтаться, даже после отжатия кнопки, давая некорректные данные.

    • @zvukache
      @zvukache 10 місяців тому

      К сожалению, вы всё перепутали. Конфигурация пина в режиме INPUT_PULLUP подключает к пину подтягивающий резистор к питанию, не к земле (к стати резистор, пдключенный к земле называется СТЯГИВАЮЩИМ). И поэтому пин и подключается через кнопку к земле, а в программе нажатие кнопки определяется уровнем LOW, т.е пин подключен к земле, значит кнопка нажата.

  • @samnivvas1873
    @samnivvas1873 3 роки тому +1

    а как можно сделать доп клавиши, которых нет на клаве

    • @kentforthable
      @kentforthable  3 роки тому +1

      какие например?

    • @tilde6715
      @tilde6715 3 роки тому

      @@kentforthable Мне нужно нумпад сделать. Хочу от старой ps2 его отпилить и к ардуино припаять

    • @tilde6715
      @tilde6715 3 роки тому

      @@kentforthable Написать что то точно не смогу. Буду искать готовое что то

  • @SmilerSP
    @SmilerSP 3 роки тому +2

    На Нано такое можно ли организовать?

    • @kentforthable
      @kentforthable  3 роки тому

      плата не имеет значение

    • @SmilerSP
      @SmilerSP 3 роки тому +2

      @@kentforthable Но вы же говорите в ролике, что если у вас не леонардо или про мини, надо что то там как то прошивать... Не поясните?

    • @kentforthable
      @kentforthable  3 роки тому

      @@SmilerSP прошивать я имю в виду нужно превращать утсройство ардуино в устройство миди контроллер, как на моем первом ролике про HIDUINO, я не уверен будет ли работать клавиатура если в скетче будут миди команды, и ардуино будет прошито как миди устройство. Если же кроме кода для клавиатуры в скечте друго ничего нет, то можно спокойно заливать скетч в любую плату ардуино

    • @SmilerSP
      @SmilerSP 3 роки тому

      @@kentforthable бррр... Нипанимаю ниче :))) я просто не нашел ни одного ролика на ютубе, чтоб строили эмулятор клавы на нано. Мне надо это для KVM переключателя. Последовательность нажатий "скролл лок, скролл лок, 1" и "скролл лок, скроллок, 2". Для переключения между компами))))

    • @SmilerSP
      @SmilerSP 3 роки тому

      Все видео что видел, строят на про мини, где стоит другой чип

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

    Спасибо за видео. Не могу найти пример передачи нажатия кнопок через модули bluetooth по следующей схеме: Кнопка->Arduino->Bluetooth-модульHC-05->Bluetooth-модульHC-06->Arduino->ПК. Сложно ли переделать код из вашего примера для беспроводной передачи нажатий?

    • @kentforthable
      @kentforthable  Рік тому +1

      В библиотеке control surface есть пример для отправки миди через Bluetooth, также там тоже должен быть модуль дисианции

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

      @@kentforthable Спасибо. Посмотрю.

  • @СергейНюков
    @СергейНюков 9 місяців тому

    Привет. Можно ли сделать такую симуляцию для клавиш F1-F12 ? И как можно реализовать программно подключение матрицы клавиатурной а не одной кнопки? Спасибо!

    • @kentforthable
      @kentforthable  9 місяців тому

      для любой клавиши можно сделать симуляцию
      wokwi.com/projects/384289931220941825

    • @СергейНюков
      @СергейНюков 9 місяців тому

      Огромное Вам спасибо! )@@kentforthable

  • @zerf4681
    @zerf4681 3 роки тому

    'Клавиатура' не найдена. Убедитесь входит ли скетч в код '#include '?

    Что делать?

    • @kentforthable
      @kentforthable  3 роки тому

      без примера кода не возможно что либо узнать

  • @АлександрЧерный-б8п

    Я уже разобрался там есть код нот ты обьяснил в видео. Теперь проблема со считыванием выводов идет 8 на 8. 8 на колонки 8 на столбцы. Но распиновка идет клавишы 5 потом 8. И опять 5.8. А выводов то 8 на 8. Проблема со скетчем. Именно со считыванием

  • @АлександрЧерный-б8п

    Заводиться все на уно так как под рукой есть

  • @AlexeyRiched
    @AlexeyRiched 3 роки тому

    а как запрограммировать например есть тумблер, и надо чтобы при включении его вверх он срабатывал и при включении вниз повторно срабатывала клавиша

    • @kentforthable
      @kentforthable  3 роки тому +2

      Я пользуюсь библиотекой Control Surface, подойдет пример CCButton , или NoteButon
      github.com/tttapa/Control-Surface

  • @АлександрКомаров-ь8г

    Если в ОС стоит русская раскладка, а с такой клавиатуры отправить английские символы - получится ерунда. Например : Если отправить "Hello world" - выведется "Руддо цщкдв". Как это можно решать? Спасибо за видео

    • @kentforthable
      @kentforthable  3 роки тому

      не подскажу, не пользуюсь кириллицей в коде

  • @Kotyasta
    @Kotyasta 4 роки тому

    Привет!
    Подскажи, пожалуйста, можно ли вместо кнопки использовать пьезоэлемент? И если можно, то как?

    • @Kotyasta
      @Kotyasta 4 роки тому

      Принцип примерно тот же нужен, только вместо кнопки, поезо. Стучишь по пьезо - срабатывает клавиша.

    • @kentforthable
      @kentforthable  4 роки тому

      @@Kotyasta пъезо это аналоговый элемент, кнопка - цифровой, если найдешь способ конвертировать аналоговые значения пъзо в нажатие кнопки on/off Тогда получиться сделать. Могу лишь посоветовать поискать скетчи, где конвертируют аналоговые значения в цифру

  • @АлександрПетров-ж9ч

    Ссылка на яндекс не работает (

  • @rechkintv7247
    @rechkintv7247 4 роки тому

    У меня не работает! Пишет клавиатура не найдена. Плата Arduino Uno. Дизлайк ставить не буду но и лайк не поставлю!

    • @kentforthable
      @kentforthable  4 роки тому

      можете мне на почту написать и прикрепить скрин с ошибками

    • @zerf4681
      @zerf4681 3 роки тому

      ты решил проблему? у меня также

    • @begineras
      @begineras 3 роки тому

      случайно не китайская Uno?

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

      @@kentforthable та же проблема- не видит подключенную библиотеку Keyboard.h чип на входе ch340g

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

      @@Sbor_Pomidorov проблема из за чипа CH340G, есть соответствующий ролик в плейлисте про этот чип, можно попробовать эту библиотеку
      github.com/TheSos/chkey

  • @АлександриМаринаСанти

    Костя, привет, отличное видео. Иногда очень нужно нажать шифт или контрол, и приходилось это делать на клавиатуре. А таким образом можно добавить эти кнопки в свой пульт.

  • @imasignmaker
    @imasignmaker 4 роки тому +3

    Спасибо! Сделаю себе из парочки numpad с фикспрайса горячие клавиши для 3d max и coreldraw

  • @radionintouch
    @radionintouch 3 роки тому +2

    А как добавить несколько кнопок?

  • @АлександрЧерный-б8п

    Теперь завезу на мегу и крутилки добавлю

  • @DimaTrArt
    @DimaTrArt 3 роки тому +2

    искренне спасибо за видео! Как раз разбираюсь с леонардо сейчас, очень помогло)

  • @АлександрЧерный-б8п

    Все тема закрыта все сделал щас первый прототип тестирую я очень доволен. Кому нужно спрашивайте раскажу как сделать бо информации в интернете нет либо она не работает

  • @АлександрЧерный-б8п

    Я запустил клавиатуру от синтезатора комп все читает в фл. Теперь проблема как их в hex записать выходит каша

    • @kentforthable
      @kentforthable  3 роки тому

      зачем записывать в hex?

  • @ПавелКишиори
    @ПавелКишиори 3 роки тому

    Возможно ли таким образом создать механическую клавиатуру?

    • @kentforthable
      @kentforthable  3 роки тому

      Попробуйте, может получится, сам не пробовал

  • @artimoid
    @artimoid 3 роки тому

    Спасибо мужик!

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

    А какой код у кнопки Enter? В списке его нет

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

      www.arduino.cc/reference/en/language/functions/usb/keyboard/keyboardmodifiers/
      www.asciitable.com/
      Так попробуй: Keyboard.press(KEY_ENTER);

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

      @@kentforthable спасибо, но в таблицах интера нет. KEY_ENTER я пробовал, выдает ошибку. В какой то таблице был код 13, но тоже не работает

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

      @@whether1548 как был прописан ascii код из таблицы?

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

      @@whether1548 Покажи код, как ты его использовал

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

      @@whether1548 вот так попробуй
      Keyboard.press(176);