Autor Tema: timer0 en pic16f1937  (Leído 1144 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado diofanor

  • PIC10
  • *
  • Mensajes: 1
timer0 en pic16f1937
« en: 03 de Mayo de 2016, 19:27:00 »
buenas tardes, quiero programar un sensor ultrasonido hcsr04, se que debo hacer el disparo del trigg dar un retardo y luego apagarlo y esperar que el echo baje a cero,por todos lados veo como se inicia el timer 0, y siempre lo explican para un tiempo que se define, el problema es que el tiempo que yo quiero medir varia en cada ciclo y no se hacer para medir desde que sale el disparo hasta que el echo se pone a cero

trigg=1;
delay_us(10);
trigg=0;
TMR0=; //iniciar el timer
if(echo==0)//si el eco esta en cero
{TMR0=;} //parar

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re:timer0 en pic16f1937
« Respuesta #1 en: 03 de Mayo de 2016, 22:19:04 »
No entendi cual es tu problema.

El timer0 en varios PICs no se detiene nunca. Entonces lo que suelen hacer es ponerlo a 0 y luego cuando el echo se pone a cero es leer el valor del mismo. Segun el valor que tiene va a depender la distancia, vas a tener que ver como configurar el timer0 y que se adapte a tus tiempos. Ya que tenes que tener presente que si supera cierto tiempo el echo deberias ser capas de descartar la medida como si no hubiera nada adelante de la misma.


 

anything