S
S
C
TART AND
TOP
ONDITIONS AND
A
.
CKNOWLEDGMENTS
2
Figure 5.8: I
C Transmission
Format.
S
I2CIN
PECIAL NOTE ABOUT
.
INPLIMENTATION
5: BASIC Stamp Command Reference – I2CIN
2
Every I
C transmission session begins with a Start Condition and ends
with a Stop Condition.
transmitted, an extra clock cycle is used to send or receive an
acknowledgment signal (ACK). All of these operations are automatically
taken care of by the I2CIN command so that you need not be concerned
with them. The general I
S
T
A
SlaveID
R
T
S
a
a
a
a
a
a
6
5
4
3
2
NOTES:
S = Start Condition
P = Stop Condition
a = id or address bit
d = data bit (transmitted by the BASIC Stamp or the I C device)
ACK = Acknowledge signal. (Most acknowledge signals are generated by the I C device)
Since the I2CIN command is intended for input only, it actually overrides
the "R/W" bit (bit 0) in the SlaveID argument. This is done so that it can
2
use the I
C protocol's "Combined Format" for receiving data. Put simply,
this means a command such as: I2CIN 0, $A1, 10, [Result] actually
transmits $A0, then 10, then $A1 and then it reads the data back from the
device. The $A0 means "write", the 10 is the address to write to and,
finally, the $A1 indicates a change of direction; to "read" the location,
instead. Even though the I2CIN command really doesn't care what the
value of the SlaveID's LSB is, it is suggested that you still set it
appropriately for clarity.
Also note that the I2CIN command does not support multiple I
and the BASIC Stamp cannot operate as an I
2
Demo Program (I2C.bsp)
p
' This program demonstrates writing and reading every location in the 24LC16B EEPROM
' using the BS2p's I2C commands. Connect the BS2p to the 24LC16B DIP EEPROM as
' shown in the diagram in the I2CIN or I2COUT command description.
'{$STAMP BS2p}
BASIC Stamp Programming Manual 2.0c • www.parallaxinc.com • Page 141
Additionally, immediately after every byte is
2
C transmission format is shown in Figure 5.8.
A
Address
C
K
a
rw
a
a
a
a
a
a
1
0
7
6
5
4
3
2
'STAMP directive (specifies a BS2p)
A
Data
C
K
a
a
d
d
d
d
d
d
d
1
0
7
6
5
4
3
2
1
2
2
C slave device.
B
U
S
S
F
R
A
T
E
C
O
E
K
P
d
P
0
2
2
C masters
Need help?
Do you have a question about the BASIC Stamp 2e and is the answer not in the manual?