Here is the code I use to test a TFMini:
#include <HardwareSerial.h>
HardwareSerial SerialTFMini( 2 );
// serial(1) = pin27=RX, pin26=TX
// serial(2) = pin16=RX green, pin17=TX white
void getTFminiData(int* distance, int* strength) {
static char i = 0;
char j = 0;
int checksum = 0;
static int rx[9];
if(SerialTFMini.available())
{
// Serial.println( "tfmini serial available" );
rx[i] = SerialTFMini.read();
if(rx[0] != 0x59) {
i = 0;
} else if(i == 1 && rx[1] != 0x59) {
i = 0;
} else if(i == 8) {
for(j = 0; j < 8; j++) {
checksum += rx[j];
}
if(rx[8] == (checksum % 256)) {
*distance = rx[2] + rx[3] * 256;
*strength = rx[4] + rx[5] * 256;
}
i = 0;
} else
{
i++;
}
}
}
void setup() {
Serial.begin(115200);
SerialTFMini.begin( 115200 );
}
void loop()
{
int distance = 0;
int strength = 0;
getTFminiData(&distance, &strength);
while(!distance) {
getTFminiData(&distance, &strength);
if(distance) {
Serial.print(distance);
Serial.print("cm\t");
Serial.print("strength: ");
Serial.println(strength);
}
}
delay(100);
}
You'll have to change the serial thingies to match your microController.