control temperatura usando sensor de temperatura lm35

3
CONTROL DE TEMPERATURA - 000 ºC A 124ºC

Upload: carloselectronica

Post on 13-Aug-2015

171 views

Category:

Documents


8 download

TRANSCRIPT

Page 1: Control Temperatura Usando Sensor de Temperatura LM35

CONTROL DE TEMPERATURA - 000 ºC A 124ºC

Page 2: Control Temperatura Usando Sensor de Temperatura LM35

;----------------------------------------------------

;Programa usando sensor de temperatura LM35

;Rango de medición y control:000ºC a 124ºC

;Autor: Ing.Carlos Enrique Mendiola Mogollón

;----------------------------------------------------

list p=16f877

include<p16f877.inc>

include<macro16f877.inc>

__config 0x3f32

cblock 0x20

SetPoint

endc

org 0000h

banco 1

clrf trisb ;Salida displays

bcf trisc,0 ;Control Display Unidad

bcf trisc,1 ;Control Display Decena

bcf trisc,2 ;Control Display Centena

bcf trisc,6 ;indicador led

bcf trisc,7 ;Control de carga

banco 0

;--------------------------------------------

;Estado inicial de los displays y carga

movlw .0

call DisplayCatodoComun

movwf portb ;portb=codigo 0

bsf portc,0 ;Unidad ON

bsf portc,1 ;Decena ON

bsf portc,2 ;Centena ON

bcf portc,6 ;Indicador OFF

bcf portc,7 ;Carga OFF

clrf SetPoint

;--------------------------------------------

;Testeo inicio del sistema

btfss portc,3 ;Testeo inicio

goto $-1

bsf portc,6 ;Indicador ON

segundo .2

bcf portc,6 ;Indicador OFF

btfsc portc,3

goto $-1 ;Testeo dejar de pulsar

;--------------------------------------------

;Configuración de canal ADC

movlw .0 ;Canal 0

call Inicio_ADC

;--------------------------------------------

;Conversion 10bits

RepiteProceso

call ADC10Bits

;--------------------------------------------

;Operación matemática y visualización del

;resultado en los displays

movf RegADC1,0

Page 3: Control Temperatura Usando Sensor de Temperatura LM35

movwf NumMult1

mover NumMult2,.49

call Mult8x8Bits ;[NumMult1]x49

movf NumA3,0

call DisplayCatodoComun

movwf portb

bsf portc,0 ;Display Unidad ON

bcf portc,1 ;Display Decena OFF

bcf portc,2 ;Display Centena OFF

milisegundo .80 ;Tiempo de commutación

movf NumB1,0

call DisplayCatodoComun

movwf portb

bcf portc,0 ;Display Unidad OFF

bsf portc,1 ;Display Decena ON

bcf portc,2 ;Display Centena OFF

milisegundo .80 ;Tiempo de commutación

movf NumB2,0

call DisplayCatodoComun

movwf portb

bcf portc,0 ;Display Unidad OFF

bcf portc,1 ;Display Decena OFF

bsf portc,2 ;Display Centena ON

milisegundo .80

;---------------------------------------------

;Ingreso del set point:Grado de temperatura

;deseado

movf portd,0 ;Temperatura a fijar

movwf SetPoint

movregistro BCD_Unidades,NumA3

movregistro BCD_Decenas,NumB1

movregistro BCD_Centenas,NumB2

call bcd_to_bin

csmair BCD_Numero,SetPoint,CargaOFF

goto CargaON

goto RepiteProceso

;---------------------------------------------

;Control de carga

CargaOFF

bcf portc,7 ;Carga OFF

goto RepiteProceso

CargaON

bsf portc,7 ;Carga ON

goto RepiteProceso

;---------------------------------------------

include<electronicpic16f877.asm>

include<conversion.asm>

include<mult8x8.asm>

include<adc.asm>

end