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í
×
    včera 15:00 | Komunita

    Canonical Launchpad vypíná systém správy verzí Bazaar. Vývojáři mohou své repozitáře do 1. září přemigrovat na Git.

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

    Byla vydána nová verze 2.53.21 svobodného multiplatformního balíku internetových aplikací SeaMonkey (Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 2
    včera 12:33 | Komunita Ladislav Hagara | Komentářů: 7
    včera 11:22 | Komunita

    Na Indiegogo byla spuštěna kampaň na podporu linuxového telefonu Liberux NEXX s osmijádrovým procesorem Rockchip RK3588S, 32 GB LPDDR4x RAM a 6.34″ 2400×1080 OLED displejem. Cena telefonu je 1 310 eur.

    Ladislav Hagara | Komentářů: 2
    včera 11:11 | Komunita

    Miro Hrončok vyhrál volby do Fedora Council. Mezi sedmi kandidáty, kteří se ucházeli o dvě křesla, nakonec získal nejvíce hlasů - 1089. Česká komunita má tak po delší době opět zástupce v nejvyšším orgánu Fedory.

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

    Redox OS (Wikipedie), tj. mikrokernelový unixový operační systém naprogramovaný v programovacím jazyce Rust, nově podporuje X11 a GTK 3.

    Ladislav Hagara | Komentářů: 0
    včera 02:55 | IT novinky

    Dnes po celém světě startuje prodej herní konzole Nintendo Switch 2.

    Ladislav Hagara | Komentářů: 6
    4.6. 14:33 | Zajímavý článek

    Stovky Indů předstíraly, že jsou neuronová síť. Vzestup a pád Builder.ai.

    Ladislav Hagara | Komentářů: 10
    4.6. 13:33 | Komunita

    Při operaci Pavučina, tj. rozsáhlé diverzní akci ukrajinských bezpečnostních sil, provedené 1. června 2025, při které byly bezpilotními kvadrokoptérami napadeny ruské strategické letecké základny hluboko na území Ruské federace, byl použít [𝕏] svobodný software ArduPilot (Wikipedie). Zdrojové kódy jsou k dispozici na GitHubu pod licencí GNU GPLv3.

    Ladislav Hagara | Komentářů: 31
    4.6. 10:44 | Zajímavý článek

    V polovině května uplynul jeden rok od spuštění aukcí CZ domén, které provozuje sdružení CZ.NIC. Hlavním cílem bylo zpřístupnit uvolňované domény z registru (po expiraci nebo smazání) většímu okruhu zájemců. Před spuštěním aukcí se totiž k takovým doménám dostávalo jen několik málo subjektů, které uvolňované domény „odchytávaly“ s velkou úspěšností díky automatizovaným systémům k tomu připraveným. Běžný zájemce neměl reálnou šanci

    … více »
    Ladislav Hagara | Komentářů: 1
    Jaký je váš oblíbený skriptovací jazyk?
     (55%)
     (33%)
     (7%)
     (2%)
     (0%)
     (0%)
     (3%)
    Celkem 209 hlasů
     Komentářů: 14, poslední 2.6. 08:30
    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: 402×
    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á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.