Control de luces para auto en ensamblador (asm) para pic16f628a

Solo disponible en BuenasTareas
  • Páginas : 4 (909 palabras )
  • Descarga(s) : 0
  • Publicado : 3 de junio de 2011
Leer documento completo
Vista previa del texto
;Hecho por Zeruelrojo
;Control de luces para automovil (prototipo) hecho en ensamblador para el pic 16f628A

list p=16f628A
radix hex
;***** CONFIGURATION BITS
include P16F628A.INC__CONFIG _WDT_OFF&_INTRC_OSC_NOCLKOUT&_CP_OFF&_PWRTE_OFF&_MCLRE_OFF&_LVP_OFF&_BODEN_OFF
;

;Puerto A para entradas
;Puerto B para salidas

;Cuartos: quedan encendidos cuando esta activo el carro;Freno: Se activa el freno (mayor intencidad de corriente al led (resistencia))
;Dir, izquierda: Parpadea cuando se selecciona
;Dir, Derecha: Parpadea cuando se selecciona

MEMORIA EQU 0X20;//////declara variables
CBLOCK MEMORIA
key1
key2
key3
key4
i
j
k
var1
endc

org 0
GOTO inicio


org 0x10
inicio
;//////inicio de el programa

call PUERTOS;//////llamopuertos

principal;//////punto de inicio de ciclo infinito

;//////Este fragmento de codigo analiza si ha apretado el boton de los cuartos del carro
;//////debido a que el tiempo de presionadopuede ser mayor a 1 microsegundo entonces vuelve a la misma etiqueta para evitar
;//////cambiar de instruccion hasta que este boton se suelte.

btfsc PORTA,0;//////si bit es 0 en la posicion 0ignora siguiente linea y salta a la otra
call CUARTOS;//////llama a cuartos
ala btfsc PORTA,0;//////misma situacion
goto ala;//////se cicla si se encuentra apretado el boton.

;//////Estefragmento de codigo guarda los estados de los puertos PORTB debido a que seran modificado cada vez que se utilizan
;//////freno, luz derecha y luz izquierda.

call SALVAR;//////guarda estados actuales delos puertos PORTB

;//////Este fragmento de codigo hace prender la luz de freno, todos las instrucciones se paralizan hasta que se suelte el freno
;//////posteriormente se ejecutara la secuenciaoriginal

btfsc PORTA,1;//////si bit es 0 en la posicion 1 ignora siguiente linea y salta a la otra
call FRENO;//////llama a freno
alb btfsc PORTA,1;//////si sigue apretado llama a alb si no...
tracking img