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 05:11 | Zajímavý článek

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

    Ladislav Hagara | Komentářů: 0
    dnes 04:33 | Bezpečnostní upozornění

    Dnes v 16:00 (14:00 UTC) budou opraveny 2 kritické zranitelnosti s CVSS 9.2 v PHP.

    Ladislav Hagara | Komentářů: 0
    dnes 01:37 | Bezpečnostní upozornění

    Nizozemská policie 13. října 2026 zabavila v datacentru Amsterdam Science Park server italského poskytovatele internetových služeb Autistici/Inventati (A/I), a to na základě americké žádosti o mezinárodní právní pomoc.… více »

    vencour | Komentářů: 0
    včera 20:47 | Bezpečnostní upozornění
    Hlášeny RCE v NGINX. Náprava dostupná. … více »
    vencour | Komentářů: 0
    včera 20:33 | IT novinky

    Do 26. října do 18:00 běží na Steamu přehlídka nadcházejících her Festival Steam Next | říjen 2026 (YouTube) doplněná demoverzemi, přenosy a dalšími aktivitami. Demoverze lze hrát zdarma.

    Ladislav Hagara | Komentářů: 0
    včera 20:22 | Zajímavý software

    Čínská technologická společnost DeepSeek zveřejnila na GitHubu svůj framework DeepInfer, nástroj pro efektivní offline inferenci svého modelu DeepSeek-V4.1-Flash ve velkém měřítku. Software běží na Linuxu a nativně podporuje akcelerátory Nvidia ale i čipy Huawei Ascend 950. Jedná se pouze o samotný inferenční engine, ne kompletní produkční službu. Zdrojový kód je dostupný pod licencí Apache 2.0.

    ❗Červivý Hřib krade❗ | Komentářů: 0
    včera 17:00 | Nová verze

    Německo-americká společnost Black Forest Labs představila FLUX 3 Image Klein, otevřený model s 5,6 miliardami parametrů pro tvorbu a úpravu obrázků. Dovede pracovat až s deseti referenčními snímky a zvládá generování v rozlišení až 4K, díky své menší velikosti ('klein' v němčině znamená 'malý') je model vhodný pro používání na běžných grafických kartách. Jedná se bohužel o cenzurovaný generativní model, z korpusu byl před trénováním

    … více »
    ❗Červivý Hřib krade❗ | Komentářů: 6
    včera 11:33 | Nová verze Ladislav Hagara | Komentářů: 1
    včera 08:26 | Zajímavý článek
    Do roku 2030 bude nutno cca 1/4 podmořských optických kabelů nahradit novými. Do roku 2040 bude polovina obsluhující opravárenské flotily přesluhující. Na starost mají ke dnešku cca 1.500.000 km komunikačních podmořských kabelů v 607 kompletech instalací. Více na blogu APNIC
    vencour | Komentářů: 0
    19.10. 17:33 | Bezpečnostní upozornění

    Byla vydána nová verze 25.12.6 linuxové distribuce primárně určené pro routery a vestavěné systémy OpenWrt (Wikipedie). Opravena je řada zranitelností v základních síťových službách, které jsou ve výchozím nastavení aktivní a které lze zneužít na dálku. Důrazně je doporučena aktualizace.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (21%)
     (30%)
     (8%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2884 hlasů
     Komentářů: 33, poslední včera 23:44
    Rozcestník

    Dotaz: Cyklus While - čtení dat z /dev/ttyUSB

    Petr Maleček avatar 19.1.2014 20:02 Petr Maleček | skóre: 29 | Plzeň - Bolevec
    Cyklus While - čtení dat z /dev/ttyUSB
    Přečteno: 517×

    Ahoj, mám tu problém. Z USB teploměru získávám data o teplotě (ASCII), občas se stane, že teploměr na první dotaz neodpoví, tak bych chtěl, aby se v případě nulového výstupu dotaz na data zopakoval.

    Výstup z USB zařízení vypadá takto:

    *B1E1+019.7

    Kde *B1E1 se nemění, mění se až data za ním (znaménko a čísla).

    
    #!/bin/bash
    TEMPREAD=(`head -1 /dev/ttyUSB0`); # | cut -c6-11`);
    
            while [ $TEMPREAD == *"B1E1"* ]; do
                    echo $TEMPREAD;
            done
    
    
    

    Zatím jsem chtěl pouze nechat vypisovat vrácená data a aby se script ukončil v případě, že data nebudou k dispozici. Ovšem nechápu, proč se data nevypíšou ani jednou? Co mám v tom cyklu špatně?

    Díky :-)
    LinMuck, WinFuck :-P

    Řešení dotazu:


    Odpovědi

    19.1.2014 21:27 li737 | skóre: 6
    Rozbalit Rozbalit vše Re: Cyklus While - čtení dat z /dev/ttyUSB
    ze zařízení se čte jen jednou na začátku. Je potřeba dat to do cyklu.
    Petr Maleček avatar 19.1.2014 21:55 Petr Maleček | skóre: 29 | Plzeň - Bolevec
    Rozbalit Rozbalit vše Re: Cyklus While - čtení dat z /dev/ttyUSB
    Ano, i kdyby se četlo ze zařízení jen jednou, tak by snad jednou ten cyklus proběhl, ne? :-)
    LinMuck, WinFuck :-P
    19.1.2014 22:07 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: Cyklus While - čtení dat z /dev/ttyUSB
    Ano jednou se načte a proč by to mělo něco vypsat když to přečte třeba bflmps ?

    Či to přečte bílé znaky a podobně...
    19.1.2014 22:43 li737 | skóre: 6
    Rozbalit Rozbalit vše Re: Cyklus While - čtení dat z /dev/ttyUSB
    když nebude splněna podmínka tak cyklus neproběhne ani jednou. Jinak aby ta podmínka fungovala tak je potřeba zdvojit závorku [[
    Petr Maleček avatar 20.1.2014 01:19 Petr Maleček | skóre: 29 | Plzeň - Bolevec
    Rozbalit Rozbalit vše Re: Cyklus While - čtení dat z /dev/ttyUSB
    Tak chyba byla v té zdvojené závorce, což jsem úplně přehlédl. Díky, už mi to funguje :-)
    
    #!/bin/bash
    TEMPREAD=(`head -1 /dev/ttyUSB0`); # | cut -c6-11`);
    
            while [[ "$TEMPREAD" != *"B1E1"* ]]; do
                    # READ DATA AGAIN
                    TEMPREAD=(`head -1 /dev/ttyUSB0`);
                    # echo $TEMPREAD
            done
    
            # FORMAT OUTPUT
            TEMPREAD=(`echo $TEMPREAD | cut -c6-11`);
            # echo $TEMPREAD;
    
    # WRITE DATA TO SQL
    sqlite3 /root/meteo-temp1.sqlite "INSERT INTO 'meteo-temp1' ('datum', 'teplota') VALUES (DATETIME('now', 'localtime'), '$GETTEMP0');"
    
    LinMuck, WinFuck :-P
    Petr Maleček avatar 20.1.2014 01:21 Petr Maleček | skóre: 29 | Plzeň - Bolevec
    Rozbalit Rozbalit vše Re: Cyklus While - čtení dat z /dev/ttyUSB
    Pardon, místo $GETTEMP0 má být $TEMPREAD
    LinMuck, WinFuck :-P

    Založit nové vlákno • Nahoru

    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.