Podobné dokumenty


1.2 Realizace èekání pomocí jednoduché programové smyèky Pøíklad 3: Chceme-li, aby dítì blikalo baterkou v co nejpøesnìjším intervalu, øekneme mu: Roz

3/ %,1'(& 83'1 &( &3 )XQNFH. + ; ; ; ; / ; ; + ; EH]H]PuQ\

11 Elektrické specifikace Mezní parametry* Okolní teplota pøi zapojeném napájení 40 C až +125 C Skladovací teplota 65 C až +150 C Napájecí napìtí na V

VLASTNOSTI PLOŠNÝCH SPOJÙ




Spínaèe jsou elektrické pøístroje, které slouží k zapínání, pøepínání a vypínání elektrických obvodù a spotøebièù. Podle funkce, kterou vykonávají, je

0RW\O3LFWXUH%R[ 7LPHU7LPHU

12 15 Instalace mikroturbíny v blokové plynové výtopnì " ZADÁNO: Instalace mikroturbíny v blokové plynové výtopnì Zjistìte: 1 Zda je ekonomicky výhodn

Vytváøení sí ového diagramu z databáze: pøíklad


Skládaèka Obr 48 G15 VBP Co to dìlá: Naète vybraný obrázek (vybraný pomocí CommonDialog1), vytvoøí MxN komponent PictureBox obsahujících odpovídající


baspelin KTR baspelin RPS Popis komunikaèního protokolu

Izolaèní zesilovaèe s IL300 Zapojení izolaèních zesilovaèù s IL300 se liší pøedevším režimem v nichž pracují interní fotodiody Podle toho zda interní


:5$ =islv GDW V DOWHUQDFt QHMY\ããtKRELWX







Programovací manuál [CZ] Domovník [ACU 100] Elektronický identifikaèní systém

NULOROVÉ MODELY Spokojíme-li se pouze se základní analýzou elektronického obvodu s ideálními prvky, osvìdèuje se èasto užití nulorových modelù aktivní

PESexcl. PODPORA PRO VÝMÌNU DAT S APLIKACÍ MICROSOFT EXCEL s využitím DDE serveru PESdde

9. Harmonické proudy pulzních usměrňovačů




CTR pro optoèlen s LED a tranzistorem:,& &75 = [%] U, CE = const ) Obvykle CTR urèíme pøi I F = 10 ma a U CE = 5 V. Hodnoty zjistíme z tabulky.,& &75


baspelin CPM Popis komunikaèního protokolu CPM KOMPR

3.1 Útlum atmosférickými plyny Rezonance molekul nekondenzovaných plynù obsažených v atmosféøe zpùsobuje útlum šíøících se elektromagnetických vln. Ab

kap..2 Plochy (Surfaces) Plochy jsou rozšíøením NURBS køivek. Zatímco køivka NURBS používala jednorozmìrnou interpolaci (U), u ploch je navíc pøidán d


KOMUNIKAÈNÍ DDE SERVER PRO AUTOMATY MICROPEL VERZE 2.3 POPIS ROZHRANÍ A OVLÁDÁNÍ

14 UKAZATELE A ØETÌZCE

