Microprocesadores

Page 112

; interrupción es la 0004H, pero como en este proyecto no se usan ; las interrupciones, podemos seguir con el programa. ; Se ponen todas las terminales del puerto B como salidas, y se ; colocan en ceros. Nota que dado que el registro TRISB está en el ; banco de memoria 1, hay que configurar el bit RP0 del registro ; STATUS para que pueda ser modificado. MOVLW BSF MOVWF BCF MOVWF

b'00000000' STATUS, RP0 TRISB STATUS, RP0 PORTB

; Ahora vamos a implementar la subrutina de espera SEG; para ello ; vamos a colocar tres contadores anidados uno dentro de otro, dos ; de 255 a cero y uno de 15 a cero; con esto se consigue un retraso ; de poco más de 1 segundo. SEG

SEGA

MOVLW MOVWF MOVWF MOVLW MOVWF DECFSZ GOTO DECFSZ GOTO DECFSZ GOTO RETURN

b'11111111' CONT1 CONT2 b'00001111' CONT3 CONT1, 1 SEGA CONT2, 1 SEGA CONT3, 1 SEGA

; Se enciende Verde1 y Rojo2, se coloca un indicador en este punto PUNTO1

MOVLW MOVWF

b’00100001’ PORTB

; Se carga la cantidad de tiempo en el registro respectivo MOVLW MOVWF

b'00101000' TIEMPO

; Se llama a la subrutina de retraso de SEG. Se coloca un marcador ; en este punto. Comienza a decrementarse el registro TIEMPO, cuando

109


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.