Fórum témák
» Több friss téma |
Sziasztok!
Feldobnám kicsit a topicot egy kérdéssel! Egy usb-s billentyűzetről ledobnám a fóliát, és a vezetékeit magam szeretném kapcsolgatni. De! Nem kapcsolókkal, hanem mikrovezérlővel. Ami gondot okoz, hogy nem tudom mi lakozik a billentyűzet vezérlőjében, hogyan kellene elektronikusan kiváltani a mechanikus kapcsolókat.
Leginkább analóg kapcsolóval.Szerintem a legtöbb sok gombos billentyűzet mátrixba van kötve. Így vagy nagyon gyorsan reagálsz a sor oszlop lekérdezésre, vagy marad az opto/vagy analóg kapcsoló . Esetleg ha csak néhány nem meghatározott gomb kell, ki lehet próbálni, valamely bemenetet direkt szintre húzni egy tranzisztorral.Hátha a dekódoló rutin valami gombnak azonosítja.
A billentyűzet vezérlő úgy működik, hogy a manapság fólia formájában létező billentyűzet mátrixba egyik oldalról beküldi a teszt jelet, a másik oldalon pedig figyeli, hogy melyik gomb(ok) lenyomása által keletkezett rövidzár. Ha úgy képzeljük el a fóliát, mint vízszintes és függőleges vezetékek összessége, melyek ránézésre négyzetrácsot alkotnak, térben pedig két síkban helyezkednek el, akkor pl. egy adott sorba kiadott jel vezetéke, és ehhez képest valamely oszlopvezeték gombnyomás általi "aktiválódása" határozza meg azt, hogy milyen kódot kell a PC felé elküldeni.
Ha ezt a mátrix kiiktatásával akarod megoldani programozottan, akkor figyelned kell a teszt jel vezetékeit (a fenti példánál maradva a sorokat), és annak függvényében kell kiadnod a választ az oszlopokra. Ezzel "átvered" a billentyűzetvezérlőt. Kihasználhatod azt, hogy a sorok közül mindig csak 1 vezeték aktív. Azt, hogy a konkrét billentyűzet esetén melyik vezetékek a sorok, melyek az oszlopok, aktív alacsony vagy aktív magas a teszt jel, egyáltalán milyen feszültségszintek fordulnak elő és milyen frekvenciával megy a szkennelés, legkönnyebben talán egy szkóppal tudnád megállapítani. De a célodtól függően valószínűleg egyszerűbb lenne a fizikai billentyűzetet teljesen kiiktatni, és ha már úgyis mikrokontroller, akkor olyat válassz, amiben van USB periféria, és keress az adott gyártónál HID billentyűzet példát, majd azt módosítsd az igényeid szerint.
Köszönöm, végül én is erre jutottam. Gyors fejszámolással van vagy 10 sor és ugyanannyi oszlop hogy kijöjjön a 100 billentyű (alsóhangon ugye). Ehhez kellene valami ami ezt a mennyiséget le tudja kezelni (nyilván nem kell az összes, de amilyen szerencsém van biztos hogy szétszórva lennének amik nekem kellenek). Tehát kezd megint sok lenni a külső alkatrész.
Szóval ez nem egy járható út. Vannak a nagyobb vezérlők, ezek már tudnak usb-t is, de próbálom alulról közelíteni a megoldást. Most éppen annak próbálok utána járni hogy egy arduino unóval megy-e a v-usb. Elvileg megy, csak még nem tudom mennyi hely marad a programtárban a saját dolgaimnak. De ez már kezd itt off lenni..
Sziasztok!
Adott egy program a számítógépen, aminél egy szabvány PC billentyűzet néhány gombját használjuk (pl 1,2,3,4,5). Szeretnék készíteni PIC programozás nélkül egy olyan billentyűzetet (kezelő szervet), ami csak ezekkel a gombokkal rendelkezik. Ha egy mezei PS/2 billentyűzetet szétszedek, van benne egy kis nyák, és rá van dugva egy fólia, ami maga a gombsor. Ha ismerem, hogy a számomra hasznos billentyűk mely szálakat zárják, akkor a kis nyák-ra bevezetékelem a megfelelő szálakra a gombokat, és készen vagyok. Ezt kipróbáltam, működik. Tehát ha egy ps/2 billentyűzet kis nyákjáról lehúzom magát a gombsort, és bevezetékelek 5 gombot, akkor a program megfelelően érzékeli az 1,2,3,4,5-ös számokat. A kérdés az lenne, hogy mi a helyzet, ha a billentyűzetem USB-s. A belseje hasonlóan működik. Kimértem, hogy a kívánt gombok lenyomáskor melyik szálakat zárják, de ha lehúzom a fóliát, és csak a megfelelő szálakat zárom, akkor nem történik semmi. Visszadugva a fóliát, és a kívánt gombot megnyomva, megint tökéletes. Az lenne a kérdésem, hogy USB-s billentyűzetnél a szabvány szerint kell-e valamely szálat esetleg direktbe kötni, hogy a billenyűzetet aktívként érzékelje? Van ilyenben valakinek tapasztalata? "Használj USB=>PS/2 átalakítót" az ilyen válaszokkal nem vagyok előrébb. Ha lehet konkrét választ várnék, vagy egyéb egyszerűbb ötletet. Idézet: „Az lenne a kérdésem, hogy USB-s billentyűzetnél a szabvány szerint kell-e valamely szálat esetleg direktbe kötni, hogy a billenyűzetet aktívként érzékelje?” Ilyen szabvány nincs, nyilván gyártóspecifikus a mátrix megoldása minden billentyűzettípusnál. Szerintem vegyél egy Arduino Pro Micro-t amin van USB port meg USB-s bootloader és akkor nem kell geccsolni. A hozzászólás módosítva: Júl 5, 2017
A mai billentyűzetekben olyan mikrokontroller van, amelyik a két kommunikációs vezetéket felhasználva érzékelik, hogy USB -re vagy hagyományos PS2 portra vannak kötve.
Idézet: Behatóbban nem foglalkoztam a kérdéssel de nem lehetséges, hogy a fólia alapesetben zárva tart egy-két sávot? Én azt méregetném ki műszerrel első lépésként. „ha lehúzom a fóliát, és csak a megfelelő szálakat zárom, akkor nem történik semmi.”
@Lucifer:
Köszönöm a választ, de mint írtam, programozás nélkül szeretném megoldani. Több darab is kellene és mivel a legolcsóbban szeretném megcsinálni, ezért kizárólag a billentyűzet átalakítása jöhet szóba. Arduino, egyéb csodák vásárlása nem. @Bakman: Valószínűleg ez lesz, de reméltem, hogy valaki ezt kapásból meg tudja válaszolni. A hozzászólás módosítva: Júl 5, 2017
Hello! Van ilyen keyboard is, ha tényleg csak a számok "jáccanának"...
Nem mindegy, hogy melyik két pontot zárod rövidre...leginkább az alsó és a felső fóliára bekötött pontokat kéne összezárnod. Bővebben: Link ASCII kódokat generál a billentyűzet... A hozzászólás módosítva: Júl 5, 2017
Már csak az a kérdés, hogy a számítógép milyen kódokat kap ettől a billentyűzettől mert lehet, hogy a programot is ehhez kell igazítani.
Na úgy néz ki, hogy csak az a billentyűzet volt ilyen háklis.
Ugyanis szétszedtem egy másik USB-set, kimértem a kívánt gombokat, felírtam egy papírra a gombhoz tartozó érpár sorszámát, ezután egy kis vezetékkel összeérintve is működik. Nekem egyébként pont a: 1,2,3,4,+,- gombok kellenek. Ezek koordinátái egy HP KU-1156 billentyűzeten a következők: 1: 4,23 2: 5,23 3: 6,23 4: 7,23 +: 14,22 -: 14,24 Köszönöm mindenkinek a segítséget.
Tényleg sokkal olcsóbb és egyszerűbb lesz billentyűzeteket mókolni. Ja, nem.
Az arduino pro micro nincs egy ezres, kész programminta van hozzá, kb. 5 perc alatt bele lehet faragni a neked kellő gombokat, és az usb csatiján rátölteni, de te tudod.
Ja, de.
Idézet: „Az arduino pro micro nincs egy ezres...” Igen. Billentyűzetből meg van otthon kb 50db, tehát azért meg nem kell pénzt adni. Befaragni a gombokat ugyanannyi idő. Szóval megbeszéltük. A hozzászólás módosítva: Júl 5, 2017
Szia mindenki,
Fejembe vettem, hogy egy elfekvő ultrabook billentyűzetből csinálok BLE-HID képes billentyűzetet. A hardvert, szoftvert megfaragtam aztán jött a feketeleves: a két shift nem működik a mátrixban. A mátrix lábainak funkciója ismert (van rajzom az eredeti laphoz) 16 * 8-as. Ami nagyon furcsa, hogy kimappelve egy oszlop üresen maradt: https://hackaday.io/project/27133-samsung-np540u4e-to-ble-keyboard-...-shift A kontakthiba a proci - csati - fólia közt kizárva, végig tudtam mérni. A billentyűzet előélete nem ismert, akár hibás is lehetett, bár beázás nyoma nincs, illetve a notebookot sem ezért nyugdíjazták. Néztem a Thinkpadek régi billentyűzetét (mert azt egy páran már meghekkelték), és ott is külön oszlopon van a Shift úgy, hogy semmi más nincs rajta. https://github.com/rampadc/arduino-thinkpadkb-usb/blob/master/Micro...no#L78 Abba próbálok kapaszkodni, hogy valami általam nem ismert trükkel van a shift kezelve. Ha bárki ilyet ismer akkor jelezzétek kérlek! A hozzászólás módosítva: Szept 25, 2018
|
Bejelentkezés
Hirdetés |