January 2012 8.41 PLC Modules 1753
Module 9010/9011/9012 Read in the word range
From the specified location in the word memory the control reads a byte, word 
or double word and returns it as an output quantity to the stack. Indexed 
reading is possible by specifying a variable as designation of the memory 
location.
Call:
PS B/W/D/K <Address of the byte to be read>
CM 9010  ; READ BYTE
PL B <Target address for byte that was read>
PS B/W/D/K <Address of the word to be read>
CM 9011 ; READ WORD
PL B <Target address for word that was read>
PS B/W/D/K <Address of the double word to be read>
CM 9012 ; READ DOUBLE WORD
PL B <Target address for double word that was read>
Error recognition: 
Example of 
Module 9010
Initial state: 
Byte B10 = 35 (address) 
Byte B35 = 80 (byte to be read) 
Byte B100 = ?
Marker Value Meaning
NN_GenApiModule
Error (M4203)
0 Byte was read
1 Error code in NN_GenApiModuleErrorCode 
(W1022)
NN_GenApiModule
ErrorCode (W1022)
3 Invalid address was programmed
5 Module 9011: Specified address is not a 
word address 
Module 9012: Specified address is not a 
double word address
Function STL Accumulator 
content (dec)
Data stack (dec)
Save the address 
(B10) of the byte to 
be read from the 
word accumulator in 
the data stack
PS B10 35 35
Read byte B35 and 
save in the data 
stack
CM 9010 80
Save data stack in 
byte B100.
PL B100 80 80