NOiYHVQLFH SVDFtKR VWURMH Í (Q Ï Á. (VF ) )SURJUDPRYDWHOQpNOiYHV\) ) 3VF 6F/ 3DX NRQWURON\ ,QV +RPH 3J8S 7DE 'HO (QG 3J'Q &DSV/ (QWHU Í 6KLIW


Wie232. Převodník rozhraní Wiegand z bezkontaktních čteček na RS června 2011 w w w. p a p o u c h. c o m




2 PARALELNÍ ROZHRANÍ Paralelní rozhraní realizuje pøenos dat mezi vnitøní sbìrnicí øídicího systému a vnìjším prostøedím po znacích, neboli po slabiká

2kapitola 2 ŠÍØENÍ VLN V ZÁSTAVBÌ PRO MOBILNÍ BUÒKOVÉ SYSTÉMY 2.1 Šíøení vln v pásmu UHF Mobilní spoj Šíøení v poloprostoru

LD232. Prodloužení RS232. Sada k prodloužení linky RS232 až na 1200 m s galvanickým oddělením. 11. července 2011 w w w. p a p o u c h.

/2*,.$ 5(6(7 Ë=(1Ë +$/7 *(1(5È ',129é & 6./ $/8. ' /,ý. ýë7$ý 5(*,675 5(*, é. 6e5,29é 5(*,675 * $.808/È725 5:0. %8',ý(/ 45(*,675 5(*

9 3 SÉRIOVÝ PORT MIKROKONTROLÉRU 8051 Interní sériový port mikrokontroléru 8051 umožòuje jednoduché a bezproblémové spojení mikrokontroléru s poèítaèe


2.4 Cykly 2. ZÁKLADY JAZYKA C




Hlavní obrazovka displeje je rozdìlena do pìti základních monitorovacích oken a tlaèítka slou ícího ke vstupu do nastavení zaøízení.



Použít technické služby SMS



Buffer 16kB pro sériovou linku RS232 s konverzí rychlosti, parity, počtu datových bitů a stopbitů

nažhavováním elektronek, takže nedochází k neúmìrnému pøetìžování filtraèních kondenzátorù pøi nábìhu anodového proudu. Polovodièový usmìròovaè vytvoø

USB komunikační adaptér RS virtuální sériový port ELO E215. Uživatelský manuál

HPS-120. Manuál nastavení bezdrátového modemu




Analýza dějů na rozhraní RS 232 C



OHGHQ ~QRU E H]HQ GXEHQ NY WHQ þhuyhq. SROROHWt

MONTÁŽNÍ NÁVOD RSLAN. Komunikační převodník RS485-TCP/IP






RS , , RS 485, USB, GSM/GPRS

TECHNICKÉ ÚDAJE... 2 BEZPEČNOSTNÍ UPOZORNĚNÍ... 3 POPIS PŘÍSTROJE... 5 POUŽITÍ PŘÍSTROJE...


]PHQãLWIRQW ]Y WãLWIRQW QDVWDYLWIRQW XORåLWVRXERU Y\WLVNQRXWVRXERU Y\WYR LWQRYêVRXERU

FOTOELEKTRICKÝ IZOLÁTOR SÉRIOVÉHO ROZHRANÍ RS-232


PESprint. TISKOVÁ BRÁNA SYSTÉMU PES aplikace pro komunikaèní procesor - PES-CP24/PRINT


MONTÁŽNÍ NÁVOD RSLAN. Komunikační převodník RS485-TCP/IP


Komerèní využití stavebních návodù je povoleno jen s písemným souhlasem autora a nakladatelství. Soubory na CD ROM mající pøímo vztah ke knize, které

PIC PROGRAMÁTOR Milan Obrtlílk 4. ročník SŠPH Uh. Hradiště

Selec4. Čtyřnásobný přepínač RS232. Přepínání řídicími signály RS232 nebo externími vstupy. 25. listopadu 2011 w w w. p a p o u c h. c o m v.

Správce spojení U¾ivatelská pøíruèka

GSM modem TC35 Návod k instalaci a programování v1.1

2 Deset jednoduchých zkušebních a indikaèních zapojení Na následujících stranách je vidìt, že i velmi jednoduchá zapojení se svìtelnými diodami mohou

T-Mobile SpeedManager. Postup nastavení T-Mobile SpeedManager pro PC/notebook

USB2RS232. Převodník pro připojení USB klávesnice a několika kontaktů přes RS232. Komunikace jednoduchým protokolem

TCP-Wedge ZDARMA. Přidává podporu TCP/IP: Sběr dat z adres portu IP na libovolné síti TCP/IP - ethernet / internet.

([FHQWULFLWD 6WUPRVW

Transkript:

Vážení zákazníci, dovolujeme si Vás upozornit, že na tuto ukázku knihy se vztahují autorská práva, tzv. copyright. To znamená, že ukázka má sloužit výhradnì pro osobní potøebu potenciálního kupujícího (aby ètenáø vidìl, jakým zpùsobem je titul zpracován a mohl se také podle tohoto, jako jednoho z parametrù, rozhodnout, zda titul koupí èi ne). Z toho vyplývá, že není dovoleno tuto ukázku jakýmkoliv zpùsobem dále šíøit, veøejnì èi neveøejnì napø. umis ováním na datová média, na jiné internetové stránky (ani prostøednictvím odkazù) apod. redakce nakladatelství BEN technická literatura redakce@ben.cz

10 SÉRIOVÝ PØENOS DAT V prvých kapitolách této knihy jsme používali sériový port úplnì jinak, než jeho vývojáøi zamýšleli Vlastní úèel tohoto portu byl pøenos dat pøes modemy Oznaèení jako Ring Indicator (indikátor zvonìní) nebo Data Terminal Ready (pøipravenost koncového zaøízení) o tom ještì svìdèí V prùbìhu èasu se port stále více osvìdèoval v jiných oblastech Nejvìtší rozšíøení nalezlo pøipojení poèítaèové myši na RS232 Pùvodnì si asi nikdo netroufal ani snít o tom, že na RS232 jednou bude pracovat zaøízení s vlastním mikrokontrolérem, které dokonce z portu odebírá napájecí napìtí Vlastní úèel sériového portu je pøenos dat na linkách TxD a RxD Data jsou hardwarem portu pøevádìna na sériový tok bitù a vysílána na cestu Na pøijímací stranì vyrábí druhý port ze sériového toku dat opìt paralelní datové bajty, které mohou být dále zpracovávány poèítaèem To celé je pøíkladem zdaøilé dìlby práce mezi softwarem a hardwarem Vyslání jednoho znaku pøes sériový port vyžaduje ve srovnání s jinými operacemi mnoho èasu Jedná se zde o milisekundy, zatímco jinak jde spíše o mikrosekundy Port v PC proto obsahuje speciální hardwarovou souèástku, univerzální sériový vysílaè/ pøijímaè (Universal Serial Receiver Transmitter, UART), který je jakousi telegrafní stanicí poèítaèe PC Sem se pøedávají zprávy a samostatnì se vysílají A naopak UART samostatnì pøijímá zprávy a ukládá je tak, aby si je program mohl jedinou akcí vyzvednout Typickou úlohou pro sériový port je pøenos dat z jednoho poèítaèe do druhého Vìtšinou se jedná o textová data, ale také programy, obrazy, atd Posílají se i jednotlivé bajty, tedy skupiny osmi bitù Port je však možno nastavit i tak, že jednotlivé znaky mají jen 7 bitù Podporovány jsou dokonce i pìtibitové znaky, což je vzpomínka na doby starých dálnopisù, které mechanicky provádìly tentýž úkol, jen mnohem pomaleji a hluènìji 10 1 Propojení nulovým modemem V prvním pokusu propojíme dva poèítaèe PC, aby bylo možno posílat znaky z jednoho do druhého a naopak Je k tomu nutné pøekøížené propojení linek TxD a RxD Takovému propojení se øíká nulový modem, protože zde vlastnì žádný modem není použit Zatímco na velké vzdálenosti se používají telefonní linky a modemy, na vzdálenost nìkolika metrù vystaèíme s normálními kabely Pokus ostatnì mùžeme provádìt i s jediným poèítaèem, který si pøes sériový port sám posílá data Elektronika s podporou PC Visual Basic v praxi 95

Obr 10 1 Propojení nulovým modemem a test pomocí jediného portu Pro sériový pøenos dat obsahuje knihovna PORT DLL proceduru SENDBY- TE a funkci READBYTE Dalším pøedpokladem pro úspìšný pøenos dat je, aby porty obou partnerù byly inicializovány se stejnými parametry Pomocí OPENCOM COM2:1200:N, 8,1 se sjednotíme na tìchto parametrech: pøenosová rychlost 1200 bitù za sekundu (1200 baudù), žádný paritní (kontrolní) bit, osm bitù na znak a jeden stopbit Tìmito parametry se budeme ještì podrobnìji zabývat Program v prvním pøíkladu pøenáší pøi každém pøíkazu jen jeden bajt Partnerovi se v tomto pøípadì bude pøedávat poloha posuvníku jako èíselná hodnota mezi 0 a 255 Obrácenì se každý pøijatý bajt zobrazí v textovém oknì Obr 10 2 Vysílání a pøíjem jednotlivých bajtù Private Sub Form_Load() OPENCOM "COM2" Private Sub Form_Unload(Cancel As Integer) CLOSECOM Private Sub Command1_Click() d = HScroll1 Value SENDBYTE d 96 Elektronika s podporou PC Visual Basic v praxi

Private Sub Timer1_Timer() d = READBYTE If d > -1 Then Text1 Text = Str$(d) Listing 10 1 Vysílání a pøíjem jednotlivých bajtù (rsbyte1 vbp) 10 2 Univerzální terminálový program Pro práci s portem RS232 èasto potøebujeme terminálový program, který zobrazuje pøijatá data a umožòuje výstup dat Pod Windows již jeden takový terminál máme Hyperterminal Pomocí nìho lze napø pøenášet data pøes modem Zde však pøesto vyvineme terminálový program, který je možno co nejuniverzálnìji používat speciálnì pro obecné vývojové úlohy Uživatel mùže pøímo zadávat øetìzec pro otevøení portu a otevøít port s požadovanými daty V tìch pøípadech, kdy pøenosové charakteristiky zaøízení nejsou pøesnì známy, je možno je rychle vyzkoušet Po každé zmìnì otvíracího øetìzce a stisknutí tlaèítka New se port zavøe a otevøe se s novými parametry Tatáž sériová data je možno interpretovat dvìma zcela rozdílnými zpùsoby První zpùsob se jedná o øídicí data v bajtovém formátu, tedy jednoduše o èíselné hodnoty v rozsahu 0 až 255 V tomto pøípadì hovoøíme o binárním formátu Pøíkladem byl pøenos polohy posuvníku v pøedchozím odstavci Tento režim využívají èetné mìøicí pøístroje a zaøízení jako poèítaèové myši nebo jiná ukazovací zaøízení Druhý zpùsob interpretuje pøenášená data jako text Textové znaky jsou také vždy bajty Obr 10 3 ukazuje pøenos textových znakù Linky TxD a RxD byly pro tento test pøímo propojeny, takže zadávaný vysílaný text byl týmž portem opìt pøijímán Znaková sada ASCII, jak známo, definuje, jakou èíselnou hodnotou je reprezentován každý textový znak Napøíklad èíselná hodnota 65 odpovídá velkému A, 49 èíslici 0 Ten, kdo pøenáší data, se obvykle nestará o ASCII kód Jsou však i pøípady, u nichž má podrobnìjší posuzování smysl Máme-li napø za úkol dotazovat se programem na stav mìøicího pøístroje vybaveného sériovým portem, èasto se v návodu k obsluze ocitneme v džungli nejasných informací Textová a binární data se èasto míchají dohromady Terminálový program podle Listingu 10 2 podporuje od poèátku obì interpretace znakù Pøicházející data se souèasnì zobrazují jako bajty i jako tex- Elektronika s podporou PC Visual Basic v praxi 97

tové znaky Pak velmi rychle poznáme, co je mínìno Také pøi vysílání máme možnost použít oba formáty Ve spodním oknì se jednoduše na uká text, který se znak po znaku pøenáší Naproti tomu v horním oknì se zadávají èíselné hodnoty od 0 do 255 a potvrzují se klávesou Enter Obr 10 3 Pøenos textu pomocí terminálového programu Dim n Private Sub Check1_Click() If Check1 Value Then DTR 1 Else DTR 0 Private Sub Check2_Click() If Check2 Value Then RTS 1 Else RTS 0 Private Sub Command1_Click() CLOSECOM OPENCOM Text1 Text DTR 0 98 Elektronika s podporou PC Visual Basic v praxi

Check1 Value = False RTS 0 Check2 Value = False Private Sub Command2_Click() Text2 Text = " " Text3 Text = " " Text4 Text = " " Text5 Text = " " Private Sub Form_Load() OPENCOM "COM2:1200,N,8,1" DTR 0 Check1 Value = False RTS 0 Check2 Value = False Private Sub Form_Unload(Cancel As Integer) CLOSECOM Private Sub Text2_Change() If Text2 Text > "" Then Char = Asc(Right$(Text2 Text, 1)) If Char = 10 Then Byt$ = (Right$(Text2 Text, 5)) dat = Val(Byt$) dat = dat And 255 SENDBYTE dat End If Private Sub Text4_KeyPress(KeyAscii As Integer) SENDBYTE KeyAscii Private Sub Timer1_Timer() Do dat = READBYTE If dat > -1 Then Text3 Text = Text3 Text + Str$(dat) + " " n = n + 1 If n = 8 Then n = 0: Text3 Text = Text3 Text + Chr(13) + Chr(10) Text3 Refresh Elektronika s podporou PC Visual Basic v praxi 99

End If If (dat > -1) And (dat <> 13) And (dat <> 19) Then Text5 Text = Text5 Text + Chr$(dat) End If If dat = 13 Then Text5 Text = Text5 Text + Chr$(13) + Chr$(10) Text5 Refresh End If Loop Until dat = -1 If CTS = 1 Then Check3 Value = 1 Else Check3 Value = 0 If DSR = 1 Then Check4 Value = 1 Else Check4 Value = 0 If DCD = 1 Then Check5 Value = 1 Else Check5 Value = 0 If RI = 1 Then Check6 Value = 1 Else Check6 Value = 0 Listing 10 2 Terminál RS232(Terminal vbp) Pøi vysílání textu zadávaného ve spodním oknì (Text4) se beze zmìny pøenášejí znaky, které odpovídají stisknutým tlaèítkùm Visual Basic dodává hodnotu znaku pro pøenos v promìnné KeyAscii, kterou je možno pøímo pøedat proceduøe SENDBYTE Také klávesa Enter dává znak, a to znak posuv o øádek (Line Feed, LF) s hodnotou 10 Interpretace èíselných hodnot v horním textovém oknì (Text2) je trochu pracnìjší Program musí nejprve poèkat, až uživatel potvrdí zadání èísla klávesou Enter Text pak na posledním místì obsahuje znak LF = 10 Potom se oddìlí poslední ètyøi znaky a pøevedou se z textu na èíselné hodnoty Ty musí být v rozsahu 0 až 255 K zabezpeèení proti chybnému vstupu vìtších èísel se pøedaná hodnota omezí pomocí AND 255 Pøíjem znakù probíhá v proceduøe timeru Každých 100 ms se zjiš uje, zda pøišel znak Aby nedošlo k zácpì, všechny pøíchozí znaky se pokaždé naètou a zpracují, dokud READBYTE nedá výsledek 1, tj dokud nenarazí na prázdný buffer Pøijaté znaky se zobrazí v obou výstupních oknech Text3 a Text5 Pøi výstupu v èíselném formátu v textovém oknì Text3 jsou èíselné hodnoty uspoøádány do øádkù vždy po osmi bajtech Potom následuje zlom øádku se speciálními znaky Line Feed (LF, ASCII 10) a Carige Return (CR, ASCII 13) Výstup textu v oknì Text5 musí rovnìž zvláštním zpùsobem zpracovávat konec øádku Speciální znak LF se zachytí a nahradí znaky LF a CR Všechny ostatní znaky se pøímo pøidají k textu Výsledkem je zobrazení textu pøesnì tak, jak byl zadán ve vstupním oknì 100 Elektronika s podporou PC Visual Basic v praxi