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:44 | Nová verze

    Byla vydána nová verze 2.4.68 svobodného multiplatformního webového serveru Apache (httpd). Řešeno je mimo jiné 13 zranitelností.

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

    Apple na své vývojářské konferenci WWDC26 (Worldwide Developers Conference, keynote) představil řadu novinek. Vypíchnout lze novou generaci Apple Intelligence a zbrusu novou Siri, která dostala název Siri AI. Kvůli Aktu o digitálních trzích (DMA) však funkce Siri AI nebudou v systémech iOS 27 a iPadOS 27 k dispozici uživatelům v Evropské unii.

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

    Byla vydána nová verze 1.18.0 distribučního frameworku Flatpak (Wikipedie), tj. technologie umožňující distribuovat aplikace v podobě jednoho instalačního souboru na různé linuxové distribuce a jejich různá vydání. Přehled novinek na GitHubu. Vypíchnout lze podporu rozhraní /dev/kfd pro výpočty na kartách AMD (AMDKFD).

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

    aMule (Wikipedie), tj. multiplatformní klient pro peer-to-peer sdílení souborů pro sítě eD2k and Kademlia, byl po více než pěti letech od vydání poslední verze 2.3.3, vydán v nové major verzi 3.0.0 (GitHub). S novou webovou stránkou a dokumentací.

    Ladislav Hagara | Komentářů: 5
    včera 12:55 | IT novinky

    Byly vyhlášeni vítězové a zveřejněny vítězné zdrojové kódy (YouTube, GitHub) již 29. ročníku soutěže International Obfuscated C Code Contest (IOCCC), tj. soutěže o nejnepřehlednější (nejobfuskovanější) zdrojový kód v jazyce C.

    Ladislav Hagara | Komentářů: 0
    včera 12:44 | IT novinky

    Evropská komise předložila evropský balíček pro technologickou suverenitu, tedy soubor opatření, která mají posílit kapacity EU v oblasti polovodičů, umělé inteligence, cloudu a open source. To Evropě pomůže stát se lídrem v oblasti umělé inteligence, posílit její digitální autonomii a vytvářet podmínky pro udržitelnější digitální budoucnost.

    Ladislav Hagara | Komentářů: 11
    včera 04:44 | Nová verze

    OpenCV (Open Source Computer Vision, Wikipedie), tj. open source multiplatformní knihovna pro zpracování obrazu a počítačové vidění, byla vydána v nové major verzi 5.

    Ladislav Hagara | Komentářů: 0
    5.6. 22:22 | Nová verze

    Byla vydána nová verze 9.7 multiplatformní digitální pracovní stanice pro práci s audiem (DAW) Ardour. Přehled novinek, vylepšení a oprav v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    5.6. 18:22 | Komunita

    Vývojáři webového prohlížeče Ladybird dnes oznámili, že mění způsob vývoje. S blížícím se vydáním alfa verze přestávají přijímat veřejné pull requesty. Všechny otevřené veřejné pull requesty budou uzavřeny. Tým nedokáže garantovat bezpečnost AI generovaných pull requestů.

    Ladislav Hagara | Komentářů: 3
    5.6. 17:33 | Zajímavý software

    OpenLogi (GitHub) je open source náhrada aplikace Logi Options+ pro přizpůsobení myší od společnosti Logitech. Zatím běží pouze na macOS.

    Ladislav Hagara | Komentářů: 5
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (8%)
     (2%)
     (15%)
     (31%)
     (3%)
     (6%)
     (3%)
     (15%)
     (26%)
    Celkem 1853 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: Nastavení linky TxD sériového portu na úroveň H

    10.9.2007 20:14 Rada | skóre: 14
    Nastavení linky TxD sériového portu na úroveň H
    Přečteno: 542×
    Zdravím všechny, pokouším se vytvořit program, který nastaví linku TxD sériového portu na úroveň H. Zkoušel jsem následující postup, který fungoval na ostatní výstupní linky DTR a RTS:

    int iFlags = TIOCM_ST; fd = open("/dev/ttyS0", O_RDWR | O_SYNC); ioctl(fd, TIOCMBIS, &iFlags); ...

    Pro linku TxD to ovšem nefunguje. Linky DTR a RTS se chovaly tak, že tento kód je nastavil na úroveň H a linky v ní setrvaly, dokud nebyl program ukončen. Linka TxD se tak ovšem nechová. Poradili byste mi prosím, co dělám špatně, případně jak jinak donutit linku TxD přepnout do úrovně H a aby v této úrovni setrvala?

    Řešení dotazu:


    Odpovědi

    Josef Kufner avatar 10.9.2007 20:25 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Nastavení linky TxD sériového portu na úroveň H
    Jedna chytrá knížka (Využití rozhraní PC, B. Kainka) říká, že se musí "nahodit break". Tedy na adresy BA + 3 zapsat 64. Jak to udělat pomocí ioctl jsem nehledal, ale jsem si jist, že to tam někde bude ;-)
    Hello world ! Segmentation fault (core dumped)
    13.9.2007 20:29 Rada | skóre: 14
    Rozbalit Rozbalit vše Re: Nastavení linky TxD sériového portu na úroveň H
    Děkuji za informace. Tak jsem si tu knížku opatřil a vámi popsanou sekci jsem si přečetl. Daný postup ale vyžaduje zápis dat do konkrétních paměťových míst, což je poněkud nad moje programátorské síly. Navíc to asi bude vyžadovat práva roota - přecejen, uživatel těžko může takhle sahat na hardware (tady si nejsem jistý) - toto by pro mě bylo dost nepříjemné omezení. Samozřejmě tuto možnost prozkoumám, ale upřednostnil bych cestu přes systémové knihovny - právě například pomocí ioctl. Neřešil jste někdo podobný problém?
    Josef Kufner avatar 13.9.2007 20:42 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Nastavení linky TxD sériového portu na úroveň H
    Koukni se do hlavičkových souborů jádra na věci okolo ioctl. Je tam toho kopec a moc dokumentované to není. Ta knížka byla psána pro DOS, kde žádné jiné API ani nebylo. Ale i tak je to celkem fajn věc, jen by to chtělo doplnit o ty věci okolo linuxího API.
    Hello world ! Segmentation fault (core dumped)
    Pavel Vymetálek avatar 14.9.2007 07:04 Pavel Vymetálek | skóre: 15 | Náchod
    Rozbalit Rozbalit vše Re: Nastavení linky TxD sériového portu na úroveň H
    Jak někdo přede mnou správně řekl, tomuto stavu se říká break. V c to lze udělat následovně:

    res = tcsendbreak(fd,duration);

    a nebo natrvalo

    res = ioctl(fd,TIOCSBRK) // nahodi break

    res = ioctl(fd,TIOCCBRK) // shodi break

    15.9.2007 15:16 trekker.dk | skóre: 72
    Rozbalit Rozbalit vše Re: Nastavení linky TxD sériového portu na úroveň H
    Někdo před vámi to řekl špatně. Stav break vyhodí na TxD logickou 0, tedy stav L. V logické 1 je tento pin sériového portu v klidu.
    Quando omni flunkus moritati
    Řešení 1× (Rada (tazatel))
    15.9.2007 10:01 Rada | skóre: 14
    Rozbalit Rozbalit vše Re: Nastavení linky TxD sériového portu na úroveň H
    Díky za poskytnuté rady. Problém je vyřešen. Použil jsem následující postup:
    ioctl(fd, TIOCSBRK); /* Nastavi TXD */
    ioctl(fd, TIOCCBRK); /* Vynuluje TXD */

    Funguje to přesně podle mých představ ;-)

    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.