Problema con POT en PBP

Quiero variar la intensidad de un led a traves de un micro 16F628A...
Con pulsadores me funciona perfecto, estas son las instrucciones que use...


botsubir VAR portb.1 ;nombre para el pin B1
botbajar VAR portb.2 ;nombre para el pin B2
LED VAR portb.3 ;nombre para el pin B3
FREC VAR BYTE ;variable FREC tamaño 255
bandera VAR BIT ;variable bandera de 1 bit
FREC = 125 ;valor inicial para variable FREC
HIGH LED ;encender el led para saber que ya arrancó
PAUSE 500 ;por medio segundo
LOW LED ;apagar el led
PROG:
PWM PORTB.0,FREC,30 ;sacar PWM 30 ciclos de 125 señal útil
LOW LED ;apagar el led
IF botsubir =0 THEN SUBIR ;si se pulsa el botón S ir a subir
IF botbajar =0 THEN BAJAR ;si se pulsa el botón B ir a bajar
bandera =0 ;bandera cargado con cero
GOTO PROG
SUBIR:
IF FREC > 250 THEN aviso ;si supera a 249 ir a aviso
IF bandera = 1 THEN prog ;si la bandera esta en 1 salir
HIGH LED ;encender el led
bandera=1 ;cargar la bandera con uno
FREC = FREC +5 ;sumar 25 a la variable FREC
GOTO PROG ;ir a prog
BAJAR:
IF FREC < 10 THEN aviso ;si baja de 26 ir a aviso
IF bandera = 1 THEN prog ;si la bandera esta en 1 salir
HIGH LED ;encender el led
bandera=1 ;cargar la bandera con uno
FREC = FREC -5 ;restar 25 a la variable FREC
GOTO PROG ;ir a prog
aviso:
HIGH LED ;encender el led
GOTO PROG ;ir a prog
END


Lo que quiero ahora es manejar la variable con el potenciometro... Probé con un pote de 10K y un capacitor de 0.1 microF pero no logro que funcione, el led enciende y apaga 2 o 3 veces por segundo y no varia nada cuando giro el potenciometro...

Si alguien sabe como cargar la variable le agradezco de antemano....
 
Gracias Chaplin por contestar...
Estuve viendo un manual de PBP en que se utiliza un LCD para leer el pot y dice que hay que encontrar por prueba y error el valor de "scale"... Estoy intentando simular en Proteus pero en la realidad no funciona y no puedo usar ese metodo porque no tengo LCD...
Como puedo "ver" si cambia la variable... Es decir como puedo leerla sin el LCD???
Pense en encender un led si supera tal valor por ejemplo... Pero no va a ser facil...
Alguna idea???
Si logro que ande subo los valores asi nadie mas reniega con esto...
 
podrias poner varios leds y de acuerdo a el valor que leas encenderlos secuencialmente, me explico,
si el valor supera a el anterior encender otro led y haci haste el valor que quieras , tambien podrias utilizar el puerto b completo y limitar el valor de pot de 0 a 255 y representarlo por el puerto b leyendo desde el puerto A, saludos.
 
Atrás
Arriba