Autor Tema: ¿Como usar un comparador con 16f628?  (Leído 3051 veces)

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

Desconectado hsen

  • PIC12
  • **
  • Mensajes: 84
¿Como usar un comparador con 16f628?
« en: 03 de Mayo de 2006, 07:49:51 »
Hola amigos del foro:Con referencia al primer ejemplo de LORDLAFEBRE, (destellar un led), pregunto:Como haría
usando un sensor,  por ejemplo de temperatura , LM35 el cual entrega una tensión de 0 a 4.8 v (creo), hacer
que a una temperatura derminada crear una interupcion,  e indicarle al destellador que pare.
Pienso que debo conectar la salida del sensor a la entrada + del comp., pero no sé como ingresarle una tension
de referencia a la entrada - , la cual debe ser ajustable de acuerdo a la temperatura deseada.
Seria muy fácil con un potenciometro, pero creo que será posible desde dentro del pic,  en forma digital.
He ahí una de mis  incognitas.
Este es el código referido de Lordlafebre.
inicio:
       High 0
       pause 1000
       low 0
       pause 1000
       goto inicio
end                                           Saludos desde Rocha -Uruguay
Un saludo desde Rocha (Uruguay)

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
Re: ¿Como usar un comparador con 16f628?
« Respuesta #1 en: 03 de Mayo de 2006, 13:07:13 »
Hola:

No he utilizado los comparadores, pero te puede servir lo siguiente, que es un grafico del datasheet del modo de operacion de los comparadores:



Espero que te sirva.

Desconectado hsen

  • PIC12
  • **
  • Mensajes: 84
Re: ¿Como usar un comparador con 16f628?
« Respuesta #2 en: 03 de Mayo de 2006, 14:41:01 »
Gracias Lordlefebre:Veo que se pueden comandar desde afuera las dos entradas, por ahora usaré el voltaje de referencia atravez de un pote.




                           saludos hsen
Un saludo desde Rocha (Uruguay)

Desconectado Mario

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 873
Re: ¿Como usar un comparador con 16f628?
« Respuesta #3 en: 04 de Mayo de 2006, 01:48:36 »
Yo no he usado los comparadores tampoco pero, alguna vez lo quise hacer y encontré este enlace: http://list.picbasic.com/forum/messages/3064/3607.html?#POST13269

Ahi explican a detalle lo que se debe hacer para configurar los comparadores, inclusive tiene un pequeño programa para ese µicro; lo único es que está en inglés (que no creo sea gran problema para usted).


Si le sale, después pone el código para ver cómo se hace. :mrgreen:
La buena administración es utilizar el sentido común y la regla de oro; aunque el sentido común no es tan común como quisiéramos que fuera y, quien tiene el oro, hace las reglas.
George Terry

"A loser will defeat a genius with hard work"
Rock Lee

Desconectado hsen

  • PIC12
  • **
  • Mensajes: 84
Re: ¿Como usar un comparador con 16f628?
« Respuesta #4 en: 04 de Mayo de 2006, 12:24:36 »
Gracias REPPUKEN:Imprimí el post del fororo que mencionas para leerlo en casa, aunque
no soy muy ducho con el idioma ingles, entiendo un poquito y adivino otro tanto.
Pero creo lo voy a entender.
Como no me sobra mucho tiempo voy a demorar unos dìas, pero creo saldre adelante ,
y postearé el código.
Gracias  tambien a Lordlafebre que siempre está presto a responder a nuestras consultas.


   
Un saludo desde Rocha (Uruguay)

Desconectado hsen

  • PIC12
  • **
  • Mensajes: 84
Re: ¿Como usar un comparador con 16f628?
« Respuesta #5 en: 12 de Mayo de 2006, 19:40:02 »
 HolaAmigos del foro: He ahí el programa sobre comparador.
