abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 04:00 | IT novinky

    Anthony Enzor-DeMeo je novým CEO Mozilla Corporation. Mozillu převzal po dočasné CEO Lauře Chambers. Vybudovat chce nejdůvěryhodnější softwarovou společnost na světě. Firefox by se měl vyvinout v moderní AI prohlížeč.

    Ladislav Hagara | Komentářů: 0
    včera 17:11 | Nová verze

    Byla vydána nová verze 9.20 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Vypíchnout lze například nový balíček RustDesk Server pro vzdálený přístup.

    Ladislav Hagara | Komentářů: 0
    včera 14:44 | Nová verze

    Jonathan Thomas oznámil vydání nové verze 3.4.0 video editoru OpenShot (Wikipedie). Představení novinek také na YouTube. Zdrojové kódy OpenShotu jsou k dispozici na GitHubu. Ke stažení je i balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo na spouštění a spustit.

    Ladislav Hagara | Komentářů: 0
    včera 14:22 | Nová verze

    Byla vydána nová verze 1.6 otevřeného, licenčními poplatky nezatíženého, univerzálního ztrátového formátu komprese zvuku Opus (Wikipedie) a jeho referenční implementace libopus. Podrobnosti na demo stránce.

    Ladislav Hagara | Komentářů: 2
    včera 01:33 | Komunita

    Vojtěch Polášek představil Vojtux, tj. linuxovou distribuci pro zrakově postižené uživatele. Vychází ze spinu Fedory 43 s desktopovým prostředím MATE. Konečným cílem je, aby žádný Vojtux nebyl potřeba a požadovaná vylepšení se dostala do upstreamu.

    Ladislav Hagara | Komentářů: 10
    včera 00:33 | Nová verze

    Byla vydána (Mastodon, 𝕏) druhá RC verze GIMPu 3.2. Přehled novinek v oznámení o vydání. Podrobně v souboru NEWS na GitLabu.

    Ladislav Hagara | Komentářů: 0
    15.12. 15:22 | Zajímavý článek

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 160 (pdf).

    Ladislav Hagara | Komentářů: 0
    15.12. 14:11 | IT novinky

    Izrael od února zakáže dětem používat v prostorách základních škol mobilní telefony. Podle agentury AFP to uvedlo izraelské ministerstvo školství, které zdůraznilo negativní dopady, které na žactvo používání telefonů má. Izrael se tímto krokem přidává k rostoucímu počtu zemí, které dětem ve vzdělávacích zařízeních přístup k telefonům omezují.

    Ladislav Hagara | Komentářů: 32
    15.12. 14:00 | IT novinky

    Internetová společnost Google ze skupiny Alphabet pravděpodobně dostane příští rok pokutu od Evropské komise za nedostatečné dodržování pravidel proti upřednostňování vlastních služeb a produktů ve výsledcích vyhledávání. V březnu EK obvinila Google, že ve výsledcích vyhledávání upřednostňuje na úkor konkurence vlastní služby, například Google Shopping, Google Hotels a Google Flights. Případ staví Google proti specializovaným

    … více »
    Ladislav Hagara | Komentářů: 8
    15.12. 12:22 | Pozvánky

    Byl oznámen program a spuštěna registrace na konferenci Prague PostgreSQL Developer Day 2026. Konference se koná 27. a 28. ledna a bude mít tři tracky s 18 přednáškami a jeden den workshopů.

    TomasVondra | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (34%)
     (48%)
     (20%)
     (17%)
     (23%)
     (15%)
     (24%)
     (15%)
     (18%)
    Celkem 471 hlasů
     Komentářů: 19, poslední 11.12. 20:04
    Rozcestník

    Debugování komunikace s klávesnicí

    26.11.2005 21:50 | Přečteno: 1507× | Linux | poslední úprava: 26.11.2005 22:48

    Momentálně si hraju s vylepšováním svojí klávesnice, akorát mi to moc nejde. Už jsem strávil tejdny různým zkoušením (no, nemám na hraní celý dny, proto tolik), až jsem uznal, že je nutný vědět, co se mezi klávesnicí a PC vlastně děje, protože podle teorie to prostě nefungovalo.

    Takže jsem vyštrachal obvod MAX232, 5 kondenzátorů a napojil klávesnici na sériový port.

    schema
    fotka

    Šmírovací program jsem obšlehl od sitha. V C totiž vůbec neumím a připadá mi jako totálně nepohodlný a nepřehledný jazyk, takže - vím, že je to napsaný prasácky, ale je to jednoúčelová věc a stačí mi:

    #include <stdio.h>
    #include <fcntl.h>
    #include <termios.h>
    #include <sys/ioctl.h>
    #include <time.h>
    
    #define SERIAK "/dev/ttyS0"
    
    int openserial ();
    void closeserial ();
    float mereni ();
    
    int fd;
    
    int
    openserial ()			//otevrit seriak
    {
    	if ((fd = open (SERIAK, O_RDWR)) == -1)
    	{
    		return 0;
    	}
    	return 1;
    }
    
    void
    closeserial ()			//zavrit seriak
    {
    	close (fd);
    }
    
    float
    mereni ()			//hlavni fce, mereni napeti
    {
    	int status, hodnota1 = 2, hodnota2 = 3;
    
    	while (1!=2)
    	{
    	ioctl (fd, TIOCMGET, &status);
    	hodnota1 = (status & TIOCM_CTS)/TIOCM_CTS; //clock
    	hodnota2 = (status & TIOCM_RI)/TIOCM_RI; //data
    	printf ("%i,", hodnota1);
    	printf ("%i\n", hodnota2);
    	}
    //	return (hodnota1);
    }
    
    int
    main ()
    {
    	if (!openserial ())
    	{
    		printf ("Nelze inicializovat port \"s\".", SERIAK);
    		return 0;
    	}
    	mereni();
    	closeserial ();
    	return 0;
    }
    

    Prostě to vypisuje dvě hodnoty oddělený čárkou, první je stav CLOCK a druhý je stav DATA. Protože PS/2 jede jen na 9600 baudů, stíhá se to krásně:

    ...
    1,0
    1,0
    1,0
    0,0
    0,0
    0,0
    0,0
    0,0
    0,0
    0,0
    0,0
    0,0
    0,0
    0,0
    0,1
    0,1
    0,1
    ...
    
    Update:

    A když se to nacpe do OpenOffice, tak se to dá krásně zvizualizovat:

    graf

    English summary: Spying on the PS/2 keyboard protocol using serial port.

           

    Hodnocení: 100 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    Pavel Stárek avatar 26.11.2005 23:07 Pavel Stárek | skóre: 43 | blog: Tady bloguju já :-) | Kolín
    Rozbalit Rozbalit vše Re: Debugování komunikace s klávesnicí
    Nooo, to je sice pěkné, ale tak nějak jsem nepochopil, jak chceš z těch grafíků z OO luštit, co tedy vlastně z té klávesnice leze ? Nu třeba máš naštudovaný protokol klávesnice na úrovni log. 0 a 1 :-)
    Kdo chce, hledá způsob; kdo nechce, hledá důvod.
    hajma avatar 27.11.2005 00:37 hajma | skóre: 27 | blog: hajma | Říčany
    Rozbalit Rozbalit vše Re: Debugování komunikace s klávesnicí
    mám :-)
    21 promarněných znaků
    13.3.2006 23:40 David Sedláček | skóre: 20 | Žďár nad Sázavou
    Rozbalit Rozbalit vše Re: Debugování komunikace s klávesnicí
    Ahoj.

    Ten muj puvodni program bych opravdu napsal uplne jinak - mas right, prasecina. Ovsem v podstate je v poradku - je to komunikace na nejnizsi urovni a proto se zdaj (a jsou) napr. ty bitove operace docela hardcore :).

    Kazdopadne velmi zaujimave takhle napojit klavesku :).

    13.3.2006 23:43 David Sedláček | skóre: 20 | Žďár nad Sázavou
    Rozbalit Rozbalit vše Re: Debugování komunikace s klávesnicí
    Zapomel jsem dodat:

    while (1!=2)

    -LOL :))

    20.3.2006 20:06 Bronek
    Rozbalit Rozbalit vše Re: Debugování komunikace s klávesnicí
    Taky skousim udelat jakysi emulator klavesnice s procesorem PIC16F84 a pro odladeni pouzivam podobnou metodu :) Teda nevim ,jestli se to metodou da vubec nazvat. Pro zachytavani ale nepouzivam seriovy ale paralelni port. Protoze vsechna komunikaca Klavesnice<>PC prebiha pres TTL +5V. Takze jsem usteril ten MAX a kopec kondiku.

    Komunikaci mam zachycenou ale emulace jaksi nefunguje.

    Skusim jeste trosku posprtat.
    hajma avatar 28.3.2006 15:25 hajma | skóre: 27 | blog: hajma | Říčany
    Rozbalit Rozbalit vše Re: Debugování komunikace s klávesnicí
    no, já jsem někde čet, že paralel se snadno spálí, takže radši přes ten sériovej. Už jsem to párkrát zkratoval ...
    21 promarněných znaků

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.