Microcontroladores PIC en Linux.
¿Quieres reaccionar a este mensaje? Regístrate en el foro con unos pocos clics o inicia sesión para continuar.

Probador Logico TTL/CMOS con PIC12F675

5 participantes

Ir abajo

Probador Logico TTL/CMOS con PIC12F675 Empty Probador Logico TTL/CMOS con PIC12F675

Mensaje por Risanti Jue 23 Dic 2010 - 3:57

Hola A todos..

He estado estos días jugando de nuevo con el mundo de la electrónica.. asi he diseñado un Probador lógico basado en un pic 12F675, Este puede trabajar tanto con circuito TTL o CMOS.

Este equipo indica si el estado a medir es un estado logico Alto, Bajo, Pulso,tanto con una indicacion visual como sonora.
Ademas detecta cuando un estado es no valido o Alta impedancia (Punta de test en el aire. jajajaja)


Características. (Valor Aprox).
Alimentación de 3V (funciona pero si es mas 4Vmejor ) a 15V
TTL Estado Alto >2V (Led Rojo )
TTL Estado Bajo <0,8V (Led Verde)
CMOS Estado Alto >70%Vcc (Led Rojo )
CMOS Estado Bajo < 30%Vcc (Led Verde)
Cualquier otro estado es invalido
Pulso Freq >60Hz +- (valor obtenido de simulación en Proteus)..(led Naranja).
Probador Logico TTL/CMOS con PIC12F675 Probelogic1




Diseñado utilizando Kicad Para creacion de Esquema y PCB.
Probador Logico TTL/CMOS con PIC12F675 Logicprobeesquema



El Amplificador a utlizar es LM358, para lo cual utilice un de tipo SMD.

Probador Logico TTL/CMOS con PIC12F675 Probelogic2


Representacion 3D
Probador Logico TTL/CMOS con PIC12F675 Logicprob3da


Ademas este circuito lo programe el PIC 12F675 utilzando SDCC, les dejo el codigo fuente, aunque aun debo realizarle algunas mejoras.




Código:

/*************************************************************************** */
/* Probelogic.c      Diciembre 22 del  2010                                  */
/*---------------------------------------------------------------------------*/
/* Probador Logico TTL/CMOS  con Microcontolador Pic12F675                */
/*---------------------------------------------------------------------------*/
/*  Ricardo Santibañez <risanti13@hotmail.com>                              */
/*---------------------------------------------------------------------------*/
/* Desarrolado con SDCC Y PIKLAB.                                                    */
/*****************************************************************************/


#include <pic12f675.h>


/* ----------------------------------------------------------------------- */
/* Bits de configuración: adapte los parámetros a su necesidad */
typedef unsigned int word;
word at 0x2007 CONFIG = _INTRC_OSC_NOCLKOUT & _WDT_OFF & _PWRTE_ON & _MCLRE_OFF & _BODEN_OFF & _CP_OFF & _CPD_OFF;


void EstadoAlto();
void EstadoBajo();
void EstadoPulso();
void espera(char _ms);
void delay_ms(unsigned int ms);

unsigned char temp ,i;



void main() {

TRISIO=0x0c;      //GPIO3 Y GPIO2 Como entrada   
CMCON =0x07;       //Deshabilito comparadores Analogico
ANSEL=0;           // Desabilito ADC
OPTION_REG=0xB0;    // Configuro Tmr0


while(1)      //Bucle infinito
 {
  TMR0=254;
  delay_ms(100);   //Tiempo de Muestreo de Pulsos

      if (T0IF)    //Existe desbordamiento de TMR0
   {
    EstadoPulso();      // Se Detecto un Tren de Pulsos
    T0IF=0;
   }
      else
   {
    temp=GPIO & 0x0c;   //Aislar Solo GPIO3 Y GPIO2
          switch (temp)
     {
        case 0x00:
      EstadoBajo();      //Estado Logico 0
      break;
            case 0x0c:
      EstadoAlto();    //Estado Logico 1
      break;
       case 0x04:
      GPIO=0x00;    //Estado No Valido
      break;
     }
   }
 }
}

void EstadoAlto()
{

GPIO=0x01;    ////Led de Estado Logico 1

//Generacion de Sonido con un Buzzer
for (i=0;i<200;i++)
  {
   GPIO5=1;
   espera(30);
   GPIO5=0;
   espera(30);
   GPIO5=1;
   espera(30);
   GPIO5=0;
   espera(30);
    }

}


