Ingenieria

Páginas: 2 (484 palabras) Publicado: 30 de julio de 2012
Manejo de bomba de agua en tanque elevado
Medición de nivel de tanque con sensor MPX10DP en cañería de bajada
Esquema:

GP2
AN0

PIC
12F675
Amplif
diferencial
sensor

GP1GP1:se conecta rele a bomba de agua
GP2: se conecta led indicador
Entrada: Pin An0 del PIC (rango de 2,5 v a 3 v)
A continuación se envía programa fuente en asembler:
list p=12f675;list directive to define processor

__CONFIG _CP_OFF & _CPD_OFF & _BODEN_OFF & _MCLRE_ON & _WDT_OFF & _PWRTE_ON & _INTRC_OSC_NOCLKOUT

#include "p12f675.inc";processor specific variable definitions

#define LED GP2
#define BOMBA GP1

nivel_superiorH equ 0x20
nivel_superiorL equ 0x21
nivel_inferiorH equ 0x22
nivel_inferiorL equ 0x23org 0
bsf STATUS,RP0 ; select bank 0
movlw 11h ; 00010001 AN0 as analog input Fosc/8
movwf ANSEL
movlw B'00000111'
movwf OPTION_REG;
bcf TRISIO,LED ;LED pin output
bcf TRISIO,BOMBA ;BOMBA pin activación

bcf STATUS,RP0
movlw B'10000001' ; Right justified
movwf ADCON0
clrf GPIOloop:
call read_ADC ;read ADC
movlw 0x02
movwf nivel_superiorH
movlw 0x53
movwf nivel_superiorL
call compara_superior ;nivel superior tanque
movlw0x02
movwf nivel_inferiorH
movlw 0x0B
movwf nivel_inferiorL
call compara_inferior ;nivel inferior
goto loop



read_ADC:
bcf STATUS,RP0
bsf ADCON0,GO ;inicia conversion
WaitADC:
btfsc ADCON0,GO
goto WaitADC ; wait ADC finalize
nop
nop
nop
bcf PIR1,ADIF ; clear flag
returncompara_superior ;compara unsigned 16-bit
bcf STATUS,RP0
movf ADRESH,w
subwf nivel_superiorH,w
btfss STATUS,C ;nivel>limite superiorH..zc,
;nivel<limite superiorH .zC,...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Ingenieria
  • Ingenieria
  • Ingenieria
  • Ingeniería
  • Ingenieria
  • Ingenieria
  • La ingenieria
  • Ingenieria

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS