TODOPIC
Microcontroladores PIC => Lenguaje Basic para microcontroladores PIC => Mensaje iniciado por: machuca_rock en 19 de Noviembre de 2008, 23:31:27
-
Holaaaaaa ! primero es saludarlos y bueno les cuento, estoy recien empezando a aprender y crear mis primeros programas, y bueno tengo la programacion del termometro para mi 16lf84a y tengo armado todo el circuito,
solo me qeda arreglar la programacion a ver si alguien me brinda alguna ayuda
se lo agradeceria mucho
aqui esta
' termometro digital
'------------------------------------------
DEVICE 16f84a
SYMBOL DQ = PORTB.0
DIM Temp AS WORD
DIM C AS BYTE
DIM CPerD AS BYTE
'*******************************************
SYMBOL LCD = portb.1
SYMBOL Baund2 16468
SYMBOL I 254
SYMBOL clrr 1
'*******************************************
inicio:
OWRITE DQ, 1, [$CC, $44]
REPEAT
DELAYMS 25
OREAD DQ, 4, [C]
UNTIL C <> 0
OWRITE DQ, 1, [$CC, $BE]
OREAD DQ, 2,[Temp.LOWBYTE,Temp.HIGHBYTE, C, C, C, C, C, CPerD]
Temp = (((Temp >> 1) * 100) - 25) + (((CPerD - C) * 100) / CPerD)
SEROUT LCD, Baund2, [I,128,"TEMp = "]
SEROUT LCD, Baund2, [I,192," ",dec Temp /1000, ",",dec1 Temp,$df,"C"]
GOTO inicio
ojala alguien me ayude
gracias :)
-
¿De que sensor hablamos, es el DS18B20 u otro? Y cuentanos cuales son tus problemas.
-
si es ese mismo sensor, la verdad es que esta programacion me la entregaron y no la entiendo, desconosco algunos comandos y la verdad no entiendo muy bien la programacion a ver si alguien me puede explicar para aprender y poder hacerla yo
se los agradeceria
-
Entonces lo primero que debes hacer es leer el manual y la ayuda de Proton ya que es el lenguaje que se usa, para que compreendas que es lo que hace y como funciona el programa
-
es que lo comprendo, por ejemplo
en este caso
el comando
OWRITE
no lo entiendo
-
OWrite es un comando especifico del bus One Wire.
OWrite envia por el bus un dato para configuracion por ejemplo.
-
o sea q con ese comando envio la info que esta llegando del sensor?
-
La primera parte del programa envia (con Owrite) la configuracion al dispositivo.
Luego espera la lectura enviada por el dispositivo que la lee con Oread, que es el comando de lectura.
Despues hace las cuentas necesarias para transformar los dos bytes hexadecimales enviado por el dispositivo en un valor decimal de tipo Word (Temp).
Finalmente envia esta informacion a un display LCD del tipo serial.
Una vez completado el ciclo vuelve a iniciarlo.
-
eso era lo que necesitaba saber !
te lo agradesco mucho, por el tiempo
y la forma en q me lo explicaste
Gracias :)
-
Es como el cuento del elefante y la hormiga, lo lograron con paciencia y mucha saliba.. :D :D :D :D
De nada.
-
hay algun error en los comandos?
-
No creo.
Y como dice Navaismo, deberias darle una buena hojeada al datasheet de ese integrado, asi conoces como es su protocolo. :mrgreen: