W celu opisu protokołów komunikacyjnych sterowników oraz innych urządzeń wykorzystano pewien nieformalny (własny) sposób zapisu:
Znaki kodów ASCII, które można bezpośrednio przedstawić na ekranie są przedstawiane bezpośrednio.
Znaki kodów ASCII, których nie można bezpośrednio przedstawić na ekranie są zapisywane następująco: [KOD], gdzie KOD jest kodem znaku ASCII zapisanym w postaci szesnastkowej.
Przykład: [0x0D] odpowiada znakowi ^M
Uwaga: ze względu na niejednoznaczność znaku SPACJA będzie on również zapisywany w postaci kodu ASCII ([0x20]).
Bloki danych zawierające jeden typ danych oznaczane są nazwami. Nazwa jest zawsze pisana dużymi literami, zamiast spacji używany jest znak łącznika (_), dopuszcza się stosowanie polskich znaków.
Przykład: SUMA_KONTROLNA
Bloki danych zawierające kilka typów danych lub kilka danych tego samego typu mają nazwę ujętą w nawiasy klamrowe ({}). Format nazwy jest taki sam jak dla pojedynczych typów danych.
Przykład: {NAGŁÓWEK}
Bloki danych stanowiących listę mają nazwę ujętą w nawiasy klamrowe oraz myślniki ({--}). Format nazwy jest taki sam, jak dla pojedynczych typów danych.
Pojedyncze zmienne konfiguracyjne (np. numer urządzenia) są przedstawiane następująco: <?>, gdzie znak ? może zostać zastąpiony opisową nazwą danej zmiennej.
Przykład: <val>
Do oznaczenia typów protokołów ze względu na charakter przesyłanych danych stosuje się następujące oznaczenia:
<-ASCII_D-> - Protokół w którym wartości liczbowe są przesyłane w postaci cyfr zapisanych w kodzie ASCII 0x30 + cyfra (0..9) (liczba jest przesyłana w sposób tekstowy). Długość tego protokołu jest uzależniona od ilości cyfr.
Przykład: liczba 12345 odpowiada przesyłanym znakom [0x31][0x32][0x33][0x34][0x35].
<-ASCII_X-> - Protokół w którym wartości liczbowe są przesyłane w postaci liczb szesnastkowych zapisanych w kodzie ASCII [0x30 + cyfra (0..9)] lub litera [(0x41..0x46 lub 0x61..0x66)] = (A..F lub a..f) (liczba jest przesyłana w sposób tekstowy). Długość tego protokołu jest zazwyczaj (choć nie zawsze) stała - typy zmiennych ustalone są z góry. Puste pola są wypełniane znakami [0x30] (0).
Przykład: liczba 100 (dziesiętne, przesyłane jako int) odpowiada przesyłanym znakom [0x30][0x30][0x36][0x34]
<-ASCII_B-> - Protokół w którym wartości liczbowe są przesyłane w postaci binarnej. Pola zawierające wartości binarne są oznaczane przy pomocy nazw i nawiasów kwadratowych. Format nazw jest taki sam jak np. dla bloków danych. Długość tego protokołu może być stała lub zmienna.
Przykład: liczba 100 odpowiada przesyłanemu znakowi [0x64]
Poprzedni | Spis treści | Następny |
Tabela oporności czujników Pt100 | Tabela kodów ASCII |