Klávesnice (a myš)

Uživatelský avatar
fulda
Příspěvky: 1484
Registrován: 04 led 2016, 16:18

Klávesnice (a myš)

Příspěvek od fulda »

Ahoj,

v dávné minulosti se používaly PS/2 klávesnice a myši k různým MCU (třeba k Arduinu). Připojení bylo poměrně jednoduché a člověk s malým úsilím dostal celkem dobrou možnost používat spoustu kláves.

Dnes máme USB/Bluetooth klávesnice, které jsou mnohdy ještě atraktivnější, ale implementovat alespoň část USB stacku je poměrně komplikované a neumím si to moc dobře představit na primitivních osmibitových procesorech, dokonce si nejsem jistej, jestli nějaký z primitivních operačních systémů typu RtOS, Zephir, nebo podobné jsou toho schopné. A přitom klávesnice a myš jsou poměrně primitivní, ale bohužel USB stack připouští příliš mnoho variant.

Nepřehlédl jsem nějaké "jednoduché udělátko", které by mi umožnilo připojení USB klávesnice a posílání dat do mého MCU?

Díky
Za pravopisné chyby v této zprávě může moje učitelka češtiny.
Uživatelský avatar
Dex
Administrátor
Příspěvky: 1604
Registrován: 16 úno 2013, 13:26

Re: Klávesnice (a myš)

Příspěvek od Dex »

Pokud vím, tak RPi Pico má USB OTG a USB klávesnice/myš by měla šlapat - poslat si to pak jakkoliv dál by neměl být problém a nákladově by jsi to snad mohl zkousnout ;)
"all your robots are belong to us"
robodoupe.cz
Uživatelský avatar
fulda
Příspěvky: 1484
Registrován: 04 led 2016, 16:18

Re: Klávesnice (a myš)

Příspěvek od fulda »

Bezva, takže použiju 32bit počítač, na kterém spustím vícejádrový 32bit operační systém jako redukci ke klávesnici. Kterou v roce 1981 obsluhoval 8251 s kmitočtem menším, než 1MHz a považovalo se to za plýtvání.
Mno, asi se nad sebou zamyslím.
Za pravopisné chyby v této zprávě může moje učitelka češtiny.
HonzaD
Příspěvky: 39
Registrován: 17 bře 2020, 11:39

Re: Klávesnice (a myš)

Příspěvek od HonzaD »

Na druhou stranu předpokládám, že celé RPi Pico má menší spotřebu a zabírá menší plochu křemíku než 8251, takže v jistém smyslu bylo 8251 skutečně plýtváním...
Uživatelský avatar
Dex
Administrátor
Příspěvky: 1604
Registrován: 16 úno 2013, 13:26

Re: Klávesnice (a myš)

Příspěvek od Dex »

Co to bylo za počítač, co měl stejný procesor v sobě jako v mechanice na diskety? Nějak si nemůžu vzpomenout ;) Aneb kdo chce, hledá způsob a kdo nechce... však to znáte :D
"all your robots are belong to us"
robodoupe.cz
Uživatelský avatar
fulda
Příspěvky: 1484
Registrován: 04 led 2016, 16:18

Re: Klávesnice (a myš)

Příspěvek od fulda »

Dex píše: 06 kvě 2025, 21:14 Co to bylo za počítač, co měl stejný procesor v sobě jako v mechanice na diskety? Nějak si nemůžu vzpomenout ;) Aneb kdo chce, hledá způsob a kdo nechce... však to znáte :D
Například Comodore 64. Ale tam byla použitá v disketové jednotce verze se starší specifikací. Tuším 6802 v disketové jednotce a 6810 jako hlavní procesor.

Další podobný stav dostaneme, když použijeme k osmibitovému arduinu jako modem například ESP01 (s defaultním firmware a ovládáním AT příkazama). Pak mám taky 16MHz 8bit main a 80MHz 32bit modem.
Za pravopisné chyby v této zprávě může moje učitelka češtiny.
Uživatelský avatar
Dex
Administrátor
Příspěvky: 1604
Registrován: 16 úno 2013, 13:26

