Просмотр полной версии : Софт контроллер USB-LS HID (мышь,клава,джойстик) на ESP32 4 порта
sdima1357
03.03.2021, 15:06
Собственно код:
https://github.com/sdima1357/esp32_usb_soft_host
Прямой контроллер USB HOST ногодрыгом на 4 порта на ESP32 платке без дополнительного железа .4 USB разьема подключены напрямую к ножкам чипа.
Можно подключить 4 мыши например или в любой комбинации 4 мышь,клава,джойстик. Уже работает, но ни с чем не интегрирован. Будет спектрум с мышью, под него и разработан(но не только). Можно прицепить к другим моделям самоделок, как внешний контроллер ввода.
Предложения , вопросы, пожелания? В принципе можно и больше чем 4 , на все свободные ножки, но теряюсь в догадках - зачем
И статья на хабре https://habr.com/ru/post/545364/
А возможно из этого сделать так: с одной стороны два usb для подключения клавиатуры и мыши а с другой выход на клавиатуру и мышь но уже PS/2 или чтоб можно было в usb тыкнуть свисток от комплекта клава+мышь, а на выходе всё те же PS/2. В таком раскладе можно будет апгрейдить уже оснащённые спектрумы разъёмами ps/2 например Evolution и ему подобные.
- - - Добавлено - - -
Или есть ещё вариант: на входе три/два устройства ввода клавиатура+мышь+джойстик на выходе подключение к пинам физической клавиатуры и кемпстон джойстика и ps/2 мыши.
sdima1357
03.03.2021, 17:44
Думаю что можно. PS/2 - простой протокол. Но PS/2 - 5 -вольтовый , a esp32 - 3.3V. Можно переписать на STM32F4 у которого есть железный USB HOST но только один, добавить к нему парочку ногодрыжных USB контроллера и вуаля. У STM есть 5 вольт толерантные ножки. Второй вопрос - что делать с джойстиками, их как то нужно представлять для PS/2 - как мышей или как?
У меня есть код такого же контроллера под STM, но недописан(stm32f411 медленнее ESP32 вдвое).
а выходе подключение к пинам физической клавиатуры
Ножек нужно много. Тут лучше STM32F407/
- - - Добавлено - - -
Джойстик надо по usb принять и расшифровать направления и выстрел, чтоб замкнуть соответствующий пин на спектруме на землю.
Клавиатура+джойстик 20 пинов (в которых есть сигнал сброса + земля).
sdima1357
03.03.2021, 18:38
Клавиатура+джойстик 20 пинов
У lolin32(на котором я отлаживался) - всего 20 IO пинов :( ... Минус два на клаву , два на мышь и два (или 4 ) на джойстик(и)
А у меня тут вопрос возник - вот эти STM32, ESP32 и т.д. сами по себе штук 10 спектрумов могут сэмулировать, а вы на них клаву с мышкой просто хотите повешать. может есть способы более простые и дешёвые, а главное, без таких суперпроцов которые 10 спектурмов за пояс заткнут?
sdima1357
03.03.2021, 20:04
может есть способы более простые и дешёвые
lolin32(на котором я отлаживался) - $2.79. Это дешевле чем ардуино и даже дешевле USB HOST контроллера.Он настолько дешевый,что не смысла защищать ножки, проще выбросить. И да - на нем можно запустить пяток эмуляторов спектрума и парочку NES одновременно. Но не очень аккуратных...
Михаил Каа
08.03.2021, 17:16
Получилось подключить к реальному Спектруму?
З.Ы. Если конечно такие планы были...
sdima1357
08.03.2021, 21:53
Получилось подключить к реальному Спектруму?
З.Ы. Если конечно такие планы были...
У меня нет реального Спектрума, подарил кому-то в 1991. А эмылятор собственноручный есть. На ESP32 можно делать композитный сигнал в цвете. Склею все вместе - выложу.
sdima1357
17.03.2021, 18:18
Добавил stm32f030f4p6 usb host на 2 девицы одновременно: https://github.com/sdima1357/stm32f030F4P6_USB_HOST
У этого чипа c 20 ногами за $0.48 есть 5 вольт толерантные ножки (A9,A10,A13 ,A14). Можно писать конвертор к PS/2 без переходников(даже на два сразу).
Для ленивых как я боард: https://www.aliexpress.com/premium/stm32f030f4p6.html
Powered by vBulletin® Version 4.2.5 Copyright © 2026 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot