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í
×
    včera 22:22 | Upozornění Ladislav Hagara | Komentářů: 3
    včera 17:44 | Nová verze

    Firma Murena představila /e/OS verze 2.0. Jde o  alternativní sestavení Androidu bez aplikací Google. Mezi novinkami je podrobnější nastavení ochrany soukromí před sledováním aplikacemi. Murena prodává několik smartphonů s předinstalovaným /e/OS (Fairphone, repasovaný Google Pixel 5).

    Fluttershy, yay! | Komentářů: 0
    včera 14:33 | Zajímavý software

    Do 30. května lze v rámci akce Warhammer Skulls 2024 získat na Steamu zdarma hru Warhammer 40,000: Gladius - Relics of War.

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

    HelenOS (Wikipedie), tj. svobodný operační systém českého původu založený na architektuře mikrojádra, byl vydán ve verzi 0.14.1. Přehled novinek v poznámkách k vydání. Vypíchnou lze nabídku Start. Videopředstavení na YouTube.

    Ladislav Hagara | Komentářů: 2
    23.5. 23:22 | Zajímavý software

    BreadboardOS je firmware pro Raspberry Pi Pico (RP2040) umožňující s tímto MCU komunikovat pomocí řádkového rozhraní (CLI). Využívá FreeRTOS a Microshell.

    Ladislav Hagara | Komentářů: 0
    23.5. 16:55 | Nová verze

    Vývojáři KDE oznámili vydání balíku aplikací KDE Gear 24.05. Přehled novinek i s náhledy a videi v oficiálním oznámení. Do balíku se dostalo 5 nových aplikací: Audex, Accessibility Inspector, Francis, Kalm a Skladnik.

    Ladislav Hagara | Komentářů: 10
    23.5. 12:55 | Nová verze

    Byla vydána (𝕏) nová verze 18.0.0 open source webového aplikačního frameworku Angular (Wikipedie). Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    22.5. 23:44 | Pozvánky

    V neděli 26. května lze navštívit Maker Faire Rychnov nad Kněžnou, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.

    Ladislav Hagara | Komentářů: 0
    22.5. 16:33 | Nová verze

    Byla vydána nová stabilní verze 3.20.0, tj. první z nové řady 3.20, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie) postavené na standardní knihovně jazyka C musl libc a BusyBoxu. Z novinek lze vypíchnou počáteční podporu 64bitové architektury RISC-V.

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

    Společnost Jolla na akci s názvem Jolla Love Day 2 - The Jolla comeback představila telefon se Sailfish OS 5.0 Jolla Community Phone (ve spolupráci se společností Reeder) a počítač Jolla Mind2 Community Edition AI Computer.

    Ladislav Hagara | Komentářů: 20
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (82%)
     (4%)
     (7%)
     (7%)
    Celkem 524 hlasů
     Komentářů: 16, poslední 14.5. 11:05
    Rozcestník

    Dotaz: Nastavenie FIFO pri seriovom porte

    8.4.2004 17:39 Gabo
    Nastavenie FIFO pri seriovom porte
    Přečteno: 99×
    Prosim Vas, ako sa da nastavit vstupny bufer na seriovom porte s radicom 16550A na inu hodnotu ? Potrebujem aby sa prerusenie generovalo skor ako sa zaplni. Napriklad uz pri 8 bajtoch. Setserial to neumoznuje. Dakujem Gabo.

    Odpovědi

    9.4.2004 18:40 rastos | skóre: 62 | blog: rastos
    Rozbalit Rozbalit vše Re: Nastavenie FIFO pri seriovom porte
    Uplne 'tvrde' riesenie: pozeral som sa do zdrojakov jadra a vidim tam pouzitu strukturu serial_uart_config (definovanu v linux/serial.h), ktora ma clen dfl_xmit_fifo_size. Tato struktura je naplnena v drivers/char/serial.c a pre 16550A je fifo nastavene na 16. Vyzera to, ze by to slo prepisat na 8 a hotovo. To je, ale fakt nestandardne riesenie.

    Potom, ale vidim ze linux/generic_serial.h definuje funkcie gs_getserial() a gs_setserial(), ktorym sa posiela pointer na serial_struct co je struktura definovana v linux/serial.h a tiez obsahuje clen xmit_fifo_size. Snad najak pomocou toho.

    10.4.2004 15:11 rastos | skóre: 62 | blog: rastos
    Rozbalit Rozbalit vše Re: Nastavenie FIFO pri seriovom porte
    Ok. Ten prvy odstavec plati. Namiesto toho druheho mam toto:
      #include <linux/serial.h>
      #include <sys/ioctl.h>
      ...
      struct serial_struct sp;
    
      fd=open("/dev/ttyS1",O_RDWR);
      ioctl(fd,TIOCGSERIAL,&sp);
      sp.xmit_fifo_size=8
      ioctl(fd,TIOCSSERIAL,&sp);
    
    Hm?
    10.4.2004 18:49 Gabo
    Rozbalit Rozbalit vše Re: Nastavenie FIFO pri seriovom porte
    Super, dakujem, za pomoc. Hned to vyskusam.
    14.4.2004 11:18 Gabo
    Rozbalit Rozbalit vše Re: Nastavenie FIFO pri seriovom porte
    Trochu som s tym polaboroval, ale ziadny vysledok. xmit bufer je vysielaci, co neriesi problem. Skusam nastavit rx_trigger priamym pristupom na port. Uvidim co to spravi. Ako inak riesit tento problem ? Dokumentovany je ako serial overrun .
    14.4.2004 12:49 rastos | skóre: 62 | blog: rastos
    Rozbalit Rozbalit vše Re: Nastavenie FIFO pri seriovom porte
    Domnieval som sa, ze serial overrun moze nastat len na velmi pomalych strojoch neschopnych spracovavat prichadzajuce data dostatocne rychlo. Navyse mam pocit, ze takuto situaciu ma riesit flow control. Mozno sa viac docitas v Serial Howto

    Aj tak celkom nerozumiem poziadavke. Na co je dobry mensi buffer? Data z portu mozes precitat aj bez zaplnenia buffra. Mimochodom, ako by si ten problem riesil, keby to nebol Linux ale nieco ine?

    14.4.2004 14:04 Dejv | skóre: 37 | blog: Jak ten blog nazvat ... ? | Ostrava
    Rozbalit Rozbalit vše Re: Nastavenie FIFO pri seriovom porte
    Ja vam neporadim, jak nastavit mensi Rx FiFo, ale mam za to, ze preruseni se generuje pri prijmu bytu, ne az pri zaplneni FiFo. Nebude ten zakopany pes nekde jinde?

    Dejv.
    Pevně věřím, že zkušenější uživatelé mě s mými nápady usměrní a pošlou tam, kam tyto nápady patří...
    14.4.2004 14:50 Gabo
    Rozbalit Rozbalit vše Re: Nastavenie FIFO pri seriovom porte
    Mozno som sa trochu zamotal. Problem je v tom, ze stracam pri prijme znaky. Myslel som, ze zmensenie FIFO to vyriesi. Po prestudovani zdrojakov so zistil, ze skutocne sa prerusenie generuje pri prvom znaku. A to je potencialne problem. Generuje sa vela preruseni a zahlti to CPU-386. Riesenim by malo byt nastavenie rx_trigger. Generovalo by sa menej preruseni. To som zatial nezvladol. Uz mi hrozi dalsi problem a to je 16550 nema plne hardverove riadenie a spolieha sa na cpu. Riesenie sa crta s obvodom 16554 alebo 16654.
    15.4.2004 10:53 Dejv | skóre: 37 | blog: Jak ten blog nazvat ... ? | Ostrava
    Rozbalit Rozbalit vše Re: Nastavenie FIFO pri seriovom porte
    Pokud ztracis znaky, co takhle snizit rychlost? Vim, ze to nemusi byt mozne, ale aspon napad...

    Dejv.
    Pevně věřím, že zkušenější uživatelé mě s mými nápady usměrní a pošlou tam, kam tyto nápady patří...
    15.4.2004 20:27 Gabo
    Rozbalit Rozbalit vše Re: Nastavenie FIFO pri seriovom porte
    Znizenie rychlosti bude problem. Uz teraz idem na 9600. Problem je, ze mam 4 x 16550. Niekde som sa docital, ze 16654 a 16554 maju skutocne hardwerove riadenie toku dat. Uz som si zohnal aj taku kartu. Teraz mam 16554 co su 4xRS232 na jednom cipe. Problem je, ze v standartnom mode sa sprava ako 16550. To riadenie toku treba dako zapnut. Inac povedane zhanam driver. V kerneli je daka podpora pre 16654 ale nepodarilo sa mi to pouzit. Mate s tym dakto skusenosti ? Dakujem.
    16.4.2004 10:33 Dejv | skóre: 37 | blog: Jak ten blog nazvat ... ? | Ostrava
    Rozbalit Rozbalit vše Re: Nastavenie FIFO pri seriovom porte
    Jeste jeden napad. Jak (kolika draty) mas propojen pocitac se zarizenim? Pouzivas 3-dratove propojeni (jen RxD, TxD a GND), nebo tam mas vic signalu (datove i ridici)?

    Dejv.
    Pevně věřím, že zkušenější uživatelé mě s mými nápady usměrní a pošlou tam, kam tyto nápady patří...
    Stanislav Brabec avatar 16.4.2004 10:58 Stanislav Brabec | skóre: 45 | Praha
    Rozbalit Rozbalit vše Re: Nastavenie FIFO pri seriovom porte
    V původním dotazu jste se ptal na 16550A, ale teď píšete o 16550. Tyto modely se, pokud si dobře pamatuji, liší právě tím 16bajtovým bufferem (model A ho má). Obávám se, že zmenšením bufferu u 16550A to zhoršíte. Zředěním přerušení to můžete možná zlepšit.

    Řešením by také mohl být preepmtivní (2.6) nebo RT kernel, nebo low latency patch.

    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.