abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 21:33 | Komunita

    Fedora 40 release party v Praze proběhne v pátek 17. května od 18:30 v prostorách společnosti Etnetera Core na adrese Jankovcova 1037/49, Praha 7. Součástí bude program kratších přednášek o novinkách ve Fedoře.

    Ladislav Hagara | Komentářů: 0
    dnes 21:11 | IT novinky

    Stack Overflow se dohodl s OpenAI o zpřístupnění obsahu Stack Overflow pro vylepšení OpenAI AI modelů.

    Ladislav Hagara | Komentářů: 0
    dnes 17:55 | Nová verze

    AlmaLinux byl vydán v nové stabilní verzi 9.4 (Mastodon, 𝕏). S kódovým názvem Seafoam Ocelot. Přehled novinek v příspěvku na blogu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    dnes 17:11 | IT novinky

    Před 50 lety, 5. května 1974 v žurnálu IEEE Transactions on Communications, Vint Cerf a Bob Kahn popsali protokol TCP (pdf).

    Ladislav Hagara | Komentářů: 0
    dnes 13:44 | Zajímavý článek

    Bylo vydáno do češtiny přeložené číslo 717 týdeníku WeeklyOSM přinášející zprávy ze světa OpenStreetMap.

    Ladislav Hagara | Komentářů: 0
    dnes 04:00 | Nová verze

    Byla vydána (Mastodon, 𝕏) nová stabilní verze 2.10.38 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP je již k dispozici také na Flathubu.

    Ladislav Hagara | Komentářů: 5
    dnes 00:22 | Komunita

    Google zveřejnil seznam 1220 projektů od 195 organizací (Debian, GNU, openSUSE, Linux Foundation, Haiku, Python, …) přijatých do letošního, již dvacátého, Google Summer of Code.

    Ladislav Hagara | Komentářů: 2
    včera 22:22 | IT novinky

    Na základě DMCA požadavku bylo na konci dubna z GitHubu odstraněno 8535 repozitářů se zdrojovými kódy open source emulátoru přenosné herní konzole Nintendo Switch yuzu.

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

    Webový prohlížeč Dillo (Wikipedie) byl vydán ve verzi 3.1.0. Po devíti letech od vydání předchozí verze 3.0.5. Doména dillo.org již nepatří vývojářům Dilla.

    Ladislav Hagara | Komentářů: 0
    4.5. 15:00 | Komunita

    O víkendu probíhá v Bostonu, a také virtuálně, konference LibrePlanet 2024 organizovaná nadací Free Software Foundation (FSF).

    Ladislav Hagara | Komentářů: 0
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (62%)
     (8%)
     (15%)
     (15%)
    Celkem 117 hlasů
     Komentářů: 8, poslední 4.5. 08:25
    Rozcestník

    Dotaz: signaly DTR, RTS a napajeni ad

    26.5.2003 11:54 psl
    signaly DTR, RTS a napajeni ad
    Přečteno: 830×
    Pozoruji se svym seriovym kabelem pro pripojeni mobilu podivne veci. Na nekterych pocitacich moc nefunguje. V kabelu je prevodnik z RS232 na TTL urovne, nevim jak je proveden, je zalit v gume. Myslim si, ze je problem s napajenim prevodniku, protoze na nekterych PC funguje aspon na nizssich rychlostech. Take jsem si udelal adapter, ktery vsouvam mezi PC a kabel, adapter slouzi k privedeni napajeni +9V na DTR signal kabelu. Pouziti adapteru resi problem.

    Zajimalo by me timto, jak mohu prikazat Linuxu do jakeho stavu nastavit signaly DTR a RTS na seriovem portu. At prochazim manual stty jak chci, neni tam zadna moznost k ovlivneni techto signalu, ktere se bezne pouzivaji k napajeni ruznych zarizeni na seriovem portu. Myslim si, ze je to i problem meho kabliku, ze signal ktery pouziva k napajeni nema spravnou uroven. Jen by jsem je jednou potreboval nastavit do definovaneho stavu, treba behem inicializace.

    Odpovědi

    26.5.2003 12:45 finn
    Rozbalit Rozbalit vše signaly DTR, RTS a napajeni ad
    Nejsem si 100% jisty, ale napr. u nekterych notebooku je napajeci napeti snizene, treba tady je o tom zminka.
    28.5.2003 21:23 Karel (bengalian@volny.cz)
    Rozbalit Rozbalit vše Re:signaly DTR, RTS a napajeni ad
    Podobny problem jsem uz resil v souvislosti s modemem Baycom, ale vezmu to poporadku: Stav tech vedeni jde dumpnout programem statserial. Napriklad ,,statserial /dev/ttyS0''. Tohle je dobry udelat jako ,,prvni pomoc'', aby clovek aspon trochu videl, co se deje. Nahazovani/shazovani ruznych vedeni na seriaku. No asi to pujde udelat nejakym desivym prikazem, to nevim, ale kazdopadne to jde pres ioctl, takze bych zkusil editovat zdrojaky toho programovadla. Ty handshake jde pouzivat k dabelskejm vecem, jako priklad doporucuju prostudovat zdrojaky programatoru PIC16F84 od Jaako Hyvatti, je to tam pekne okomentovane. (http://www.iki.fi/hyvatti) Druhy rozmer problemu - hardware: Potiz nemusi byt ani tak v napajeni, jako v sense vedenich. Totiz. RS-232 je puvodem proudova smycka, kde jde o smer toku proudu, nikoliv o velikosti napeti. To co je v PC neni RS-232, ale hybrid. Takze chytri lidi prisli na to, ze vetsina portu je udelana tak, ze na nezatizenym vstupu je budto cca +12..+9V, nebo -12V..-9V. Takze to v podstate staci vest pres rezistor na diodu, ktera to zkratuje v pripade zapornyho napeti a na 5V se to pri kladnym srazi zenerkou, takze je z toho ,,na sup'' TTL. Tohle funguje vzdy a vsude a v podstate neni duvod to nepouzivat. Jenomze mnozi sli trochu dal a vymysleli, ze vetsina portu sezere, pokud dostane do vstupu primo TTL, tj. bud +5V, nebo 0V. Problem je v tom, ze to sezere prave jen vetsina portu, ne vsechny. Zazil jsem radice, kde bylo tohle detekovany trvale jako uroven Hi, protoze on potreboval zaporny napeti na to, aby detekoval Lo. Takhle to mj. ma byt podle normy, co definuje RS-232. Vetsina ,,chytrejch kabelu'' pouziva prave to prvni zapojeni a to je smrtelna zalezitost. Kdyz by se to melo udelat podle normy bude nejlip tomu dat externi zdroj a pouzit nejakej prevodnik TTL<>RS-232, napriklad MAX232, ICL232, AD232, MAX233...zalezi, jaky jsou potreba signaly. Takze. Pokud to s vnejsim zdrojem funguje, je to ta lepsi varianta. Napajeni ze serioveho portu je trochu problem, ale vetsinou to unese neco kolem 5mA spolehlive, obcas vic. Zaver: Zacal bych tim, ze bych se kouknul co na tom portu ma byt tim statserial. Na seriaku je vzdycky nejaky napeti, budto +12, nebo -12V, ale nikdy nula. Potom si to chce vzit schema od toho kabelu a zacit premyslet, co to kde potrebuje. Pokud je na napajecich napetich uroven Lo a ono se predpoklada, ze je tam neco kladnyho, staci tyhle ,,draty'' nakopnout nahoru, coz jde udelat pres ioctl. Jak na to jde vyzkoumat ze zdrojaku k tomu programatoru (alespon ja to z toho zkoumal) no a nekam do vhodnyho mista pridat par radku, ktery to udelaji. Nic totiz nepomuze tyhle draty nejak rucne nahodit pred startem toho programu, kdyz je napr. ten program nasledne shodi.
    28.5.2003 21:59 Jan Martinek
    Rozbalit Rozbalit vše signaly DTR, RTS a napajeni ad
    Dá se to nastavit taky přímým přístupem na porty, např. nastavit DTR je možné pomocí
    outb (1, BASEPORT + 4);
    a nastavit RTS zase takhle:
    outb (2, BASEPORT + 4);
    kde BASEPORT je 0x3F8 nebo 0x2F8, podle toho, co je to za port. Blbý je, že to musí běžet jako root, aby se dalo takhle přistupovat na porty. A taky je potřeba předtím požádat systém o přístup na porty:
    if (ioperm (BASEPORT, 8, 1)) {perror("ioperm"); exit(1);}
    a až to nebude potřeba, tak zase uvolnit:
    if (ioperm(BASEPORT, 8, 0)) {perror("ioperm"); exit(1);}
    8.2.2004 12:30 Petr Slansky | skóre: 30 | blog: slansky
    Rozbalit Rozbalit vše signaly DTR, RTS a napajeni ad
    Takze jsem zkusil nasledujici program v C. Funguje, signaly DTR a DSR se skutecne meni (statser). Ale pouze po dobu behu programu (10s). Po skonceni programu se nastavi na defaultni hodnoty (DTR=1, DSR=1). Bylo by treba asi patchnout jadro anebo pppd, aby pouzival jine default hodnoty, ze? Anebo je jina cesta??
    #include <sys/ioctl.h>
    #include <fcntl.h>
    #include <stdio.h>
    #include <stdlib.h>
    
    /* DTR, DSR state, as you wish */
    int sig_dtr = 1;
    int sig_dsr = 0;
    
    int main(int argc, char **argv)
    {
            int fd;
            int lstate;
    
            /* exactly one argument must be given */
            if (argc != 2) {
                 printf("What device?\n"); exit(1);
            }
            /* open device */
            fd = open(argv[1], O_RDWR | O_NDELAY);
            if (fd < 0) {perror(argv[1]); exit(-1); }
    
            ioctl(fd, TIOCMGET, &lstate);
            if (sig_dsr != 0) {
                    lstate |= TIOCM_RTS;
            } else {
                    lstate &= ~TIOCM_RTS;
            }
            if (sig_dtr != 0) {
                    lstate |= TIOCM_DTR;
            } else {
                    lstate &= ~TIOCM_DTR;
            }
            ioctl(fd, TIOCMSET, &lstate);
    
            sleep(10);
            close(fd);
            return 0;
    }
    

    Založit nové vláknoNahoru

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

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