STM32 в качестве клавиатуры
Я хотел бы использовать STM32F105xx для создания собственной компьютерной клавиатуры. Этот MCU поддерживает USB OTG (FS). Итак, у меня есть 2 вопроса:
- Можно ли прошить микроконтроллер через usb или мне нужен внешний программист?
- Как заставить компьютер распознавать stm32 как клавиатуру?
@Amparo, 👍0
Обсуждение1 ответ
Лучший ответ:
Серия STM32F105xx еще не поддерживается ни ядром Arduino (ядром STM32, ни ядро maple), а не mbed-os .
Чип по-прежнему можно использовать с платформой STM32HAL, предоставленной STM32 (например, через STM32CubeMX). Там вы можете выбрать свой чип и создать шаблон проекта. Программа позволяет легко настроить чип для роли "USB-устройство" и класса HID (Human-Interface-Device).
Обратите внимание, что с аппаратной стороны вы должны снабдить микросхему внешним кварцевым генератором (обычно 8 МГц), чтобы HSE+PLL могла генерировать тактовую частоту USB 48 МГц. Это не будет работать на внутренних часах HSI из-за низкой точности. Активируйте HSE Crystal в разделе RCC CubeMX и перейдите на вкладку настройки часов.
С этого момента вам нужно будет прочитать документация STM32F1 HAL, чтобы выяснить, как отправлять нажатия клавиш. Также есть внешние ресурсы здесь и здесь.
Возможно программирование платы через USB. Просто установите контакты BOOT0 и BOOT1 соответственно и перезагрузите плату, чтобы войти в режим загрузчика. Затем он появится как USB-устройство, которое можно прошить с помощью данных инструментов. См., например, здесь. Более прямой способ — купить дешевый STLinkv2 и запрограммировать его через контакты SWD (SWDIO + SWCLK), что также позволяет выполнять отладку, чего нельзя сделать при перепрошивке через USB.
- Издавать сигналы клавиатуры, не зависящие от региона
- Ввод текста в ESP8266 с помощью USB-клавиатуры
- Как преобразовать USB в PS/2?
- Можно ли создать устройство IP-to-USB HID (клавиатуру) с помощью Arduino?
- Вибрационный геймпад Arduino с силовой обратной связью
- Keyboard.print() пропускает клавиши
- Библиотека джойстиков Arduino не распознается играми (Steam)
- Разбудить компьютер из Uno
https://arduino.stackexchange.com/tour, @Juraj