1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
5 <!-- Generated by javadoc (build 1.5.0_09) on Tue Jan 08 20:46:01 GMT 2008 -->
7 I2CSensor (leJOS NXT API documentation)
10 <META NAME="keywords" CONTENT="lejos.nxt.I2CSensor class">
12 <LINK REL ="stylesheet" TYPE="text/css" HREF="../../stylesheet.css" TITLE="Style">
14 <SCRIPT type="text/javascript">
15 function windowTitle()
17 parent.document.title="I2CSensor (leJOS NXT API documentation)";
25 <BODY BGCOLOR="white" onload="windowTitle();">
28 <!-- ========= START OF TOP NAVBAR ======= -->
29 <A NAME="navbar_top"><!-- --></A>
30 <A HREF="#skip-navbar_top" title="Skip navigation links"></A>
31 <TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
33 <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
34 <A NAME="navbar_top_firstrow"><!-- --></A>
35 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
36 <TR ALIGN="center" VALIGN="top">
37 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
38 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
39 <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
40 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
41 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
42 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
43 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
47 <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
53 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
54 <A HREF="../../lejos/nxt/I2CPort.html" title="interface in lejos.nxt"><B>PREV CLASS</B></A>
55 <A HREF="../../lejos/nxt/IRSeeker.html" title="class in lejos.nxt"><B>NEXT CLASS</B></A></FONT></TD>
56 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
57 <A HREF="../../index.html?lejos/nxt/I2CSensor.html" target="_top"><B>FRAMES</B></A>
58 <A HREF="I2CSensor.html" target="_top"><B>NO FRAMES</B></A>
59 <SCRIPT type="text/javascript">
62 document.writeln('<A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>');
67 <A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>
74 <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
75 SUMMARY: NESTED | FIELD | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
76 <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
77 DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
80 <A NAME="skip-navbar_top"></A>
81 <!-- ========= END OF TOP NAVBAR ========= -->
84 <!-- ======== START OF CLASS DATA ======== -->
91 <A HREF="../../java/lang/Object.html" title="class in java.lang">java.lang.Object</A>
92 <IMG SRC="../../resources/inherit.gif" ALT="extended by "><B>lejos.nxt.I2CSensor</B>
95 <DT><B>All Implemented Interfaces:</B> <DD><A HREF="../../lejos/nxt/SensorConstants.html" title="interface in lejos.nxt">SensorConstants</A></DD>
98 <DT><B>Direct Known Subclasses:</B> <DD><A HREF="../../lejos/nxt/ColorSensor.html" title="class in lejos.nxt">ColorSensor</A>, <A HREF="../../lejos/nxt/CompassSensor.html" title="class in lejos.nxt">CompassSensor</A>, <A HREF="../../lejos/nxt/IRSeeker.html" title="class in lejos.nxt">IRSeeker</A>, <A HREF="../../lejos/nxt/NXTCam.html" title="class in lejos.nxt">NXTCam</A>, <A HREF="../../lejos/nxt/RCXLink.html" title="class in lejos.nxt">RCXLink</A>, <A HREF="../../lejos/nxt/RCXMotorMultiplexer.html" title="class in lejos.nxt">RCXMotorMultiplexer</A>, <A HREF="../../lejos/nxt/TiltSensor.html" title="class in lejos.nxt">TiltSensor</A>, <A HREF="../../lejos/nxt/UltrasonicSensor.html" title="class in lejos.nxt">UltrasonicSensor</A></DD>
102 <DT><PRE>public abstract class <B>I2CSensor</B><DT>extends <A HREF="../../java/lang/Object.html" title="class in java.lang">Object</A><DT>implements <A HREF="../../lejos/nxt/SensorConstants.html" title="interface in lejos.nxt">SensorConstants</A></DL>
106 Abstract class that implements common methods for all I2C sensors.
108 Extend this class to implement new I2C sensors.
113 <DT><B>Author:</B></DT>
114 <DD>Lawrie Griffiths (lawrie.griffiths@ntlworld.com)</DD>
119 <!-- =========== FIELD SUMMARY =========== -->
121 <A NAME="field_summary"><!-- --></A>
122 <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
123 <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
124 <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
125 <B>Field Summary</B></FONT></TH>
128 <A NAME="fields_inherited_from_class_lejos.nxt.SensorConstants"><!-- --></A>
129 <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
130 <TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
131 <TH ALIGN="left"><B>Fields inherited from interface lejos.nxt.<A HREF="../../lejos/nxt/SensorConstants.html" title="interface in lejos.nxt">SensorConstants</A></B></TH>
133 <TR BGCOLOR="white" CLASS="TableRowColor">
134 <TD><CODE><A HREF="../../lejos/nxt/SensorConstants.html#MODE_ANGLESTEP">MODE_ANGLESTEP</A>, <A HREF="../../lejos/nxt/SensorConstants.html#MODE_BOOLEAN">MODE_BOOLEAN</A>, <A HREF="../../lejos/nxt/SensorConstants.html#MODE_CELSIUS">MODE_CELSIUS</A>, <A HREF="../../lejos/nxt/SensorConstants.html#MODE_FARENHEIT">MODE_FARENHEIT</A>, <A HREF="../../lejos/nxt/SensorConstants.html#MODE_PCTFULLSCALE">MODE_PCTFULLSCALE</A>, <A HREF="../../lejos/nxt/SensorConstants.html#MODE_PERIODCOUNTER">MODE_PERIODCOUNTER</A>, <A HREF="../../lejos/nxt/SensorConstants.html#MODE_RAW">MODE_RAW</A>, <A HREF="../../lejos/nxt/SensorConstants.html#MODE_TRANSITIONCNT">MODE_TRANSITIONCNT</A>, <A HREF="../../lejos/nxt/SensorConstants.html#TYPE_ANGLE">TYPE_ANGLE</A>, <A HREF="../../lejos/nxt/SensorConstants.html#TYPE_CUSTOM">TYPE_CUSTOM</A>, <A HREF="../../lejos/nxt/SensorConstants.html#TYPE_LIGHT_ACTIVE">TYPE_LIGHT_ACTIVE</A>, <A HREF="../../lejos/nxt/SensorConstants.html#TYPE_LIGHT_INACTIVE">TYPE_LIGHT_INACTIVE</A>, <A HREF="../../lejos/nxt/SensorConstants.html#TYPE_LOWSPEED">TYPE_LOWSPEED</A>, <A HREF="../../lejos/nxt/SensorConstants.html#TYPE_LOWSPEED_9V">TYPE_LOWSPEED_9V</A>, <A HREF="../../lejos/nxt/SensorConstants.html#TYPE_NO_SENSOR">TYPE_NO_SENSOR</A>, <A HREF="../../lejos/nxt/SensorConstants.html#TYPE_REFLECTION">TYPE_REFLECTION</A>, <A HREF="../../lejos/nxt/SensorConstants.html#TYPE_SOUND_DB">TYPE_SOUND_DB</A>, <A HREF="../../lejos/nxt/SensorConstants.html#TYPE_SOUND_DBA">TYPE_SOUND_DBA</A>, <A HREF="../../lejos/nxt/SensorConstants.html#TYPE_SWITCH">TYPE_SWITCH</A>, <A HREF="../../lejos/nxt/SensorConstants.html#TYPE_TEMPERATURE">TYPE_TEMPERATURE</A></CODE></TD>
138 <!-- ======== CONSTRUCTOR SUMMARY ======== -->
140 <A NAME="constructor_summary"><!-- --></A>
141 <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
142 <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
143 <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
144 <B>Constructor Summary</B></FONT></TH>
146 <TR BGCOLOR="white" CLASS="TableRowColor">
147 <TD><CODE><B><A HREF="../../lejos/nxt/I2CSensor.html#I2CSensor(lejos.nxt.I2CPort)">I2CSensor</A></B>(<A HREF="../../lejos/nxt/I2CPort.html" title="interface in lejos.nxt">I2CPort</A> port)</CODE>
150 </TD>
154 <!-- ========== METHOD SUMMARY =========== -->
156 <A NAME="method_summary"><!-- --></A>
157 <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
158 <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
159 <TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
160 <B>Method Summary</B></FONT></TH>
162 <TR BGCOLOR="white" CLASS="TableRowColor">
163 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
164 <CODE> int</CODE></FONT></TD>
165 <TD><CODE><B><A HREF="../../lejos/nxt/I2CSensor.html#getData(int, byte[], int)">getData</A></B>(int register,
170 Executes an I2C read transaction and waits for the result.</TD>
172 <TR BGCOLOR="white" CLASS="TableRowColor">
173 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
174 <CODE> <A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
175 <TD><CODE><B><A HREF="../../lejos/nxt/I2CSensor.html#getProductID()">getProductID</A></B>()</CODE>
178 Return the sensor product identifier.</TD>
180 <TR BGCOLOR="white" CLASS="TableRowColor">
181 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
182 <CODE> <A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
183 <TD><CODE><B><A HREF="../../lejos/nxt/I2CSensor.html#getSensorType()">getSensorType</A></B>()</CODE>
186 Return the sensor type.</TD>
188 <TR BGCOLOR="white" CLASS="TableRowColor">
189 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
190 <CODE> <A HREF="../../java/lang/String.html" title="class in java.lang">String</A></CODE></FONT></TD>
191 <TD><CODE><B><A HREF="../../lejos/nxt/I2CSensor.html#getVersion()">getVersion</A></B>()</CODE>
194 Return the sensor version number.</TD>
196 <TR BGCOLOR="white" CLASS="TableRowColor">
197 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
198 <CODE> int</CODE></FONT></TD>
199 <TD><CODE><B><A HREF="../../lejos/nxt/I2CSensor.html#sendData(int, byte)">sendData</A></B>(int register,
200 byte value)</CODE>
203 Executes an I2C write transaction.</TD>
205 <TR BGCOLOR="white" CLASS="TableRowColor">
206 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
207 <CODE> int</CODE></FONT></TD>
208 <TD><CODE><B><A HREF="../../lejos/nxt/I2CSensor.html#sendData(int, byte[], int)">sendData</A></B>(int register,
213 Executes an I2C write transaction.</TD>
215 <TR BGCOLOR="white" CLASS="TableRowColor">
216 <TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
217 <CODE> void</CODE></FONT></TD>
218 <TD><CODE><B><A HREF="../../lejos/nxt/I2CSensor.html#setAddress(int)">setAddress</A></B>(int addr)</CODE>
221 </TD>
224 <A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
225 <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
226 <TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
227 <TH ALIGN="left"><B>Methods inherited from class java.lang.<A HREF="../../java/lang/Object.html" title="class in java.lang">Object</A></B></TH>
229 <TR BGCOLOR="white" CLASS="TableRowColor">
230 <TD><CODE><A HREF="../../java/lang/Object.html#equals(java.lang.Object)">equals</A>, <A HREF="../../java/lang/Object.html#getClass()">getClass</A>, <A HREF="../../java/lang/Object.html#hashCode()">hashCode</A>, <A HREF="../../java/lang/Object.html#notify()">notify</A>, <A HREF="../../java/lang/Object.html#notifyAll()">notifyAll</A>, <A HREF="../../java/lang/Object.html#toString()">toString</A>, <A HREF="../../java/lang/Object.html#wait()">wait</A>, <A HREF="../../java/lang/Object.html#wait(long)">wait</A></CODE></TD>
236 <!-- ========= CONSTRUCTOR DETAIL ======== -->
238 <A NAME="constructor_detail"><!-- --></A>
239 <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
240 <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
241 <TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
242 <B>Constructor Detail</B></FONT></TH>
246 <A NAME="I2CSensor(lejos.nxt.I2CPort)"><!-- --></A><H3>
249 public <B>I2CSensor</B>(<A HREF="../../lejos/nxt/I2CPort.html" title="interface in lejos.nxt">I2CPort</A> port)</PRE>
253 <!-- ============ METHOD DETAIL ========== -->
255 <A NAME="method_detail"><!-- --></A>
256 <TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
257 <TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
258 <TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
259 <B>Method Detail</B></FONT></TH>
263 <A NAME="getData(int, byte[], int)"><!-- --></A><H3>
266 public int <B>getData</B>(int register,
270 <DD>Executes an I2C read transaction and waits for the result.
276 <DT><B>Parameters:</B><DD><CODE>register</CODE> - I2C register, e.g 0x41<DD><CODE>buf</CODE> - Buffer to return data<DD><CODE>len</CODE> - Length of the return data
277 <DT><B>Returns:</B><DD>status zero=success, non-zero=failure</DL>
282 <A NAME="sendData(int, byte[], int)"><!-- --></A><H3>
285 public int <B>sendData</B>(int register,
289 <DD>Executes an I2C write transaction.
295 <DT><B>Parameters:</B><DD><CODE>register</CODE> - I2C register, e.g 0x42<DD><CODE>buf</CODE> - Buffer containing data to send<DD><CODE>len</CODE> - Length of data to send
296 <DT><B>Returns:</B><DD>status zero=success, non-zero=failure</DL>
301 <A NAME="sendData(int, byte)"><!-- --></A><H3>
304 public int <B>sendData</B>(int register,
305 byte value)</PRE>
307 <DD>Executes an I2C write transaction.
313 <DT><B>Parameters:</B><DD><CODE>register</CODE> - I2C register, e.g 0x42<DD><CODE>value</CODE> - single byte to send
314 <DT><B>Returns:</B><DD>status zero=success, non-zero=failure</DL>
319 <A NAME="getVersion()"><!-- --></A><H3>
322 public <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>getVersion</B>()</PRE>
324 <DD>Return the sensor version number.
331 <DT><B>Returns:</B><DD>8-byte string</DL>
336 <A NAME="getProductID()"><!-- --></A><H3>
339 public <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>getProductID</B>()</PRE>
341 <DD>Return the sensor product identifier.
348 <DT><B>Returns:</B><DD>8-byte string</DL>
353 <A NAME="getSensorType()"><!-- --></A><H3>
356 public <A HREF="../../java/lang/String.html" title="class in java.lang">String</A> <B>getSensorType</B>()</PRE>
358 <DD>Return the sensor type.
365 <DT><B>Returns:</B><DD>8-byte string</DL>
370 <A NAME="setAddress(int)"><!-- --></A><H3>
373 public void <B>setAddress</B>(int addr)</PRE>
382 <!-- ========= END OF CLASS DATA ========= -->
386 <!-- ======= START OF BOTTOM NAVBAR ====== -->
387 <A NAME="navbar_bottom"><!-- --></A>
388 <A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
389 <TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
391 <TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
392 <A NAME="navbar_bottom_firstrow"><!-- --></A>
393 <TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
394 <TR ALIGN="center" VALIGN="top">
395 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
396 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
397 <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
398 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
399 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
400 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
401 <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
405 <TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
411 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
412 <A HREF="../../lejos/nxt/I2CPort.html" title="interface in lejos.nxt"><B>PREV CLASS</B></A>
413 <A HREF="../../lejos/nxt/IRSeeker.html" title="class in lejos.nxt"><B>NEXT CLASS</B></A></FONT></TD>
414 <TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
415 <A HREF="../../index.html?lejos/nxt/I2CSensor.html" target="_top"><B>FRAMES</B></A>
416 <A HREF="I2CSensor.html" target="_top"><B>NO FRAMES</B></A>
417 <SCRIPT type="text/javascript">
420 document.writeln('<A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>');
425 <A HREF="../../allclasses-noframe.html"><B>All Classes</B></A>
432 <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
433 SUMMARY: NESTED | FIELD | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
434 <TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
435 DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
438 <A NAME="skip-navbar_bottom"></A>
439 <!-- ======== END OF BOTTOM NAVBAR ======= -->