31/60
VV6501 Serial Control Bus
This example assumes that a write message has already taken place and the residual index value
is 32
10
. A value of 85
10
is read from the
fineH
exposure register. Note that the read message is
terminated with a negative acknowledge (A
) from the master: it is not guaranteed that the master
will be able to issue a stop condition at any other time during a read message. This is because if the
data sent by the slave is all zeros, the
sda
line cannot rise, which is part of the stop condition.
4.3.3 No data write followed by same location read
When a location is to be read and the value of the stored index is not known, a write message with
no data byte must be written first, specifying the index. The read message then completes the
message sequence. To avoid relinquishing the serial to bus to another master, a repeated start
condition is asserted between the write and read messages. In this example, the
gain
value (index
= 36
10
) is read as 15
10
(see
Figure 27
).
As mentioned in the previous example, the read message is terminated with a negative
acknowledge (A
) from the master.
4.3.4 Multiple location write
If the automatic increment bit is set (MSB of the index byte), it is possible to write data bytes to
consecutive adjacent internal registers without having to send explicit indexes prior to sending each
data byte. An auto-increment write to the exposure registers with their default values is shown in
Figure 28
.
Figure 27: No data write followed by same location read
Figure 28: Multiple location write
S
A
Sr A
A
A
P
21
h
36
h
21
h
36
h
15
h
A
0
0
No data write Read index and data
SA 11
h
AAA20
h
10
h
C1
h
1
Incremental write
P