Uso de COMPARADOR en el PIC 12F675

Se desean probar tres casos: a) Como comparador con Vref externa; b) Idem con Vref
interna; c) Idem b) con histéresis.
a) Para usarlo como comparador con Vref externa, deben usarse los pines 6 (CIN-),
7 (CIN+) y 5 (COUT). Las dos primeras son entradas analógicas; COUT es una salida
digital que depende de las entradas: si la tensión aplicada a CIN+ es mayor que la
tensión aplicada a CIN-, luego COUT = 1. Si CIN+ < CIN-, COUT = 0.
Debido a que hay ocho formas distintas de usar el comparador, es necesario
configurarlo según la forma que se desee usar. Para ello, es necesario estudiar el SFR
dedicado al comparador, que se llama CMCON y que se encuentra en la dirección 19h
de los SFR. Si bien la función de comparación es parecida en todos los PICs que la
poseen, es necesario consultar la hoja de datos específica del 12F675 para no cometer
algún error que luego se traduce en un mal funcionamiento del comparador. El registro
CMCON para el 12F675 tiene los siguientes bits de configuración:

Para poder comprobar este caso. si la tensión aplicada con RV1 es mayor a 2. 1 y 0. indicados como CM2:CM0 en la figura anterior. el led enciende. el led se mantiene apagado. es decir los bits 2.5 V. se arma el circuito de la figura: En este esquema se ve que la Vref se logra con el divisor de tensión formado por R1 y R2. Por ejemplo.De este sencillo cuadro extraído de la hoja de datos de desprende que la mayor atención se debe prestar a los bits de modos de comparación. usando una referencia externa de tensión. lo que da el Comparador con salida. El programa usado (lenguaje PBP) para la simulación en Proteus es el de la siguiente figura: . si por el contrario es menor. por lo que la Vref será de 2. uno de los casos más simples para probar el comparador. de 10 K cada una. Luego. algunos para referencia externa de tensión y otros para referencia interna. dado que COUT=1.5 V. Con estos tres bits se pueden configurar 8 modos de comparación. se colocan estos tres bits en 001.

b) Para usarlo como comparador con Vref interna Una de las pocas desventajas que tiene el 12F675. se debe comprender bien el uso del registro VRCON. es que sólo dispone de 6 pines I/O para las múltiples funciones que puede realizar. luego si no se desea perder un pin para ingresar un Vref externa. Para ello. lo ideal es utilizar la excelente posibilidad de dar esta referencia por software. que se encuentra en la dirección 99h de los SFR (ver hoja de datos del 12F675) y que se puede apreciar en la siguiente figura: .

bits 6 y 4: no configurables (quedan en cero) bit 5 =1: => se usa rango bajo (VRR=1) bits 3. no multiplexar luego =0.Para facilitar los cálculos.< Vref int=Vin+ y COUT = 0 si Vin.5V para rango bajo y Vdd=5V El circuito de prueba usado en proteus mas el programa en PBP son los de las figuras siguientes.1 y 0: => 1100. bit 6 (es sólo lectura) bit 4: si se deja en cero. como la única posibilidad de ingreso de Vref interna es por Vin+ (en el caso a) la podíamos ingresar también en Vin-). es interesante tener presente esta tabla. lo que significa: bit 7 = 1: => se usa referencia interna (VREN=1). si se desea usar una referencia interna de tensión para un circuito similar al planteado en el punto a). según la tabla a 2. se deberán configurar los Registros de la siguiente manera: CMCON=00000011 lo que significa: bits 7 y 5: no configurables (quedan en cero). entonces ahora será COUT = 1 si Vin. que corresp. o sea “Comparador con salida y referencia interna”.2. .> Vref int=Vin+. bit 3: Se adopta el caso más sencillo. bits 2. El otro registro debe ser : VRCON = 10101100. que es válida obviamente si se alimenta todo con 5 V regulados: De todo lo anterior entonces.1 y 0= 011 se adopta el modo del cuadro N° 5 de la figura de modos del comparador.

c) Para usarlo como comparador con Vref interna e histéresis .