EDUPIC 16F628 Manual Del Usuario página 22

Tabla de contenido
PASO 8: CONFIGURAR MPLAB. EDITAR, ENSAMBLAR Y SIMULAR UN PROGRAMA EN LA PC:
MPLAB es un programa que integra numerosas funciones adicionales a las que se cubren en este manual. Desde
MPLAB se puede, por ejemplo compilar archivos 16F628 en lenguajes de alto nivel. La versión 8.50 de MPLAB, instala
automáticamente el compilador Hitech 9.70 PL1. Sin embargo, el presente manual, no incluye la descripción de la utilización
de este compilador dentro de MPLAB. Se deja al usuario el estudio de dicho lenguaje y su uso dentro del MPLAB.
Abra desde el escritorio el archivo ejecutable MPLAB IDE. Para configurarlo, elija la opción "configure", "select
device". Allí elija la opción "16F628". Ahora señale la opción "file", "open" y después elija el path \archivos16F628. Allí elija el
archivo "demofF628.asm". El listado del archivo fuente demofF628.asm es el siguiente:
; File DEMOF628.ASM
; Assembly code for PIC16F628 microcontroller
; Enciende leds del puerto B con un patrón de rotación
; Oscilador Cristal de 4 Mhz. Cada LED enciende durante 0.5 seg.
; Configuración del CPU
; 16F628, Oscilador cristal 4 Mhz,
; watchdog timer off, power-up timer on
; incluye archivo p16F628.inc
processor 16F628
include
config _XT_OSC & _WDT_OFF & _PWRTE_ON & _LVP_OFF &_MCLRE_ON
J
equ
K
equ
; Programa
org
0
movlw
movwf
movlw
movwf
movlw B'00000000'
tris
PORTB
movlw B'00000001'
movwf PORTB
bcf
STATUS,C
mloop: rlf
PORTB,f
movlw D'200'
movwf J
jloop:
movwf K
kloop: decfsz K,f
goto
kloop
decfsz J,f
goto
jloop
goto
mloop
end
Este es un programa cuya función es encender los leds del puerto B con un patrón de rotación. Observe cada
instrucción y familiarícese con cada una de las directivas usadas, en particular:
include <p16F628.inc>
archivo p16F628.inc, el cual ya contiene numerosas directivas con equivalencias de los registros, y los bits usados por el 16F628.
config _XT_OSC & _WDT_OFF & _PWRTE_ON & _LVP_OFF &_MCLRE_ON
programa el registro de configuración del PIC, en la dirección 2007H.
J
equ
H'20'
directiva EQU, para facilidad al programar.
<p16F628.inc>
H'20'
; localidad 20 es J
H'21'
; localidad 21 es K
; origen de memoria flash =0
0x7
CMCON
0x0
VRCON
; w := 00000000
; puerto B=0 (bits son salidas)
;
; port B =1
;carry=0
;rotate left PORT B (incluye carry)
;retraso antes de seguir rotación
; J := w
; K := w
; K = K-1, skip next if zero
; J = J-1, skip next if zero
EDUPIC 16F628 Punto Flotante, S.A. 2010
22
permite incluir dentro del programa, y como si fuera parte del mismo, al
permite usar la variable J en lugar del valor hexadecimal a través de la
Tabla de contenido
loading

Tabla de contenido