259
1) The writing operation of the 16-bit mode is only applicable to the parameter of type I with the current value
range from -32768 to 32767 and the parameter of type II with the current value range from 0 to 0xFFFF.
2) For the parameter of type I, when these two types of commands are used to write the value of 16 bits into
the parameter with an actual length of 32 bits, the actual written value is the expanded value. The principles
for the length expansion are as follows: expanding according to the highest bit of the 16-bit parameter value to
be written, if the highest bit is 1, the 16 high bits will be filled with 0xFFFF, otherwise, they will be filled with
0x0000. If the expanded value is within the value range of the parameter, the value is valid and it is allowed to
change the parameter, then the value can be written successfully. There is no need to expand the parameter
of type II.
For example: assuming that the values of function codes P01.01 and P01.02 are 32-bit date and 16-bit data
respectively and they are both parameters of type I, when the writing operation on them is successful, the
data written are as shown in the following table.
Register
address
Value to be written
Actual written value
Description
P01.01
0x1194 0x00001194 The 16 high bits is filled with 0x0000.
0xFE0C 0xFFFFFE0C
The 16 high bits is filled with 0xFFFF.
P01.02
0x1194 0x1194
0xFE0C 0xFE0C
(2) Command codes 0x10 and 0x43
These two types of command codes can be used to change multiple function code parameters or control
parameters and they support both 16-bit and 32-bit access modes.
The 16-bit access mode is as described above.
For the 32-bit access mode, the unit of the data to be written is 32 bits.
As shown in the following table, changing 4 continuous function codes with P02.00 as the start address (the
slave address is 5).
Request frame:
Bytes
Value
Description
16-bit mode 32-bit mode
0 0x05 0x05 Slave address
1 0x10/0x43 0x10/0x43 Command code
2~3 0x0200 0x8200
Start address (in the 32-bit mode, the highest byte
of the start address is 1)
4~5 0x0004 0x0008
Number of registers (in the 32-bit mode, the
number of registers is twice of that of parameters)
6 0x08 0x10 Number of bytes of register content
7~8 Value P02.00
Value P02.00
Content to be written:
16-bit operation: 8 bytes in total
9~10 Value P02.01