![background image](http://html1.mh-extra.com/html/omron/d6t-series/d6t-series_user-manual_740813019.webp)
D6T MEMS Thermal Sensors User’s Manual (A284)
18
6.6 Clock Stretch (Wait)
This slave (sensor) can generate a signal sent to the master (MCU) to tell the MCU to wait
before sending a request, in accordance with the temperature data state. The master must
support this wait processing. The built-in I2C module in most MCUs has automatic support for
this feature. If using MCUs that implement software-based I2C functionality using related
libraries, such as those without built-in I2C modules, you must check if this wait support
function is available in the software. If the software lacks this functionality, you must add a
wait detection routine, such as that illustrated below, to the SCL output portion of the program.
The D6T-1A-01/D6T-1A-02/D6T-8L-09 models do not feature clock stretch.
Requests the MCU to wait
Wait Detection Routine
I2C master
I2C slave (sensor)
a) Lo output to SCL (at each Ack timing)
SCL terminal Lo detection check
(Fixed wait)
c) Changes SCL output to Hi-Z
Changes SCL terminal to input mode
d) Checks if SCL terminal is in Hi state
Check standby (LOOP)
b) Lo output to SCL (wait request)
Waiting ...
:
:
Wait complete
e) Changes SCL output to Hi-Z
f) Check complete (Hi detection)
Changes SCL terminal to output mode
g) Transitions to subsequent processing
Fig. 22. Wait Detection Routine
If it is difficult to add a wait detection routine, add a 160 μsec wait time to the program at every Ack
timing.
SCL
a)
b)
c)
d)
e)
f)
g)
MCU generates Lo output
MCU check period
D6T generates Lo output
SDA
SCL
SDA
SCL
MCU
D6T