Table 107. CRBasic Ports, Flags, Variables, and, Modbus Registers
CR1000 Feature
Example CRBasic
Declaration
Equivalent Example
Modbus Register
Terminal configured for
control
Public Port(8)
00001 to 00009
Flag
Public Flag(17)
00001 to 00018
Boolean variable
Public ArrayB(56) as
00001 to 00057
Variable
Public ArrayV(20)
1
40001 to 40041
1
or
30001 to 30041
1
1
Because of byte-number differences, each CR1000 domain variable translates to two Modbus
domain input / holding registers.
8.6.2.2.2 CRBasic Instructions (Modbus)
Complete descriptions and options of commands are available in CRBasic Editor
Help.
ModbusMaster()
Sets up a CR1000 as a Modbus master to send or retrieve data from a Modbus
slave.
Syntax
ModbusMaster(ResultCode, ComPort, BaudRate, ModbusAddr,
Function, Variable, Start, Length, Tries, TimeOut)
ModbusSlave()
Sets up a CR1000 as a Modbus slave device.
Syntax
ModbusSlave(ComPort, BaudRate, ModbusAddr, DataVariable,
BooleanVariable)
MoveBytes()
Moves binary bytes of data into a different memory location when translating big-
endian to little-endian data. See the appendix Endianness
(p. 643).
Syntax
MoveBytes(Dest, DestOffset, Source, SourceOffset, NumBytes)
8.6.2.2.3 Addressing (ModbusAddr)
Modbus devices have a unique address in each network. Addresses range from 1
to 247. Address 0 is reserved for universal broadcasts. When using the NL240,
use the same number as the Modbus and PakBus address.
414