jueves, 21 de mayo de 2015

TANQUE DE AGUA

led var portb.0     ;etiqueta para el puerto b.0
boton1 var portb.1
boton2 var portb.2
boton3 var portb.3
boton4 var portb.4
buzzer var portb.5

high buzzer
pause 200
low buzzer

pepe:               ; subrutina pepe
    high led        ;encender la bomba
         ;esperar 1000 milisegundos (1 segundo)
if boton1 = 1 then low led  ; se paga la bomba tanque
if boton2 = 1 then high led ; se activa la bomba tanque
if boton3 = 1 then low led: high buzzer:pause 1000 ; apaga la bomba hasta que este lleno  
if boton4 = 1 then high led ; se activa la bomba para llenar el otro tanque 
goto pepe           ;
end                 ;fin de las instrucciones

jueves, 14 de mayo de 2015

LUCES CON RELE

EMISOR
INCLUDE "modedefs.bas"            ;incluyen los modos de comunicación
cmcon=7
botonA VAR portb.1             ;nombre botonA al puerto b.1
botonB VAR portb.2              
botonC VAR portb.3
botonD VAR portb.3           

transmitir:
IF botonA=0 THEN envio1      ;si el botonA es presionado ir a envio1
IF botonB=0 THEN envio2      ;si el botonB es presionado ir a envio2
IF botonC=0 THEN envio3      ;si el botonC es presionado ir a envio3
IF botonD=0 THEN envio4
GOTO transmitir

envio1:
SEROUT porta.0,N2400,["A"]      ;enviar "A" a 24008N1
    PAUSE 500
    GOTO transmitir
envio2:
SEROUT porta.0,N2400,["B"]      ;enviar "B" a 24008N1
    PAUSE 500
    GOTO transmitir
envio3:
SEROUT porta.0,N2400,["C"]      ;enviar "C" a 24008N1
    PAUSE 500
    GOTO transmitir 
envio4:
SEROUT porta.0,N2400,["D"]      ;enviar "C" a 24008N1
    PAUSE 500
    GOTO transmitir     
 
END

TRANSISTOR
cmcon=7
INCLUDE "modedefs.bas"            ;incluyen los modos de comunicación

trisb=0          ;habilito los puertos b
         
datos VAR BYTE              ;variable para almacenar el dato serial



recibir:
SERIN porta.0 ,N2400,datos    ;recibir dato serial y guardar en datos
IF datos="A" THEN      ;si es A encender ledr
portb=%10000000  ;habilitado el puerto b
pause 500       ;tiempo de encendido 1s
portb=%01000000  ;habilitado el puerto b
pause 500       ;tiempo de encendido 1s
portb=100000  ;habilitado el puerto b
pause 500       ;tiempo de apagado 1s
portb=010000  ;habilitado el puerto b
pause 500       ;tiempo de encendido 1s
portb=001000  ;habilitado el puerto b
pause 500       ;tiempo de encendido 1s
portb=000100  ;habilitado el puerto b
pause 500       ;tiempo de encendido 1s
portb=000010  ;habilitado el puerto b
pause 500       ;tiempo de encendido 1s
portb=000001  ;habilitado el puerto b
pause 500       ;tiempo de encendido 1s
endif
IF datos="B" THEN
portb=000001  ;habilitado el puerto b
pause 500       ;tiempo de encendido 1s
portb=000010  ;habilitado el puerto b
pause 500       ;tiempo de encendido 1s
portb=000100  ;habilitado el puerto b
pause 500       ;tiempo de encendido 1s
portb=001000  ;habilitado el puerto b
pause 500       ;tiempo de apagado 1s
portb=010000  ;habilitado el puerto b
pause 500       ;tiempo de encendido 1s
portb=100000  ;habilitado el puerto b
pause 500       ;tiempo de encendido 1s
portb=%01000000  ;habilitado el puerto b
pause 500       ;tiempo de encendido 1s
portb=%10000000  ;habilitado el puerto b
pause 500       ;tiempo de encendido 1s
endif

IF datos="C" THEN
portb=011000  ;habilitado el puerto b
pause 500       ;tiempo de encendido 1s
portb=100100  ;habilitado el puerto b
pause 500       ;tiempo de encendido 1s
portb=%01000010  ;habilitado el puerto b
pause 500       ;tiempo de encendido 1s
portb=%10000001  ;habilitado el puerto b
pause 500       ;tiempo de apagado 1s
portb=%01000010  ;habilitado el puerto b
pause 500       ;tiempo de encendido 1s
portb=100100  ;habilitado el puerto b
pause 500       ;tiempo de encendido 1s
portb=011000  ;habilitado el puerto b
pause 500       ;tiempo de encendido 1s
endif
IF datos="D" THEN
portb=%10000001  ;habilitado el puerto b
pause 500       ;tiempo de apagado 1s
portb=%01000010  ;habilitado el puerto b
pause 500       ;tiempo de encendido 1s
portb=100100  ;habilitado el puerto b
pause 500       ;tiempo de encendido 1s
portb=011000  ;habilitado el puerto b
pause 500       ;tiempo de encendido 1s
portb=100100  ;habilitado el puerto b
pause 500       ;tiempo de encendido 1s
portb=%01000010  ;habilitado el puerto b
pause 500       ;tiempo de encendido 1s
portb=%10000001  ;habilitado el puerto b
ENDIF
GOTO recibir

END

TRANSMISION PIC A PIC LCD

PROTEUS:PROYECTO

MICROCODE: TRANSMISOR 
                          RECEPTOR

miércoles, 22 de abril de 2015