Anda di halaman 1dari 13

Niple y Ensamblador

Lic. Braulio Parizaca Puma

Ejemplo 1: Programa LED con Interruptor

El ejemplo que muestra a continuacin es un programa de manejo de entradas y salidas simples. Consiste en detectar el estado del interruptor SW y en funcin del mismo encender y apagar el diodo LED. Si queremos en un momento determinado que el programa reinicie su funcionamiento solo debemos pulsar el pulsador de Reset.
Lic. Braulio Parizaca Puma

Programa LED con Interruptor

Esquema de circuito con LED y interruptor para simulacin.


+5V

R1
10k

R3
10k

U1
16 15 4 OSC1/CLKIN OSC2/CLKOUT MCLR RA0 RA1 RA2 RA3 RA4/T0CKI RB0/INT RB1 RB2 RB3 RB4 RB5 RB6 RB7 PIC16F84A 17 18 1 2 3 6 7 8 9 10 11 12 13

R2
330

D1
LED-RED

Lic. Braulio Parizaca Puma

Programa LED con Interruptor

Esquema de circuito simplificado simulacin y diagrama flujo.


+5V

para

0
U1
16 15 4 OSC1/CLKIN OSC2/CLKOUT MCLR RA0 RA1 RA2 RA3 RA4/T 0CKI RB0/INT RB1 RB2 RB3 RB4 RB5 RB6 RB7 PIC16F84A 17 18 1 2 3 6 7 8 9 10 11 12 13

Lic. Braulio Parizaca Puma

Programa LED con Interruptor generado por el programa Niple

Lic. Braulio Parizaca Puma

Programa LED con Interruptor generado por el programa Niple

Lic. Braulio Parizaca Puma

Programa LED con Interruptor generado por el programa Niple

Lic. Braulio Parizaca Puma

Programa LED con Interruptor

Esta es la cabeza del programa. Siempre debemos elegir al comienzo el tipo de microcontrolador que vamos a utilizar. En nuestro caso el PIC16F84A.

Lic. Braulio Parizaca Puma

Programa LED con Interruptor

A continuacin vamos etiquetar las posiciones de memoria de los registros de datos a fin facilitar su posterior empleo a la hora de realizar el programa.

Lic. Braulio Parizaca Puma

Programa LED con Interruptor

A continuacin colocamos en el vector 0 una instruccin de salto al comienzo del programa con ORG 5 saltamos el vector de interrupcin, situado en la posicin 4, comenzando el programa en la posicin 5.

Lic. Braulio Parizaca Puma

Programa LED con Interruptor


Lo primero que hay que hacer al comenzar un programa es configurar los registros que vamos a utilizar en este caso debemos configurar la puerta B como salida (el diodo LED debe estar en RB0) y el pin RA2 como entrada (donde se colocara el interruptor SW) para realizar la configuracin de las puertas pasamos al Banco 1, una vez configuradas volvemos al Banco 0 para continuar ejecutando el programa. Este es el bucle principal del programa. Mediante una instruccin de salto condicional comprobamos el estado del pin RA2. Si el interruptor esta en estado lgico 1 vamos a la rutina de ENCENDER, en la que sacamos una seal 1 por el pin RB0. Si en RA2 tenemos un 0, apagaremos el LED mediante la rutina APAGAR. Este bucle es infinito y se Lic. Braulio Parizaca Puma ejecutara continuamente.

Programa LED con Interruptor

Lic. Braulio Parizaca Puma

Programa LED con Interruptor

Lic. Braulio Parizaca Puma