ModBus: Datu tipi
Datu tips | Apraksts |
---|---|
INT16 | Vesels skaitlis diapazonā no -32768 līdz 32767. |
UINT16 | Vesels skaitlis diapazonā no 0 līdz 65535. |
ENUM | Ir uzskaitījums. Var tikt iestatīta tikai viena no parametros uzskaitītajām vērtībām. |
BOOL | Būla vērtība ir parametrs ar tieši diviem stāvokļiem (0 – nepatiess / false un 1 – patiess / true). Vispārēji visas vērtības, kas lielākas par nulli, tiek vērtētas kā true. |
BITMAP* | Ir 16 Būla vērtību (bitu) kopsavilkums. Vērtības tiek rādītas no 0 līdz 15. Reģistrā lasāmo vai rakstāmo skaitli veido summa no visu bitu ar vērtību 1 skaitļa 2 pakāpes atbilstoši tās indeksam.
|
BITMAP32 | Ir 32 Būla vērtību (bitu) kopsavilkums. Aprēķināšanas detaļas, lūdzu, pārlasiet pie Bitmap. |
* Paskaidrojošs piemērs:
Biti 3, 6, 8, 15 ir 1, visi pārējie ir 0. Summa tad ir 23+26+28+215 = 8+64+256+32768 = 33096. Apgrieztais ceļš ir arī iespējams. Turklāt, vadoties pēc bita ar augstāko indeksu, pārbauda, vai nolasītais skaitlis ir lielāks vai vienāds ar divnieka pakāpi. Ja tā ir, tiek likts bits 1 un divnieka pakāpe atņemta no skaitļa. Pēc tam pārbaudi atkārto ar bitu ar nākamo mazāko indeksu un tikko aprēķināto atlikuma skaitli, kamēr nonāk līdz bitam 0 vai atlikuma skaitlis ir nulle. Paskaidrojošs piemērs: Nolasītais skaitlis ir 1416. Bits 15 būs 0, tāpēc ka 1416<32768. Biti no 14 līdz 11 arī būs 0. Bits 10 būs 1, tāpēc ka 1416>1024. Atlikuma skaitlis būs 1416-1024=392. Bits 9 būs 0, tāpēc ka 392<512. Bits 8 būs 1, tāpēc ka 392>256. Atlikuma skaitlis būs 392-256=136. Bits 7 būs 1, tāpēc ka 136>128. Atlikuma skaitlis būs 136-128=8. Biti no 6 līdz 4 būs 0. Bits 3 būs 1, tāpēc ka 8=8. Atlikuma skaitlis būs 0. Tāpat arī pārējie biti no 2 līdz 0.