Realmente cambié lo relativo al programa al principio,pero lo que importa es lo relativo a
los comparadores y funcionó en Proteus.
Gracias a Reppuken y lordlafebre.
En el datasheet del 628,  capítulo 10 y 11 viene claramente como manejarlos.
Tambien me sirvió el foro que me indicó Reppuken.
Saludos desde Rocha Uruguay
'****************************************************************
'*  Name    : martina.BAS                                      *
'*  Author  : [select VIEW...EDITOR OPTIONS]                    *
'*  Notice  : Copyright (c) 2006 [select VIEW...EDITOR OPTIONS] *
'*          : All Rights Reserved                               *
'*  Date    : 30/04/2006                                        *
'*  Version : 1.0                                               *
'*  Notes   :                                                   *
'*          :                                                   *
'****************************************************************

PORTB=%00000000
'Hardware assignament
'---------------------
ValCensor var CMCON.7   ' Lee comparador 2 para bat baja
                      'port RA1 como entrada de +v bat
 LEDCensor var PORTB.7 'port indicador de bat baja
'Control de comparador
'---------------------
CMCON=%00100101       'CM7 C2OUT salida (+) comparador2 (lectura solamente),
                      'CM6 C1OUT salida (+) comparador 1(lectura solamente),
                      'CM5 C2INV salida (-)   "    "   2,
                      'CM4 C1INV salida (-)   ""   "   1,
                      'CM3 Switch entrada comparador, no es relevante para
                      'modo de comparador 101

'Control de tension de referencia
'---------------------
VRCON=%11101100       '7VRE Habilit.(ENABLE)de tension de referencia(1=on),
                      '6VRON VREF Ouput enable,
                      '(1=conectar la salida de VREF a RA2)
                      'This is real convenient so we'll use it
                      '5VRR VREF selección de rango(1=low rango)
                      '4 no usado(0)
                      'VR3)
                      'VR2)Setea la tensión de referencia
                      'VR1)1100 set 2.5v en rango bajo
                      'VR0)
                      '
Pauseus 10            'Delay to allow for VREF to settle
trisa=%11111111
trisb=%00000000
Ledred var portb.0
Ledgreen var portb.1
inicio:
high Ledred
high Ledgreen
pause 5000
low Ledgreen
pause 1500
low ledred
 
 LEDCensor=ValCensor   'you better believe it...just ONE line of code
if LEDCensor >0 then   'Si la tension del censor sobrepasa los 2.5 v
                       'Saltea las siguientes líneas,(hasta ENDIF)
i var byte             ' declaro veriable, la cual cuenta:
for i=1 to 60          ' N veces
pause 1000             ' esta, y la siguiente linea del programa
toggle ledred          ' invierte estado de Ledred
next i                 ' regresa a i
endif
end
Un saludo desde Rocha (Uruguay)

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
Re: ¿Como usar un comparador con 16f628?
« Respuesta #6 en: 12 de Mayo de 2006, 19:56:38 »
Hola:

Felicidades Hsen, bien por ti, y gracias por compartir tu programa...  :-/ :mrgreen:

Desconectado hsen

  • PIC12
  • **
  • Mensajes: 84
Re: ¿Como usar un comparador con 16f628?
« Respuesta #7 en: 13 de Mayo de 2006, 12:28:48 »
Gracias a ustedes muchachos, por responderme y enseñarme cuando los necesito.


Un fuerte abrazo desde Rocha (Uruguay)
Un saludo desde Rocha (Uruguay)

Desconectado Mario

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 873
Re: ¿Como usar un comparador con 16f628?
« Respuesta #8 en: 13 de Mayo de 2006, 14:22:14 »
¡Qué bien!

Ahora ya sé cómo usarlo.

De eso se trata "ayúdame para ayudarte" como decimos acá en México.


Felicidades.
La buena administración es utilizar el sentido común y la regla de oro; aunque el sentido común no es tan común como quisiéramos que fuera y, quien tiene el oro, hace las reglas.
George Terry

"A loser will defeat a genius with hard work"
Rock Lee