Bueno viendo que no ningun codigo de ejemplo, para medir distancia, coloco un pequeño codigo y explicacion para el manejo del sensor srf05. editado en CCS.
El programa consta de prender un led si el sensor detecta un objeto en menos de 5 centimetros.
Bueno primero es cosa de ver el datasheet
http://www.robotstorehk.com/sensors/doc/srf05tech.pdf#include<16f628.h> //Elegimos el pic a utilizar
#fuses XT,NOWDT,NOPROTECT,NOLVP,PUT //Configuramos los fuses
#use delay (clock=4000000) //Configuramos la velocidad del microcontrolador
#define pulso pin_a0
#define recepcion pin_a1
#define led pin_b0
//Explico de la manera mas simple: Para que funcione el sensor srf05 tenemos que activarlo mandandole un //pulso de 10us, y el sensor funcionara por 30ms, osea tendras 30ms para poder usar el sensor.
//Una vez pasado 30ms, el sensor dejara de funcionar, para que siga funcionando tienes que enviar una //vez mas un pulso de 10us y funcionara por otros 30ms, y asi sucesivamente.
void activar_sensor(void); //Funcion activar_sensor para hacer funcionar al sensor
void activar_sensor()
{
output_low(pulso);
output_high(pulso);
delay_us(10);
output_low(pulso);
}
void inicio(void); //Funcion para configurar los puertos(Entrada o salida)
void inicio()
{
set_tris_a(0x02);
set_tris_b(0x00);
}
void main() //Funcion principal
{
inicio();
activar_sensor(); //Hacemos funcionar el sensor
delay_us(290) //Esperamos 190us para despues preguntar si ha leido algo a menos de 5cm
for(;

//Ya que la formula para saber el tiempo a esperar relacionado con la distan_
{ //cia en cm es: 58*distancia(cm)=tiempo(us)
if(input(recepcion)) //Por el datasheet, el sensor si

un objeto la recepcion se coloca en bajo
{ //Si no

nada sigue normalmente en alto.
output_low(led);
}
else
{
output_high(led);
}
}
}