Re: Klávesnice (a myš)

Příspěvek od Dex »

Vidíš, na ESP jsem úplně zapomněl - ber to tak, že je to v podstatě normální situace :lol:
"all your robots are belong to us"
robodoupe.cz
nostalcomp
Příspěvky: 35
Registrován: 24 říj 2023, 18:45

Re: Klávesnice (a myš)

Příspěvek od nostalcomp »

Pokud je mi známo, tak většina klasických USB klávesnic stále pracuje s PS/2 protokolem a jejich připojení k MCU je tak jednoduché až triviální. Zde namátkou pár příkladů připojení USB klávesnice (s PS/2 protokolem) k Arduinu:
https://www.hackster.io/michalin70/conn ... ino-50c077
https://www.instructables.com/Connect-A ... -Keyboard/
https://forum.arduino.cc/t/can-a-usb-ke ... no/1098786

Další možností je použití USB Host Shieldu. Připojení USB myši pomocí USB Host Shield pro Arduino UNO:
https://www.instructables.com/Connect-a ... r-Arduino/

Kdysi jsem běžně používal USB to PS/2 adaptéry k připojování USB klávesnic a myší do PS/2 konektorů PC. Fialový a zelený :) Fungovalo to bezvadně a pochybuju, že by v tom byly nějaké 32-bitové MCU. Minimálně ten klávesnicový byl jen pasivní propojení pinů a nikdy jsem nenarazil na USB klávesnici, která by s tím nefungovala. Ještě bych je měl někde mít. Vypadalo to nějak takhle:
https://www.startech.com/en-us/cables/gc46fmkey

Ale to, že "pouhá" periferie může mít srovnatelný a často i vyšší výpočetní výkon, než hlavní CPU, je už dávno běžné. Na posledním doupěti jsem měl na ukázku EPSON HX-20 z roku 1982. Má dva identické CPU/MCU HD6301. Jeden pracuje jako hlavní CPU. Zpracovává program, pracuje s pamětí a počítá. Druhý pracuje jako MCU a obstarává komunikaci s klávesnicí, displejem, kazetofonem, tiskárnou...
Uživatelský avatar
fulda
Příspěvky: 1484
Registrován: 04 led 2016, 16:18

Re: Klávesnice (a myš)

Příspěvek od fulda »

To platí spíš pro drátové klávesnice, ale pro ty "atraktivnější" klávesnice bych se trochu bál. Mluvím třeba o tomhle:
https://rpishop.cz/602771/rii-bezdratov ... pad-rk707/
https://vi.aliexpress.com/item/1005006885560697.html
https://vi.aliexpress.com/item/1005007060280149.html
Za pravopisné chyby v této zprávě může moje učitelka češtiny.
nostalcomp
Příspěvky: 35
Registrován: 24 říj 2023, 18:45

Re: Klávesnice (a myš)

Příspěvek od nostalcomp »

Tak jestliže to má přijímač s USB výstupem, mohl by to řešit ten USB Shield. Třeba tady je jeho menší a bastlířsky přívětivější varianta:
https://www.pjrc.com/teensy/td_libs_USBHostShield.html

A nebo rovnou použít obvod MAX3421 (Microprocessor-Independent USB Solution):
https://www.analog.com/media/en/technic ... X3421E.pdf

To by mohlo být to "udělátko" poptávané v prvním příspěvku. Ale kde k takové klávesnici, nebo jinému podobnému zařízení, vezmeš komunikační protokol, pokud výrobci používají něco svého?

Možná by stálo za to zkusit tu wireless klavku připojit přes ten pasivní USB -> PS/2 k PC, jestli se to "chytne" :) Škoda, že nic takového nemám. Zkusil bych to hned.
Odpovědět