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 12:22 | IT novinky

    V březnu byla oznámena spolupráce GrapheneOS s Motorolou. Nejnovější vlajka Motorola Signature 27 je první Motorola s oficiální podporou GrapheneOS. GrapheneOS (Wikpedie) je varianta Androidu zaměřující se na bezpečnost a soukromí.

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

    Omarchy (Wikipedie) je linuxová distribuce s dlaždicovým správcem oken Hyprland. Založena je na Arch Linuxu. Vydána byla v nové verzi 4.5.0. Nově také pro Apple Silicon, konkrétně pro M1/M2/M3/Neo MacBooky.

    Ladislav Hagara | Komentářů: 2
    dnes 03:22 | Nová verze

    Byla vydána nová stabilní verze 8.3 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 156 s bezpečnostními opravami z Chromia 157. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    včera 19:53 | Bezpečnostní upozornění
    V Xenu objevena zranitelnost. Chyba v mechanismu grant copy umožňuje škodlivému virtuálnímu stroji číst a přepisovat libovolnou paměť jiných VM včetně privilegované domény Dom0. Dotčené verze jsou Xen 4.6 a novější. V upstreamu jsou dostupné patche pro Xen 4.17 až 4.19 a vývojovou větev. Pro starší nepodporované verze 4.6–4.16 nejsou v XSA-523 přiloženy opravy.
    vencour | Komentářů: 0
    včera 16:55 | Nová verze

    Multimediální přehrávač mpv byl vydán ve verzi 0.42.0. Jde o větší balík změn po bezmála roce. Mimo jiné se lépe integruje s Waylandem nebo rozšiřuje podporu DVD/Blu-ray, např. umožňuje přehrávat rovnou obrazy médií (soubory iso).

    ʚĭɞ 🍉 | Komentářů: 0
    včera 12:22 | Nová verze

    Desktopové prostředí LXQt (Lightweight Qt Desktop Environment, Wikipedie) vzniklé sloučením projektů Razor-qt a LXDE bylo vydáno ve verzi 2.5.0. Přehled novinek v poznámkách k vydání.

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

    Byla vydána (𝕏) nová verze 8.0 LTS open source monitorovacího systému Zabbix (Wikipedie). Přehled novinek v oznámení na webu, v poznámkách k vydání a v aktualizované dokumentaci.

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

    Byla vydána verze R14.1.7 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5, Wikipedie). Přehled novinek v poznámkách k vydání, podrobnosti v seznamu změn.

    JZD | Komentářů: 4
    včera 00:33 | Nová verze

    Bazzite (Wikipedie), tj. linuxová distribuce vycházející z Fedora Linuxu a optimalizována pro hraní počítačových her, byla vydána ve verzi 45. S Open Gaming Collective (OGC) jádrem a novým Easy Anti-Cheatem pro Linux (EAC Linux v2).

    Ladislav Hagara | Komentářů: 0
    4.11. 22:11 | Bezpečnostní upozornění

    MikroTik zveřejnil vlastní bezpečnostní upozornění potvrzující, že zranitelnost linuxového jádra postihuje také RouterOS 7. Jde o use-after-free při zpracování IPv4 TCP spojení s IP options. Zranitelnost se týká provozu směřujícího na TCP službu samotného routeru, nikoli paketů, které router pouze přeposílá. Opraveno v long-term od 7.24.6, v stable od 7.25.1 a devel od 7.26beta5.

    vencour | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (21%)
     (30%)
     (9%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2985 hlasů
     Komentářů: 34, poslední 26.10. 08:24
    Rozcestník

    Dotaz: Čítanie úrovne na RxD na sér. porte...

    22.6.2012 21:23 marallo | skóre: 4 | blog: marallo | Dubnica nad Vahom
    Čítanie úrovne na RxD na sér. porte...
    Přečteno: 712×
    Dobrý večer.

    Píšem jeden program ktorý číta úrovne jednotlivých vstupov na sériovom porte. Vstupy CTS, DSR, RI a DCD viem čítať pomocou hodnoty v registri "Baseadress + 6", no potrebujem čítať aj úroveň na RxD. Nikde som nenašiel ako na to. Poradíte prosím?

    Ďakujem.
    diakritiku neuznavam, a na chyby kaslem...

    Řešení dotazu:


    Odpovědi

    22.6.2012 22:05 com
    Rozbalit Rozbalit vše Re: Čítanie úrovne na RxD na sér. porte...
    zdravim,

    myslim ze sa to neda. Rx a Tx su urcene na seriovy prenos.

    pripoj si k seriovemu portu mikroprocesor...

    Vynikajuce clanky (jedny z najlepsich na tomto portali) su tu:

    http://www.abclinuxu.cz/clanky/hardware/seriova-komunikace-pod-linuxem-i

    http://www.abclinuxu.cz/clanky/hardware/jednocipy-pod-linuxem-i
    23.6.2012 07:05 marallo | skóre: 4 | blog: marallo | Dubnica nad Vahom
    Rozbalit Rozbalit vše Re: Čítanie úrovne na RxD na sér. porte...
    Dík za odpoveď. TxD sa ovládať dá cez register BaseAdress + 3. Ak tam zapíšeme hodnotu 64, TxD sa prepne do log. 1. To mám v praxi odskúšané. Ale pre RxD som podobnú fintu nenašiel...
    diakritiku neuznavam, a na chyby kaslem...
    Josef Kufner avatar 23.6.2012 10:25 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Čítanie úrovne na RxD na sér. porte...
    Obávám se, že máš smůlu.
    Hello world ! Segmentation fault (core dumped)
    Jendа avatar 23.6.2012 12:35 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Čítanie úrovne na RxD na sér. porte...
    <prasárna>Co zkusit přijmou bajt a podívat se, jestli obsahuje jedničky nebo nuly?</prasárna>
    Řešení 1× (linuxik)
    23.6.2012 19:57 Marble | skóre: 27 | blog: marble
    Rozbalit Rozbalit vše Re: Čítanie úrovne na RxD na sér. porte...
    Prasárna, neprasárna, hlavně to nebude fungovat protože pro příjem bytu potřebuješ start a stop.
    23.6.2012 20:10 Marble | skóre: 27 | blog: marble
    Rozbalit Rozbalit vše Re: Čítanie úrovne na RxD na sér. porte...
    Pokud ti nevadí jisté zpoždění, mělo by to jít sledovat přes BREAK (a taktéž se pomocí BREAK dá nastavit výstup do nuly). Ke přečtení v Line Status registru, pokud mapování pro procesor odpovídá registrům 16550 chipu, tak je to adresa +5, bit 4.

    Ale přecijen BREAK je spíš chybový stav, než úroven pinu, takže se to možná nebude chovat podle tvých představ. Pokud víš jaký konkrétní UART obvod používáš, koukni na jeho datasheet, jinak doufej, že to bude odpovídat chování 16550, což znamená především to, že přečtením registru se příznak BREAK vynuluje a zpět se nastaví asi až po vypršení času dalšího znaku (bez záruky, přečti si datasheet!).
    23.6.2012 20:14 Marble | skóre: 27 | blog: marble
    Rozbalit Rozbalit vše Re: Čítanie úrovne na RxD na sér. porte...
    PS: tvůj uváděný postup pro TX je právě "Set Break" bit. Koukni třeba sem: http://www.datasheetcatalog.org/datasheet/nationalsemiconductor/DS008652.PDF a trochu si počti místo zkoušení "fíglů". :)
    25.6.2012 12:39 marallo | skóre: 4 | blog: marallo | Dubnica nad Vahom
    Rozbalit Rozbalit vše Re: Čítanie úrovne na RxD na sér. porte...
    Ďakujem za odpovede. Oneskorenie mi vadí, je tam dosť rýchla slučka. Zatiaľ som to odložil na neskôr, datasheet som si vytlačil, keď budem mať čas, preštudujem to. Pekný deň...
    diakritiku neuznavam, a na chyby kaslem...
    28.6.2012 09:24 mluno
    Rozbalit Rozbalit vše Re: Čítanie úrovne na RxD na sér. porte...
    Já osobně jsem tento problém řešil před časem. Přímé ovládání linek portu ale nedoporučuju. Měl jsem zařízení, které takto kdysi komunikovalo (RXD ale nevyužívalo), ale 10 let leželo ladem a když jsem ho chtěl rozchodit, narážel jsem na mnohé problémy. Snad jsem i našel knihovny, kde je toto vyřešené. Číst RxD žřejmě nejde, nebo jsem na to nepřišel, ostatní linky je možné ovládat a číst ve všech rozumných systémech (protože se někdy používají pro handshake). I s tím nastavením breaku jsem měl problém, zatimco příkazy typu set_DCD a get_CTS jsem objevil, s tim brejkem to bylo nějaké složitější. Rozuzlení přišlo samo, v tu dobu jsem si začal hrát s atmely. Kromě jiného obsahují na čipu jeden nebo více sériových portů. A tak jsem pro komunikaci svého zařízení použil normální sériový protokol (mě stačilo 9600Bd, ale lze daleko víc). Cena atmelu je 50-100 korun. Použil jsem ATtiny2313, který se akorát vešel do volného místa na destičce. Psaní programu v AVR studiu (na stránkách atmelu), které obsahuje i emulátor (já v něm objevil několik chyb, ale ty se týkaly timerů, sériová linka je snad ok). Programování přes SPI pomocí ponny prog (programátor obsahuje jen hradla, emulaci SPI dělá ponny prog). Nevím čemu říkáte poměrně rychlá smyčka (pro mě je to třeba 50 mikrosekund), na milisekundy bych si se sériovým portem netroufnul, desítky možná ale stovky milisekund by měly bejt OK. Výhodou tohoto řešení je, že vystačíte s obyčejným sériovým přenosem, který poměrně snadno implementujete napříč operačními systémy (a nemusíte šašit s BA, stačí číslo/označení portu a instrukce pro příjem a odeslání znaku + nějaký init a close), a taky to že to jde i přes USB adaptér a vůbec i pod nepřátelskými systémy jako windows. Kromě toho by část smyčky mohla být v tom atmelu, tam nejsou problém ani mikrosekundy (při 10MHz je jedna instrukce na 0.1-0.4us). Je daleko jednodušší posílat na port písmenka, než nastavovat linky portu. Totéž by šlo asi i jakýmkoliv jiným mikrořadičem, ale s PICy ani ostatními nemám zkušenost (podle příznivců piců jsou atmely na nic, ale nevim, já si skoro totéž myslim o picech). Můžu Vám případně poskytnout svůj program pro ATtiny2313, kde je udělaná obsluha přerušení od příjmu znaku, což by Vám ušetřilo tak dva dny pročítání manuálů a experimentování.

    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.