Komunikační port

Komunikace


 

bm1060         otevření portu (-1=chyba)

 

Prvek otevření portu otevře port se zadaným jménem a nastaví port jako aktivní. Jako parametr prvku se zadává jméno portu nebo komunikačního zařízení. Pro sériové porty to je jméno COM1, COM2 atd. Prvek navrací identifikační číslo, které slouží k výběru aktivního portu. Současně může být otevřeno několik portů, pomocí identifikačního čísla lze vybírat aktivní port, s kterým se bude pracovat, aniž by byl přenos přes ostatní porty přerušen. Při chybě otevření (chybné jméno portu nebo port je používán jiným programem) prvek navrací číslo -1, jinak navrací číslo >= 0.

 

bm1061         zavření portu

 

Příkaz zavření portu uzavírá port, jehož identifikační číslo je zadáno jako parametr prvku. Po zavření portu může být port využíván jinými programy. Při ukončení programu jsou všechny porty uzavřeny automaticky.

 

bm1062         aktivní port

 

Prvek aktivní port určuje aktivní port, s kterým budou prováděny další operace. Jako parametr se zadává identifikační číslo, které bylo navráceno při otevření portu. Identifikační číslo je pouze jakýsi vnitřní ukazatel v tabulce otevřených portů. Změnou aktivního portu není činnost žádného z portů ovlivněna.

 

bm1063         přenosová rychlost

 

Prvek přenosová rychlost určuje přenosovou rychlost sériového portu v Baudech. Pro standardní port COM jsou povoleny následující přenosové rychlosti:

 

  110 Baud

  150 Baud

  300 Baud

  600 Baud

  1200 Baud

  2400 Baud

  4800 Baud

  9600 Baud

  14400 Baud

  19200 Baud

  28800 Baud

  38400 Baud

  56000 Baud (pouze některé typy COM)

  57600 Baud

  115200 Baud

  128000 Baud (pouze některé typy COM)

  256000 Baud (pouze některé typy COM)

 

bm1064         2 stopbity

 

Prvek 2 stopbity je logický příznak určující, zda bude přenosový protokol používat 2 stopbity (resp. 1.5 bitu pro délku znaku 5 bitů ). Při vypnutém příznaku bude použit 1 stopbit.

 

bm1065         počet bitů (5 až 8)

 

Prvek počet bitů určuje počet bitů na znak. Povoleny jsou hodnoty 5, 6, 7 a 8 bitů. Pro délky znaků 5 a 6 bitů jsou přijaté znaky (při příjmu jako text, neplatí pro příjem jako číslo) převedeny na tisknutelné znaky přičtením hodnoty 64 (tj. znak 0 se změní na "@", znak 1 na "A" atd.). Při vysílání se nadbytečné bity ignorují, např. znak "A" se při počtu bitů 5 změní na hodnotu 1.

 

bm1066         parita (0=není, 1=lichá, 2=sudá, 3=značka, 4=mezera)

 

Prvek parita určuje způsob kontroly přenášených dat doplňujícím paritním bitem. Při chybně přeneseném znaku (chybná parita) je znak nahrazen nejvyšším platným znakem (pro 8 bitů číslo 255, pro 7 bitů 127, pro 6 bitů 63, pro 5 bitů 31). Povolené jsou následující hodnoty:

 

  0 = žádná parita

  1 = lichá parita

  2 = sudá parita

  3 = parita značkou

  4 = parita mezerou

 

bm1067         byl přijat znak

 

Prvek byl přijat znak je logický příznak indikující, zda je připraven přijatý znak.

 

bm1068         vysílání povoleno (CTS, RTS)

 

Prvek vysílání povoleno je příznak určující hodnotu řídicích signálů pro požadavek o vysílání. Přenos dat není tímto signálem ovlivněn, záleží na programu, jak signál využije. Zápisem logické hodnoty do prvku se ovlivňuje stav řídicího signálu RTS (běžně používáno jako požadavek, aby protějšek vysílal). Čtením prvku lze zjistit stav řídicího signálu CTS (používáno jako vstup výzvy protějšku k vysílání).

 

bm1069         příjem povolen (DSR, DTR)

 

Prvek příjem povolen je příznak určující hodnotu řidicích signálů pro požadavek o příjem. Přenos dat není tímto signálem ovlivněn, záleží na programu, jak signál využije. Zápisem logické hodnoty do prvku se ovlivňuje stav řídicího signálu DTR (běžně používáno jako informace protějšku o vlastní připravenosti nebo jako potvrzení platnosti vysílaných dat k protějšku). Čtením prvku lze zjistit stav řídicího signálu DSR (používáno jako vstup potvrzení připravenosti protějšku nebo jako potvrzení platnosti dat vysílaných protějškem).

 

bm1070         číslo

 

Prvek číslo je číselná proměnná sloužící k vysílání a příjmu znaku ve formě číselného kódu. Zápisem čísla do prvku se zajistí odeslání znaku k protějšku. Program je po dobu odesílání znaku zastaven, maximálně však 0.1 sekundy. Číselná hodnota znaku může být v rozmezí 0 až max. hodnota podle počtu bitů na znak (pro 8 bitů 255, pro 7 bitů 127, pro 6 bitů 63, pro 5 bitů 31), hodnoty mimo tento rozsah se zarovnají do správného intervalu operací modulo. Čtením hodnoty prvku se provede příjem znaku. Příjem probíhá na pozadí za běhu programu. Prvkem byl přijat znak je možné testovat, zda je připraven přijatý znak. Není-li znak připraven, čeká prvek na přijetí znaku, maximálně však 0.1 sekundy. Nebyl-li žádný znak přijat, vrací prvek číslo 0. Při zapnuté kontrole znaků pomocí parity je při chybě přenosu navrácen znak odpovídající poslednímu platnému znaku (pro 8 bitů číslo 255, pro 7 bitů 127, pro 6 bitů 63, pro 5 bitů 31).

 

bm1071         znak (text)

 

Prvek znak (text) je textová proměnná sloužící k vysílání a příjmu znaku (popř. textu). Zápisem znaku (nebo i delšího textu) do prvku se zajistí odeslání znaku (textu) k protějšku. Program je po dobu odesílání znaku zastaven, maximálně však 0.1 sekundy na každý znak. Číselná hodnota znaků může být v rozmezí 1 až max. hodnota podle počtu bitů na znak (pro 8 bitů 255, pro 7 bitů 127, pro 6 bitů 63, pro 5 bitů 31), hodnoty mimo tento rozsah se zarovnají do správného intervalu operací modulo. Čtením hodnoty prvku se provede příjem jednoho znaku (ne textu). Pro 5 a 6 bitů jsou znaky převedeny na zobrazitelné znaky přičtením hodnoty 64 ke kódu znaku (tj. znaky "@", "A" atd). Příjem probíhá na pozadí za běhu programu. Prvkem byl přijat znak je možné testovat, zda je připraven přijatý znak. Není-li znak připraven, čeká prvek na přijetí znaku, maximálně však 0.1 sekundy. Nebyl-li žádný znak přijat, vrací prvek prázdný text (stejně tak při příjmu znaku s kódem 0 při 7 a 8 bitech). Při zapnuté kontrole znaků pomocí parity je při chybě přenosu navrácen znak odpovídající poslednímu platnému znaku (pro 8 bitů číslo 255, pro 7 a 6 bitů 127, pro 5 bitů 63).