Stránka 1 z 1

Program na kontrolu stisknutí více kláves

Napsal: 24 bře 2014 19:54
od Kim Spotcom
Ahoj, potřeboval bych nějaký program, který mi ukáže, která tlačítka jsou stisknutá. Mám totiž problém, že FLStudio11 někdy odmítne hrát tři tóny . Teoreticky by právě k tomu šla použít právě virt. klávesnice v Channel Settings (ale právě by se hodil jiný program, než ten, ve kterém mám problém) .například klávesy yce, rtp , qwy , vždy když jsou z nějaké skupiny jsou stisknuty 2, třetí nehraje, ani se nezobrazí), ale někdy NENÍ PROBLÉM mít stisknutých 7 kláves najednou.)


Případně který server v recenzích notebooků uvádí, jak funguje u jejich notebooků u klávesnic možnost rozpoznat více kláves?
NEBO JE TO Omezení DEMA?

Re: Program na kontrolu stisknutí více kláves

Napsal: 24 bře 2014 20:23
od faraon
Tohle je spíš omezení klávesnice, protože zapojení její matice neumožňuje zjistit určité kombinace. Zkus jinou klávesnici nejlépe i od jiného výrobce (i když můj Genius se systému představuje jako Chicony), třeba to u ní bude lepší.

Edit: notebook? Tak vyzkoušej externí.

Re: Program na kontrolu stisknutí více kláves

Napsal: 24 bře 2014 21:04
od Kim Spotcom
Jo notebook. Ano, omezení klávesnice - to chci zjistit. Na externí klávesnici to vyzkouším, (i když je to blbé řešení, musel bych si pořizovat něco hmotného, programem by to bylo ajns cvai) a kromě toho, si už radši pořídím pianovou klávesnici.

No zapomněl jsem napsat, že mě napadlo, že to, že někdy, jde stisknout 7 kláves(některých) současně, ještě neznamená, že půjde stisktnou současně 3 jiné - že někde "Asi jsou hrdla, který to škrtí)

--- Doplnění předchozího příspěvku (24 Bře 2014 21:16) ---

Bohužel stáhl jsem si tothttp://www.softpedia.com/dyn-postdownload.php?p=230417&t=0&i=1o a bohužel je to černé na bílém - ten šmejde neumí poznat některá 3 stisknutá písmena. Myslíte, že mám tedy nárok na vrácení notebooku?


PS: ještě se podívám, co na to linux.

Re: Program na kontrolu stisknutí více kláves

Napsal: 24 bře 2014 21:58
od faraon
Ani ne tak hrdla, jako spíš "zkraty". Podívej se na tohle schéma:

toshiba_satellite_c660_keyboard_matrix.jpg


Určité skupiny kláves jsou rozmístěné ve stejných řádcích a sloupcích. Zjišťování probíhá tak, že řadič klávesnice postupně pouští napětí do jednotlivých sloupců, a testuje jestli se v nějakém řádku objeví signál. Všimni si že řádků je osm, načítají se jako jeden bajt. Klávesa prostě elektricky propojí sloupec a řádek.

Pokud stiskneš klávesy v jednom sloupci, třeba 1 Q A Z (na české Y), tak to řadič přečte jako binární číslo 10110100. Najde si příslušné scankódy v tabulce a pošle o tom informaci do počítače. Pokud některou klávesu pustíš, pošle se její scankód+128.

Jenže to funguje jen když stiskneš klávesy pouze v jednom sloupci! Podívej se co se stane když držíš 1 Q. Až potud je vše v pořádku, řadič, cyklicky testující jednotlivé sloupce, dojde k tomuhle, pustí do něj šťávu a na dvou řádcích mu vyběhnou jedničky.
Co se ale stane, když budeš současně držet 1 Q S? Řadič vypne předchozí sloupec, pustí šťávu do dalšího, a přes současně stisknuté klávesy S a Q elektrika projde i do předchozího sloupce, ze kterého zase vyběhnou ty samé dvě jedničky, takže to vypadá že je stisknutá i klávesa 2! Prostě se mu to zkratuje do čtverce.

Ta dvojka je samozřejmě nesmysl, a bylo by špatné kdyby se v programu objevovaly klávesy které nikdo nemačká, to by mohlo napáchat mnohem větší škody než to že se nějaká klávesa vynechá. Aby takové nebezpečné situaci řadič zabránil, musí ověřovat i to jestli nemá stisknutých víc kláves na jednom řádku. Když zjistí že ano, provede tu nejjednodušší věc co může, dělá mrtvého brouka. On ani nic jiného dělat nemůže, protože neexistuje způsob jak zjistit která z těch kláves je skutečně stisknutá a která se přes spoje propojené na víc místech pouze "promítá".

Jediná možnost jak tomuhle zabránit je mít klávesnici postavenou z mechanických spínačů, a každý připojený ke svému řádku přes diodu, aby nemohl signál procházet zpětně. Asi si dovedeš představit že taková klávesnice by nebyla nic levného. I když i takové se kdysi vyráběly, když se ještě počítače dělaly pořádně.

Z toho vyplývá že na nějaké vracení nárok určitě nemáš, tohle prostě není závada, je to běžná vlastnost všech dnešních klávesnic. A v Linuxu to bude to samé, protože tohle je jen záležitost hardwaru, operační systém na tom nemůže nic změnit. Pianová klávesnice je nejlepší řešení, ta by měla takové situace zvládat.

Jen pro zajímavost, řadič té klávesnice je osmibitový počítač, u původního IBM PC se na něj používal mikrokontrolér Intel 8048 nebo 8049, později modernější 8051/8052, viděl jsem ale i řadiče odvozené z Motoroly 6800 a dokonce i Zilogu Z80, srdce slavného ZX Spectrum!

Re: Program na kontrolu stisknutí více kláves

Napsal: 25 bře 2014 10:44
od Speed_dead
Relativně neomezený počet současně stisknutých kláves podporují některé herní klávesnice.