Sensores temperatura con pic 16f877a

#1
Hola, bueno soy nuevo en la programacion de pic y me surgio una duda por que para un proyecto tengo dos sensores y queria saber como con el A/D puede hacer que mande un 1 cuando la temperatura sea mayor de 50 y que sea cada uno independiente para checarlo uno por uno. si alguien me puede ayudar por favor se lo agradeceria. esta es una parte del codigo que hice como entendi las intrucciones del data. :)

Código:
	INCLUDE		<P16f877A.INC>
	LIST		P=16f877A

;Declaracion de direcciones

STATUS	equ		0x03
TRISA	equ		0x85
TRISB	equ		0x86
PORTA	equ		0x05
PORTB	equ		0x06
ADRESH	equ		0x1e
ADRESL	equ		0x9e
ADCON0	equ		0x1f
ADCON1	equ		0x9f

;Cambio de bancos

	org		0x00		; Aqui inicia el programa

Bancos	bsf		STATUS,RP0	; Cambio al banco 1
	movlw		b'00011000'	; Cargo 2 entradas anaalogicas y 2 seran salidas
	movwf		TRISB		; Muevo el numero al registro TRISB
	movlw		b'00000010'	; Coloco el voltaje de referencia 2 V
	movwf		ADCON1		; Configuracion de las entradas analogicas
	bcf		STATUS,RP0	; Me regreso al banco 0
	movlw		b'01000001'	; Pongo la frecuencia y el registro
	movwf		ADCON0		; Para leer el convertidor

Cambio


Inicio	bsf 		ADCON0,1	; Se coloca el bit 1 como entrada de CA 
	btfss		ADCON0,1	; Verifica si hay un uno en l entrada
 
Última edición:
#2
Estimado Compañero para comenzar los pines analógicos están en el puerto A y el puerto E. para poder ayudarte dime que sensor de temperatura estas usando?. Bueno tienes la idea, así mas o menos es pero falta código. Dime si tienes que mostrar en LCD o Simplemente que encienda un led cuando la temperatura sea mayor a 50°?
Y por ultimo dime si manejas proteus para enviarte codigo bien comentado y simulacion
 
#3
hola mira es el lm35 lo que hace es un riel y estan dos sensores separados y hay un carrito y este se mueve al sensor correspondiente si la temperatura es mayor a 50 grados lo de mover y checar si es 1 o 0 el registro eso si se como hacerlo pero lo de como decirle al sensor que me mande una señal de 1 cuando tenga sea mayor de 50, eso es en lo que ando batallando y si manejo el proteus. gracias por contestar soy novato aun
 
#4
Hola
espero me puedan colabora, soy nuevo en esto.
debo programar en un micro-controlador (pic 16f877) en lenguaje asembler, que cumpla con las siguientes condiciones:
1. Temperatura mínima: 32 °C, Vo4(t) = 0V.
2. Temperatura maxima: 42 °C, Vo4(t) = 5V.
3. Si la temperatura es mayor a 36 °C y menor a 38 °C, en el display debe aparecer “Normal” y encenderse el Led Verde.
4. Si la temperatura es menor a 36 °C, en el display (puede ser LM) debe aparecer “Hipotermia” y encenderse y apagarse el Led amarillo 2 veces por segundo y activarse el zumbador.
5 . Si la temperatura es mayor a 38 °C, en el display debe aparecer “Hipertermia” y encenderse y apagarse el Led rojo 2 veces por segundo y activarse el zumbador.
Agradezco su colaboraciÓn.
 
#5
Hola
espero me puedan colabora, soy nuevo en esto.
debo programar en un micro-controlador (pic 16f877) en lenguaje asembler, que cumpla con las siguientes condiciones:
1. Temperatura mínima: 32 °C, Vo4(t) = 0V.
2. Temperatura maxima: 42 °C, Vo4(t) = 5V.
3. Si la temperatura es mayor a 36 °C y menor a 38 °C, en el display debe aparecer “Normal” y encenderse el Led Verde.
4. Si la temperatura es menor a 36 °C, en el display (puede ser LM) debe aparecer “Hipotermia” y encenderse y apagarse el Led amarillo 2 veces por segundo y activarse el zumbador.
5 . Si la temperatura es mayor a 38 °C, en el display debe aparecer “Hipertermia” y encenderse y apagarse el Led rojo 2 veces por segundo y activarse el zumbador.
Agradezco su colaboraciÓn.
pues que te digo, asembler hace bastante tiempo no manejo, me pase al c por comodidad y manejo, utilizo ccs, por si acaso te sirve he subido un ejemplo con mas o menos lo que necesitas en este hilo

https://www.forosdeelectronica.com/f24/programa-conversion-d-pic-16f877-6061/#post174702

si tengo tiempo te colaboro en asembler, es que ando un poco ocupado saludos.......
 
Arriba