HDI Series
Amplied pressure sensors
5/9
I²C BUS
Introduction
The HDI is capable to generate a digital output signal. The
device runs a cyclic program, which will store a corrected
pressure value with 12 bit resolution about every 250 µs
within the output registers of the internal ASIC. In order
to use the sensor for digital signal readout, it should be
connected to a bidirectional I²C-bus.
According to the I²C-bus specication, the bus is controlled
by a master device, which generates the clock signal,
controls the bus access and generates START and STOP
conditions. The HDI is designed to work as a slave, hence
it will only respond to requests from a master device.
Digital I²C interface
The HDI complies with the following protocol (Fig. 1):
Bus not busy: During idle periods both data line (SDA)
and clock line (SCL) remain HIGH.
START condition (S): HIGH to LOW transition of SDA
line while clock (SCL) is HIGH is interpreted as START
condition. START conditions are always generated by
the master. Each initial request for a pressure value has
to begin with a START condition.
STOP condition (P): LOW to HIGH transition of SDA line
while clock (SCL) is HIGH determines STOP condition.
STOP conditions are always generated by the master.
More than one request for the current pressure value
can be transmitted without generation of intermediate
STOP condition.
DATA valid (D): State of data line represents valid data
when, after START condition, data line is stable for
duration of HIGH period of clock signal. Data on line
must be changed during LOW period of clock signal.
There is one clock pulse per bit of data.
Acknowledge (A): Data is transferred in pieces of 8 bits
(1 byte) on serial bus, MSB rst. After each byte
receiving device – whether master or slave – is obliged
to pull data line LOW as acknowledge for reception
of data. Master must generate an extra clock pulse
for this purpose. When acknowledge is missed, slave
transmitter becomes inactive. It is on master either
to send last command again or to generate STOP
condition in that case.
Slave address: The I²C-bus master-slave concept
requires a unique address for each device. The HDI has
a precongured slave address (1111000xb). By factory
programming it is possible to dene a secondary slave
address additional to the general one. According to I²C
specication 127 different addresses are available. The
sensor will then listen to both slave addresses. After
generating a START condition the master sends the
address byte containing a 7 bit address followed by a
data direction bit (R/W). A "0" indicates a transmission
from master to slave (WRITE), a "1" indicates a data
request (READ).
DATA operation: The sensor starts to send 2 data bytes
containing the current pressure value as a 15 bit
information placed in the output registers.
Fig. 1: I²C bus protocol
SDA
SCL
START
condition
Data
valid
Data allowed
to change
STOP
condition
R/W
Read out of first pressure value Read out of n pressure values (optional)
SData Byte 1 AData Byte 2
Slave Address A
A P
Data Byte 1
generated by master
generated by slave
S = START condition
A = Acknowledge
Data Byte 1 = High Byte (MSB first)
Data Byte 2 = Low Byte (LSB last)
www.first-sensor.com