Tutorial MPLAB 1


Introducción:
Hola amigos, como bien sabemos el uso de los microcontroladores PIC tiene una gran variedad de aplicaciones.
Y Mplab es una herramienta importante cuando hacemos nuestros programas.
Este tutorial voy a tratar de hacerlo lo más práctico posible. 

Precaución:
Bueno por ser un tutorial de MPLAB, y no microcontroladores PIC aquí voy a suponer que el lector ya
conoce las instrucciones, y los registros básicos del PIC16F84 que será el que vamos ha usar en este
tutorial por su sencillez, así que seria bueno haberlo estudiado antes.

Características:
Mplab es un entorno integrado, de Propiedad de Microchip, y  lo mejor es que es gratuito
si no conocen su interfase se los presento

Bueno, en este primer tutorial veremos como crear un archivo, adjuntarlo a un proyecto, compilarlo, 
ejecución paso a paso, Poner estímulos y simularlo
. Para esto vamos a hacer un contador de impulsos
con el siguiente esquema.

ahora vamos a crear un Documento Nuevo (Presionamos CTRL + N ),
lo guardamos como prueba1.asm y luego escribimos:


list p=16F84
#include <p16f84.inc>
temporal equ 0x20
    org 00
    goto main
    org 05
main
    bsf STATUS,RP0     ;Paso al banco 0
    bcf STATUS,RP1
    movlw b'01000'     ;RA3 Entrada = '1'
    movwf TRISA
    clrf TRISB          ;PORTB Salidas
    bcf STATUS,RP0      ;Regreso al Banco 0
    clrf temporal       ;Inicializo Cuenta
    clrf PORTB          ;y Inicializo puerto
infinito
    btfsc PORTA,3       ;si se presiona RA3 
    goto infinito
espera                   ;espera 
    btfss PORTA,3       ;Antirebote
    goto espera
    incf temporal,W
    andlw 0x0F          ;Me aseguro q no llegue
                         ;a 15 = 0x0F = b'1111'
    movwf temporal
    movwf PORTB
    goto infinito
END

Como este es un contador de pulsos, Ocurren los famosos rebotes.
ya que como el uCo es más rápido que nuestra mano, este seguirá contando
y cuando nosotros soltamos el botón aparecerán otros impulsos fantasmas

 Es por eso que mediante software nos aseguramos que solo se cuente una vez
cuando se presiono y se soltó.
Ahora una vez terminado nuestro código, vamos a crear nuestro Proyecto.
pare esto en la barra de herramientas seleccionamos: Project /Project Wizard ...

le damos a siguiente.
Ahora seleccionamos el tipo de componente escojemos PIC16F84


Luego el Acitive Toolsuite "Microchip MPASM Toolsuite" y siguiente

Luego Escojemos el nombre del Proyecto y la carpeta de trabajo

Luego agregamos los archivos y tenemos, con esto ya tenemos el proyecto.
ahora vamos a compilar para lo que presionamos CTRL + F10

luego de compilar; sino hubo errores sale todo en verde, y si los hubo aparecerá en Rojo indicando donde
Ahora vamos a escojemos el tipo de depurador.

Luego de esto Creamos sus Estimulos.

Ahora nos ponemos a Depurar, para lo Cual hacemos Click en el boton Animate, comienza a simular
paso a paso, instruccion por instrucción y cuando llega a


infinito
    btfsc PORTA,3       ;si se presiona RA3 
    goto infinito
espera                   ;espera 
    btfss PORTA,3       ;Antirebote
    goto espera


aquí, esta en un bucle, infinito, hasta q RA3 sea '0', y si es '0' esperara que sea '1' de nuevo para
continuar, es decir espera un flanco completo, y luego incrementa a PORTB.
Esto lo podemos comprobar si hacemos varios click en Pulso low (Ventana Stimulus Controller),
en Watch se verá como en la figura como va incrementando.

Despedida:
Bueno, espero haberles ayudado.
cualquier Inquietud a: yoelocmin@hotmail.com

Yoel Ocmin
http://proyectosfie.tk