Saludos desde venezuela.
Querio presentar este proyecto: medir tres sensores lm35 en un pic 16f877A y por cada puerto voy a enviar cada medicion: por ejemplo zona A, zona B, Zona C, mi duda es la siguiente, en el puerto b funciona todo bien mide el sensor y aparecen los numeros exactos, pero en los demas puertos mide el sensor pero me da otras medidas aca les dejo el codigo y el circuito para ver si alguien puede guiarme: no encontre como subir el circuito en proteus para que lo simulen pero leyendo el codigo se pueden guiar
gracias por su tiempo... saludos...
	
	
	
		
				
			Querio presentar este proyecto: medir tres sensores lm35 en un pic 16f877A y por cada puerto voy a enviar cada medicion: por ejemplo zona A, zona B, Zona C, mi duda es la siguiente, en el puerto b funciona todo bien mide el sensor y aparecen los numeros exactos, pero en los demas puertos mide el sensor pero me da otras medidas aca les dejo el codigo y el circuito para ver si alguien puede guiarme: no encontre como subir el circuito en proteus para que lo simulen pero leyendo el codigo se pueden guiar
gracias por su tiempo... saludos...
		Código:
	
	\'****************************************************************
\'*  Name    : temperatura zonas                               *
\'*  Author  : [gerardo salazar]                                 *
\'*  Notice  : Copyright (c) 2014 [select VIEW...EDITOR OPTIONS] *
\'*          : All Rights Reserved                               *
\'*  Date    : 23/09/2014                                        *
\'*  Version : 1.0                                               *
\'*  Notes   : para cualquier proyecto                              *
\'*          :                                                   *
\'****************************************************************
;DEFINE VELOCIDAD DE OSCILADOR
DEFINE OSC 4
\'***************************************************************
; PARÁMETROS DEL ADC
DEFINE ADC_BITS 10          ; NÚMERO DE BITS
DEFINE ADC_CLOCK 3          ; USAR CLOCK RC DEL AD
DEFINE ADC_SAMPLEUS 50      ; TIEMPO DE MUESTREO EN 50US
ADCON0 = %11000000          ; Para habilitar red interna RC.
ADCON1 = %10000000          ; HABILITA TODAS LAS ENTRADAS ANALOGICAS
\'*********************************************************************
; VARIABLES
apaga   var word
UNI     VAR BYTE
DECE    VAR BYTE
CEN     VAR BYTE
MIL     VAR BYTE
UNIDAD1 VAR BYTE
DECENA1 VAR BYTE
CENTE1  VAR BYTE
MILES1  VAR BYTE
UNIDAD  VAR BYTE
DECENA  VAR BYTE
CENTE   VAR BYTE
MILES   VAR BYTE
RES     VAR WORD                         ; RESULTADO DE LA CONVERSIÓN
VAL     var word
VAL1    VAR WORD
medida  var word
MEDIDA3 VAR WORD
voltio  var WORD
PRESION VAR WORD
TEMP1   VAR byte                       ; TEMPERATURA C
\'***********************************************************************
; HABILITA LOS PUERTOS
TRISA = %11111111                   ; TODOS LOS PUERTOS A SON ENTRADAS
TRISB = %00000000                   ; TODOS LOS PUERTOS B C D SON SALIDAS
TRISC = %00000000		
TRISD = %00000000
;***************************************************************************
; INICIAR EL CANAL 0 TEMPERATURA 
INICIO:
  ADCIN 0, RES                       ; LEER EL CANAL A
  TEMP1 = 488*RES                    ; 1024*488=499712;
  VAL = div32 100  
; RUTINA DEL DISPLAY 
  PAUSE 200 
  UNI = VAL DIG 1
  PORTB= UNI + 224
  PAUSE 100
  DECE = VAL DIG 2
  PORTB= DECE + 208
  PAUSE 100
  CEN = VAL DIG 3
  PORTB = CEN + 176
  PAUSE 100
  MIL = VAL DIG 4
  PORTB = MIL + 112
  PAUSE 100
;lectura del CANAL 1 VOLTAJE
   adcin 1, medida 
   voltio = 488*MEDIDA
   
;RUTINA DEL DISPLAY
PAUSE 100
  UNIDAD = voltio DIG 0 
  PORTC= UNIDAD + 224
  PAUSE 100
  DECENA = voltio DIG 1
  PORTC= DECENA + 208
  PAUSE 100
  CENTE = VOLTIO DIG 2
  PORTC = CENTE + 176
  PAUSE 100
  MILES = VOLTIO DIG 3
  PORTC = MILES + 112
  PAUSE 100 
;LECTURA DEL CANAL 2 PRESION 
  adcin 2, MEDIDA3 
   PRESION = 488*MEDIDA3
;RUTINA DEL DISPLAY
 UNIDAD1 = PRESION DIG 0  
  PORTD= UNIDAD1 + 224
  PAUSE 100
  DECENA1 = PRESION DIG 1
  PORTD= DECENA1 + 208
  PAUSE 100
  CENTE1 = PRESION DIG 2
  PORTD = CENTE1 + 176
  PAUSE 100
  MILES1 = PRESION DIG 3
  PORTD = MILES1 + 112
  PAUSE 100 
GOTO INICIO 
END ...Adjuntos
			
				Última edición por un moderador: 
			
		
	
								
								
									
	
								
							
							 
   
				 
						 
 
		 
 
		 
 
		 
 
		 
 
		