Robox Library for Cpp: BCC/31 module 1.0.0
RLibCpp BCC/31 protocol implementation
|
Protocol class declaration. More...
#include <protocol.h>
Public Types | |
enum | VarTypes : uint16_t { varInvalid = 0x0 , varBitParamI16 = 0x7 , varBitParamI32 = 0x8 , varBitParamI64 = 0x9 , varBitAxisI16 = 0xA , varBitAxisI32 = 0xB , varBitAxisI64 = 0xC , varBitNvR64 = 0xD , varBitVR64 = 0xE , varBitLogIW16 = 0x10 , varBitLogIW32 = 0x11 , varBitLogOW16 = 0x12 , varBitLogOW32 = 0x13 , varBitPhyIW16 = 0x14 , varBitPhyIW32 = 0x15 , varBitPhyOW16 = 0x16 , varBitPhyOW32 = 0x17 , varBitNvR16 = 0x18 , varBitNvR32 = 0x19 , varBitVR16 = 0x1A , varBitVR32 = 0x1B , varBitMem8 = 0x1C , varBitMem16 = 0x001D , varBitMem32 = 0x1E , varBitAM = 0x1F , varTimerQ = 0x20 , varTimerEN = 0x21 , varTimerET = 0x22 , varTimerPT = 0x23 , varTimerPT2 = 0x24 , varCounterQU = 0x30 , varCounterQD = 0x31 , varCounterCU = 0x32 , varCounterCD = 0x33 , varCounterCV = 0x34 , varCounterPV = 0x35 , varLogU8 = 0x40 , varLogU16 = 0x41 , varLogU32 = 0x42 , varLogU64 = 0x43 , varLogI8 = 0x44 , varLogI16 = 0x45 , varLogI32 = 0x46 , varLogI64 = 0x47 , varLogDouble = 0x48 , varLogFloat = 0x49 , varBitLogU8 = 0x4A , varBitLogU16 = 0x4B , varBitLogU32 = 0x4C , varBitLogU64 = 0x4D , varBitLogI8 = 0x4E , varBitLogI16 = 0x4F , varBitLogI32 = 0x50 , varBitLogI64 = 0x51 , varLogStrZ = 0x52 , varLogIW16 = 0x64 , varLogIW32 = 0x65 , varLogOW16 = 0x66 , varLogOW32 = 0x67 , varLogIC = 0x68 , varLogOC = 0x69 , varPhyIW16 = 0x6A , varPhyIW32 = 0x6B , varPhyOW16 = 0x6C , varPhyOW32 = 0x6D , varPhyIC = 0x6E , varPhyOC = 0x6F , varNvR16 = 0xC8 , varNvR32 = 0xC9 , varNvRR = 0xCA , varNvRRF = 0xCB , varNvSR = 0xCC , varVR16 = 0xCD , varVR32 = 0xCE , varVRR = 0xCF , varVRRF = 0xD0 , varVSR = 0xD1 , varParamI16 = 0xD2 , varParamI32 = 0xD3 , varParamR = 0xD4 , varParamF = 0xD5 , varAxisI16 = 0xD6 , varAxisI32 = 0xD7 , varAxisR = 0xD8 , varAxisF = 0xD9 , varAM = 0xE1 , varAlarmN = 0xE2 , varAlarmS = 0xE3 , varNvR64 = 0xE4 , varVR64 = 0xE5 , varParamI64 = 0xE6 , varAxisI64 = 0xE7 , varSystime = 0x12C , varMemU8 = 0x1F4 , varMemU16 = 0x1F5 , varMemU32 = 0x1F6 , varMemDBL = 0x1F7 , varMemFLT = 0x1F8 , varPortIO8 = 0x1F9 , varPortIO16 = 0x1FA , varMemI8 = 0x1FB , varMemI16 = 0x1FC , varMemI32 = 0x1FD , varMemU64 = 0x1FE , varMemI64 = 0x1FF } |
Variable types. More... | |
enum | EvaFlags : uint32_t { evafEnumStandardVars = 0x1 , evafEnumUserTaskVars = 0x2 , evafEnumLogicalVars = 0x4 , evafForceEnumeration = 0x8 } |
Flags per bccEnumVar. More... | |
Static Public Member Functions | |
static int32_t | maxDataSize () |
Get the maximum data size ( MaxDataSize) | |
Static Public Attributes | |
static const int32_t | MaxRxTimeout |
The default maximum general receive timeout [ms]. | |
static const int32_t | MaxTxTimeout |
The default maximum general send timeout [ms]. | |
static const int32_t | MaxCmdTimeout |
The default maximum command timeout [ms]. | |
static const int32_t | MaxAsciiCmdTimeout |
The default maximum ascii command timeout [ms]. | |
static const int32_t | MaxWDTimeout |
The default maximum watch-dog timeout [ms]. | |
static const int32_t | MaxRxDataTimeout |
The default maximum data receive timeout [ms]. | |
static const int32_t | MaxTxDataTimeout |
The default maximum data send timeout [ms]. | |
static const int32_t | MaxWaitTimeout |
The default maximum wait period [ms]. | |
static const int32_t | MaxHeader = 9 |
static const int32_t | MaxData = 255 |
static const int32_t | MaxMsgSize = (MaxHeader + MaxData) |
Protected Types | |
enum | EvMemTypes { evMemInvalid = 0 , evMemU8 = 1 , evMemI8 = 2 , evMemU16 = 3 , evMemI16 = 4 , evMemU32 = 5 , evMemI32 = 6 , evMemDouble = 7 , evMemFloat = 8 , evMemBool = 9 , evMemChArray = 10 , evMemStruct = 11 , evMemStringZ = 12 , evMemBit = 13 , evMemTimer = 14 , evMemCounter = 15 , evMemU64 = 17 , evMemI64 = 18 } |
Type of variables for bccEnumVar - memory variables. More... | |
enum | EvMemFlags { evMemFHasDim0 = 0x1 , evMemFHasDim1 = 0x2 , evMemFHasDim2 = 0x4 , evMemFHasRepeat = 0x8 , evMemFHasParent = 0x10 } |
Flags for bccEnumVar - memory variables. More... | |
enum | EvLogVFlags { evLogVFNoBits = 0x1 } |
Flags for for bccEnumVar - logical variables. More... | |
enum | EvLogSFlags { evLogSFBegStruct = 0x1 , evLogSFEndStruct = 0x2 , evLogSFNoBits = 0x4 } |
Flags for bccEnumVar - logical structures. More... | |
enum | EvLogTypes { evLogInvalid = 0x0 , evLogI8 = 0x1 , evLogU8 = 0x2 , evLogI16 = 0x3 , evLogU16 = 0x4 , evLogI32 = 0x5 , evLogU32 = 0x6 , evLogI64 = 0x7 , evLogU64 = 0x8 , evLogStringZ = 0x9 , evLogFloat = 0xA , evLogDouble = 0xB , evLogBool = 0xC , evLogTimer = 0xD , evLogCounter = 0xE , evLogLadAlias = 0xF , evLogLadEdge = 0x10 , evLogFirstUser = 0x10000 } |
Type of variables for bccEnumVar - logical structures. More... | |
enum | EvLadTypes { evLadInvalid = 0 , evLadLogIC = 1 , evLadLogIW16 = 2 , evLadBitLogIW16 = 3 , evLadLogIW32 = 4 , evLadBitLogIW32 = 5 , evLadLogOC = 6 , evLadLogOW16 = 7 , evLadBitLogOW16 = 8 , evLadLogOW32 = 9 , evLadBitLogOW32 = 10 , evLadVR32 = 11 , evLadBitVR32 = 12 , evLadNvR32 = 13 , evLadBitNvR32 = 14 , evLadVRR = 15 , evLadNvRR = 16 , evLadAM = 17 , evLadBitAM = 18 } |
Type of variables for bccEnumVar - ladder diagram alias. More... | |
enum | EvStdTypes { evStdInvalid = 0 , evStdLogIC = 1 , evStdLogIW16 = 2 , evStdLogIW32 = 3 , evStdLogOC = 4 , evStdLogOW16 = 5 , evStdLogOW32 = 6 , evStdVR32 = 7 , evStdNvR32 = 8 , evStdVRR = 9 , evStdNvRR = 10 , evStdAlMask = 11 , evStdVSR = 12 , evStdNvSR = 13 , evStdParamI16 = 14 , evStdParamI32 = 15 , evStdParamR = 16 , evStdParamF = 17 , evStdAxisI16 = 18 , evStdAxisI32 = 19 , evStdAxisR = 20 , evStdAxisF = 21 , evStdAlarmN = 22 , evStdAlarmS = 23 , evStdVR64 = 24 , evStdNvR64 = 25 , evStdParamI64 = 26 , evStdAxisI64 = 27 } |
Type of variables for bccEnumVar - standard variables. More... | |
enum | EvStdFlags { evStdFHasArray = 0x1 , evStdFHasAxis = 0x2 , evStdFHasRepeat = 0x4 , evStdFHasOffset = 0x8 } |
Flags for bccEnumVar - standard variables. More... | |
enum | EvTypes { evGroupMarker = 0xffff } |
Type of variables for bccEnumVar. More... | |
enum | EvTTypes { evTInvalid = 0 , evTLadderAlias = 10 , evTMemoryVar = 11 , evTStandardVar = 12 , evTLogicalStruct = 13 , evTLogicalVar = 14 } |
Type of variables for bccEnumVar. More... | |
Static Protected Attributes | |
static const char | Version |
BCC protocol version. | |
static const int32_t | HeaderSize |
BCC header size. | |
static const int32_t | MaxDataSize |
BCC maximun data size. | |
Friends | |
class | RVar::FillHelper |
class | RVar::Remote |
class | RVar::RemoteTimer |
class | RVar::RemoteCounter |
class | RVar::Logical |
Protocol class declaration.
enum EvaFlags : uint32_t |
|
protected |
Type of variables for bccEnumVar - ladder diagram alias.
|
protected |
|
protected |
Type of variables for bccEnumVar - logical structures.
|
protected |
|
protected |
|
protected |
Type of variables for bccEnumVar - memory variables.
|
protected |
|
protected |
Type of variables for bccEnumVar - standard variables.
|
protected |
|
protected |
enum VarTypes : uint16_t |
Variable types.
|
static |
Get the maximum data size ( MaxDataSize)
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
staticprotected |
BCC header size.
|
static |
The default maximum ascii command timeout [ms].
|
static |
The default maximum command timeout [ms].
|
static |
|
staticprotected |
BCC maximun data size.
|
static |
|
static |
The default maximum data receive timeout [ms].
|
static |
The default maximum general receive timeout [ms].
|
static |
The default maximum data send timeout [ms].
|
static |
The default maximum general send timeout [ms].
|
static |
The default maximum wait period [ms].
|
static |
The default maximum watch-dog timeout [ms].
|
staticprotected |
BCC protocol version.