Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

15/09/2010 #1


Conmutador de dos botones, Pic16f877
BUENO LO Q HACE ESTE PROGRAMA...... TOMA el valor de dos pulsadores en el puerto b
y prende o apaga el puerto A el RA0............ bueno no logro hacer q el progrma corra en mplab dice q q el ptach exedio los 62 caracteres y no se como solucionra esto
espero q me ayuden les dejo el programa xacias de ante mano.........
pd me salen un monton de warnings pero tal ves sea por eso...........

List P=16f877A ; tipo de microcontrolador
#INCLUDE <P16F877A.inc> ; archivo de definicioneS
__CONFIG 0x3F71
PDel0 EQU 0x70
PDel1 EQU 0x71
CONF_ADCON1 EQU b'00000110' ; configura portA como E/S DIGITAL
ORG 0x000 ; origen de programacion
GOTO INICIO
;---------------------------------------------------------------
; RETARDO DE 20 MS
;---------------------------------------------------------------
RET_20ms movlw .21
movwf PDel0
Ploop1 movlw .237
movwf PDel1
Ploop2 clrwdt
decfsz PDel1, 1
goto Ploop2
decfsz PDel0, 1
goto Ploop1
PDelL1 goto PDelL2
PDelL2 clrwdt
return
;---------------------------------------------------------------
; Programa Principal
;---------------------------------------------------------------
INICIO
bsf STATUS,RP0 ;Ir al banco1
bcf STATUS,RP1
movlw CONF_ADCON1 ;Conf. PuertoA como digital
movwf ADCON1
movlw 0xFF ;Conf. PortB como entrada
movwf TRISB
movlw 0x00 ;Conf PortA como salida
movwf TRISA
bcf STATUS,RP0 ;Ir al Banco0
bcf STATUS,RP1
TEST_0
BTFSC PORTB,0 ; comprueba si RBO=0
GOTO TEST_1 ; si RBO=1 comprueba a comprobar RB1
CALL RET_20ms ; si RBO=O (pulsado) llama a un retardo.
BTFSC PORTB,0 ; comprueba de q RBO=0 si no HUBO ERROR
GOTO TEST_0
SUELTA_0
BTFSS PORTB,0 ; comprueba si RBO=1 (si se solto)
GOTO SUELTA_0 ; no SOLTARON (RBO=0) sigue en bucle
GOTO CONMUTA ; va a prender o apagar el foco
TEST_1
BTFSC PORTB,1 ; comprueba si RB1=0
GOTO TEST_0 ; si RB1=1 comprueba a comprobar RB1
CALL RET_20ms ; si RB1=O (pulsado) llama a un retardo.
BTFSC PORTB,0 ; comprueba de q RB1=0 si no HUBO ERROR
GOTO TEST_1
SUELTA_1
BTFSS PORTB,1 ; comprueba si RBO=1 (si se solto)
GOTO SUELTA_1 ; no SOLTARON (RBO=0) sigue en bucle
GOTO CONMUTA ; va a prender o apagar el foco
CONMUTA
BTFSS PORTA,0
GOTO ON
GOTO OFF
ON
bsf PORTA,0
GOTO TEST_0
OFF
bcf PORTA,0
GOTO TEST_0
END
15/09/2010 #2

Avatar de DOA

Respuesta: Conmutador de dos botones........ Pic16f877
Es por la dirección donde se encuentra el archivo, hay que ubicarlo en una dirección mas cercana a la raiz del disco, por ejemplo C:\conmutador
17/09/2010 #3


Respuesta: Conmutador de dos botones, Pic16f877
che muchas gracias ya lo compile......... ya estare subiendo mi proyecto para q lo esten viendo los compañeros del foros xcias por la ayuda.........
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.