TODOPIC
Microcontroladores PIC => Lenguaje Basic para microcontroladores PIC => Mensaje iniciado por: chapka en 13 de Marzo de 2006, 10:41:00
-
Estiamdos, soy nuevo en el foro y como usuario de PIC"s.
Tratando de iniciarme en esto he decidico hacer pruebas con señales analógicas.
Para ello intento hacer un voltímetro con un PIC 16f876 y un LCD 2x16.
Tomando como ejemplo algunas cosa leídas elprograma sería...
Define LOADER_USED 1
Define ADC_BITS 8
Define ADC_CLOCK 3
Define ADC_SAMPLEUS 50
Define LCD_DREG PORTB
Define LCD_DBIT 4
Define LCD_RSREG PORTB
Define LCD_RSBIT 3
Define LCD_EREG PORTB
Define LCD_EBIT 0
Define LCD_BITS 4
Define LCD_LINES 2
Define LCD_COMMANDUS 2000
Define LCD_DATAUS 50
adval var word
portb = $00
trisB = %00000000
trisA = %11111111
adcon1 = %00000010
Start:
adcin 2, adval
lcdout $fe,1, #(adval * (19576/100))
lcdout $fe, 2
goto Start
Utilizando el Simulador PROTEUS veo que la lectura es "parecida" a lo que yo quiero, ya que la cifra que se ve es entera, es decir que para 14.05Volts se visualiza 1405Volts y así sucesivamente.
Cómo sería la rutina para poder incluir el "." y separa los enteros de los decimales?.
El valor "19576" está para "convertir" la lectura hexa en decimal. No sé si está bien.
Además hay otro inconveniente, el PIC y el Xtal están seteados a 1MHz y la lectura es parpadeante, si la pongo a 4MHz... no se ve NADA!?
Desde ya agradezco vuestra ayuda.
Atte.
Gustavo.
Argentina.
-
Observando unos temas anteriores en este foro he encontrado la respuesta... parcial, ya he solucionado el tema de la coma o punto, pero no del parpadeo, podrían por favor ayudarme.
Muchas gracias.
-
Hola,
Como seteaste el PIC a 1MHz? colocaste un cristal de 1 MHz?, creo que deberias definir la velocidad del oscilador q estas usando como DEFINE OSC 4
Saludos
-
Hola!... gracias por responder.
Mira, he seteado en el Proteus la frec. del Xtal y del PIC con el editor del simulador a un valor de 4MHz.
Tal me has comentado intruje esa sentencia en el programa... y nada!... todo sigue igual... el LCD en blanco... solo puedo ver datos con la frec. a 1MHZ 
Saludos.
-
Quitale estas definiciones a ver que pasa:
Define LCD_COMMANDUS 2000
Define LCD_DATAUS 50
porque utilizas el ADC a 8 bits?
Salu2
-
hola:
amigo hoz poder subir los archivos aki al foro ya que como te conte me has dado un buen ejemplo para hacer un proyecto como un voltimetro para una fuente, que estoy diceñando para mi...
y este archivo lo compilo con el picbasic pro, y no se que pasa pero me da un arrro amigo..
cuidate y te agradeceria tu apoyo....
-
Hola
prueba de utilizar los puertos por defecto que tiene PBP para el manejo del LCD para descartar problemas de configuracion de puertos!! luego si esto funciona configura y utiliza los pines que vos quieras.-
saludos 
-
Hola:
Si el problema es el LCD este ejemplo de aqui funciona bien:
http://miarroba.com/foros/ver.php?foroid=382961&temaid=4270632&pag=6