void EstadoBajo()
{
GPIO=0x10;    ////Led de Estado Logico 0
//Generacion de Sonido con un Buzzer
for (i=0;i<200;i++)
  {
   GPIO5=1;
   espera(33);
   GPIO5=0;
   espera(33);
   GPIO5=1;
   espera(33);
   GPIO5=0;
   espera(33);
    }
}

void EstadoPulso()
{
GPIO=0x02;    ////Led de Estado Logico Pulso
}

//*********Funciones de Retardo*********//
void espera(char _ms)
{
  while (--_ms)
  {
  _asm
   nop
_endasm;
      }
}


void delay_ms(unsigned int ms)
{
    while (ms > 0 )
    {
        espera(108);
        ms--;
    }
}



Espero Pronto realizar algunas mejor, como migrar el proyecto a un pic12F509 y programarlo en ASM, (ya mande a pedir un par de pic para probar ajajaj)..

Un Video que muestra como trabajar este cicuito.


Saludos
Y Feliz Navidad
RiSanti
Risanti
Risanti
Asiduo del Foro
Asiduo del Foro

Mensajes : 172
Fecha de inscripción : 07/12/2008
Edad : 39
Localización : La Serena Chile

https://www.facebook.com/risanti.electronica

Volver arriba Ir abajo

Probador Logico TTL/CMOS con PIC12F675 Empty RE PROBADOR LOGICO TTL/CMOS CON PIC12F675

Mensaje por Felixls Dom 2 Ene 2011 - 14:32

Excelente como siempre Risanti, felicitaciones!

Feliz año y feliz cumpleaños.
bounce cheers
Felixls
Felixls
Participante
Participante

Mensajes : 13
Fecha de inscripción : 03/11/2009

http://sergiols.blogspot.com

Volver arriba Ir abajo

Probador Logico TTL/CMOS con PIC12F675 Empty Re: Probador Logico TTL/CMOS con PIC12F675

Mensaje por Risanti Lun 3 Ene 2011 - 1:30

Gracias por el saludo Felixls, Un feliz año para ti... Smile

bounce bounce bounce
Risanti
Risanti
Asiduo del Foro
Asiduo del Foro

Mensajes : 172
Fecha de inscripción : 07/12/2008
Edad : 39
Localización : La Serena Chile

https://www.facebook.com/risanti.electronica

Volver arriba Ir abajo

Probador Logico TTL/CMOS con PIC12F675 Empty Re: Probador Logico TTL/CMOS con PIC12F675

Mensaje por AcoranTf Lun 28 Feb 2011 - 12:03

Interesante Risanti, lo acabo de ver tras poner mi consulta sobre los PIC's en radiocontrol y vi que utilizaste el 12F675, por lo que deduzco que lo conoces bien. Echale un vistazo a mi comentario y mira si me puedes ayudar. Yo en la parte hardware, (electronica) estoy bastante puesto, pero no asi en el software, (programacion).
Tendre que decidirme a estudiar a fondo los PIC's pero mientras tanto dependere de que otras personas me ayuden.

Saludos.

AcoranTf
Participante Activo
Participante Activo

Mensajes : 44
Fecha de inscripción : 10/11/2009

Volver arriba Ir abajo

Probador Logico TTL/CMOS con PIC12F675 Empty Re: Probador Logico TTL/CMOS con PIC12F675

Mensaje por BATMONSTRO Sáb 3 Ene 2015 - 12:21

Saudações!!! `posso montar este projeto??? Poderia me enviar o esquema pois não consigo visualizar as fotos. Muito obrigado!!!

BATMONSTRO
Nuevo Usuario
Nuevo Usuario

Mensajes : 1
Fecha de inscripción : 02/01/2015

Volver arriba Ir abajo

Probador Logico TTL/CMOS con PIC12F675 Empty Re: Probador Logico TTL/CMOS con PIC12F675

Mensaje por danielecus Miér 28 Oct 2020 - 16:36

Interesante amigo, podria facilitarme el diagrama? Megatronic35@gmail.com

danielecus
Nuevo Usuario
Nuevo Usuario

Mensajes : 1
Fecha de inscripción : 19/01/2019

Volver arriba Ir abajo

Probador Logico TTL/CMOS con PIC12F675 Empty Re: Probador Logico TTL/CMOS con PIC12F675

Mensaje por Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Volver arriba

- Temas similares

 
Permisos de este foro:
No puedes responder a temas en este foro.