00001
00002
00003 #include <uSonic1.h>
00004
00005
00006
00007
00008 byte highByte = 0x00;
00009 byte lowByte = 0x00;
00010
00011
00012
00013
00014 int getRange(){
00015
00016 int range = 0;
00017
00018 Wire.beginTransmission(srfAddress);
00019 Wire.send(cmdByte);
00020 Wire.send(0x51);
00021 Wire.endTransmission();
00022
00023 delay(100);
00024
00025 Wire.beginTransmission(srfAddress);
00026 Wire.send(rangeByte);
00027 Wire.endTransmission();
00028
00029 Wire.requestFrom(srfAddress, 2);
00030 while(Wire.available() < 2);
00031 highByte = Wire.receive();
00032 lowByte = Wire.receive();
00033
00034 range = (highByte << 8) + lowByte;
00035
00036 return(range);
00037
00038 }
00039
00040 int getRangee(){
00041
00042 int range = 0;
00043
00044 Wire.beginTransmission(srAddress);
00045 Wire.send(cmdByte);
00046 Wire.send(0x51);
00047 Wire.endTransmission();
00048
00049 delay(100);
00050
00051 Wire.beginTransmission(srAddress);
00052 Wire.send(rangeByte);
00053 Wire.endTransmission();
00054
00055 Wire.requestFrom(srAddress, 2);
00056 while(Wire.available() < 2);
00057 highByte = Wire.receive();
00058 lowByte = Wire.receive();
00059
00060 range = (highByte << 8) + lowByte;
00061
00062 return(range);
00063
00064 }
00065
00066
00067
00068
00069