EasyManua.ls Logo

CleaverBrooks CFC - Page 188

CleaverBrooks CFC
270 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
750-265 98
Block Data Transfer
An internal Modbus interface exists to transfer blocks of data
to/from the CB Falcon. This interface uses a bank of 16-bit
holding registers on the Global Modbus port for the transfer.
Holding registers are used to keep the Modbus interface
simple on the Global Modbus port (limit the number of function
codes supported).
Uses for this block data transfer is to move the following type
of data:
OEM Parameter PCB
OEM Range PCB
OEM Alert PCB
Data is transferred with 16-bit holding registers defined in
Table 44. Data is transferred in blocks up to 32 bytes at a time.
Sixteen consecutive holding registers are used as a data
buffer to contain the data transferred. The holding register with
the least significant Modbus address, 0x2004, contains the
first 2 bytes of data with the first byte in the high order (most
significant) bits (16-31), and the second byte in the low order
(least significant) bits (0-15). The next 2 bytes of data are
placed in Modbus address 0x2005, the next 2 bytes in
0x2006, etc. For example, see Fig. 26.
Fig. 26. Transfer data buffer.
Only 32 bytes can be transferred at a time because the Falcon
keeps an internal buffer in application RAM to hold
the data while the transfer is occurring.
The procedure to transfer data to the R7910A is:
1. Ensure that no transfer is currently in progress by the
Falcon (look at Transfer Status). If so, cancel the trans-
fer or wait.
2. Buffer first 2 bytes of data into 16-bit data with first byte
in most significant 8 bits and next byte in least signifi-
cant 8 bits.
3. Write 16-bit data into first Transfer Data register
(address 0x2005).
4. Repeat steps 2 and 3 with next data pair written to next
Transfer Data register (address 0x2006, etc.) until all
data is written for this block.
5. Write number of bytes in this block to Transfer Size reg-
ister.
6. Write destination address for first byte in block into
Transfer Base Address register.
7. Write data type into Transfer Type register.
0x03 ILLEGAL_DATA_VALUE Data in register write is invalid for register
0x10 READ_MULTIPLE_NOT_OK Exceeded maximum registers allowed in read
0x11 ACCESS_FAILURE Invalid password access level for register
0x12 LOGIN_FAILURE Unrecognized password given for login
Table 43. Modbus Exception Codes. (Continued)
Code Name Comment
M28109
DATA BUFFER OFFSET
TRANSFER DATA
...
2005H
0
2005L
1
2006H
2
2006L
3
2007H
4
2007L
5
Table 44. R7910A Block Data Transfer Register Map.
Address
(hex)
Register
(dec) Parameter
Read/
Write Format Note
2000 8192 Transfer Direction R/W U16 0=Download data into CB Falcon
1=Upload data from CB Falcon
2=Cancel transfer
2001 8193 Transfer Status R U16 0=No transfer
1=Transfer in progress
2=Transfer complete
3=Transfer failed
4=Illegal direction
5=Illegal transfer type
6=Illegal transfer size
7=Illegal transfer address
2002 8194 Transfer Type R/W U16 7=OEM Visibility PCB
8=OEM Range PCB
9=OEM Alarm PCB
2003 8195 Transfer Base Address R/W U16 Destination or source address for first data
transfered
2004 8196 Transfer Size R/W U16 0-32
2005-2014 8197-8212 Transfer Data R/W U16

Table of Contents

Related product manuals