; ; ; ; ; ; ******************************************************** ** PROGRAMA N°2: MANEJO PUERTO B ** ** Nota: programa que realiza varias secuencias y las ** ** muestra por el puerto B ** ** ELECTRONICA DIGITAL Y MICROCONTROLADORES – EIA ** ******************************************************** ;---------------------------------------------------------------------------------------------------------------------------------; CONFIGURACION DEL MICROCONTROLADOR ;---------------------------------------------------------------------------------------------------------------------------------LIST p=16F877A ;---------------------------------------------------------------------------------------------------------------------------------;CONFIGURACION DE PINES Y REGISTROS ;---------------------------------------------------------------------------------------------------------------------------------W STATUS PORTB TRISB D1 D2 D3 EQU EQU EQU EQU EQU EQU EQU 00h 03h 06h 06h D'32' D'33' D'34' ;DIRECCION REGISTRO W ;DIRECCION REGISTRO STATUS ;DIRECCION REGISTRO PORTB ;DIRECCION TRISB ;DEFINICION VARIABLE D1 ;DEFINICION VARIABLE D2 ;DEFINICION VARIABLE D3 ;---------------------------------------------------------------------------------------------------------------------------------;VECTOR DE ORIGEN ;---------------------------------------------------------------------------------------------------------------------------------ORG GOTO 00 INICIO ;---------------------------------------------------------------------------------------------------------------------------------;CONFIGURACIÓN DE PUERTOS ;---------------------------------------------------------------------------------------------------------------------------------INICIO BCF BSF CLRF BCF STATUS,6 STATUS,5 TRISB STATUS,5 ;SALTO AL BANCO1 ;CONFIGURO PUERTO B COMO SALIDA ;SALTO AL BANCO 0 ;---------------------------------------------------------------------------------------------------------------------------------;PROGRAMA PPAL ;---------------------------------------------------------------------------------------------------------------------------------PPAL MOVLW MOVWF CALL MOVLW MOVWF CALL MOVLW MOVWF CALL MOVLW MOVWF CALL MOVLW MOVWF CALL MOVLW MOVWF CALL MOVLW B'11001100' PORTB PAUSA B'00110011' PORTB PAUSA B'11001100' PORTB PAUSA B'00110011' PORTB PAUSA B'11001100' PORTB PAUSA B'10000001' PORTB PAUSA B'01000010' ;MUEVO EL LITERAL A W O CARGO W ;MUEVO EL CONTENIDO DEL REGISTRO W A PUERTO B ;LLAMA A LA SUBRUTINA PAUSA, ESPERA UN TIEMPO DETERMINADO MOVWF CALL MOVLW MOVWF CALL MOVLW MOVWF CALL MOVLW MOVWF CALL MOVLW MOVWF CALL MOVLW MOVWF CALL GOTO PORTB PAUSA B'00100100' PORTB PAUSA B'00011000' PORTB PAUSA B'00100100' PORTB PAUSA B'01000010' PORTB PAUSA B'10000001' PORTB PAUSA PPAL ;SALTO A PPAL ;--------------------------------------------------------------------------------------------------------------------------------------------------------------------;SUBRUTINA DE PAUSA SUBRUTINA QUE ESPERA APROXIMADAMENTE 1s ;--------------------------------------------------------------------------------------------------------------------------------------------------------------------PAUSA PAUSA3 PAUSA2 PAUSA1 MOVLW MOVWF MOVLW MOVWF MOVLW MOVWF DECFSZ GOTO DECFSZ D'200' D1 D'100' D2 D'10' D3 D3,F PAUSA1 D2,F ;PARA QUE ESPERE 1s D1=200 ;PARA QUE ESPERE 1s D2=100 ;PARA QUE ESPERE 1s D3=50 GOTO DECFSZ GOTO NOP RETURN PAUSA2 D1,F PAUSA3 ;--------------------------------------------------------------------------------------------------------------------------------------------------------------------;FIN DEL PROGRAMA ;--------------------------------------------------------------------------------------------------------------------------------------------------------------------END