Beruflich Dokumente
Kultur Dokumente
Intermitencia (ASM).
Objetivo: Que el alumno realice un pequeo programa de prueba en ensamblador para empezar a
familiarizarse tanto con el software como con el hardware.
Introduccin: Esta prctica ayudar al alumno a familiarizarse con el software Mplab y al utilizar el
simulador le ayudar a entender como funciona la arquitectura del microcontrolador. En el
simulador(MPLABSIM) se pueden ver los movimientos en los registros, la memoria de datos, la memoria de
programa, el registro de estado,etc. Se recomienda abrir una ventana con los registros utilizados en el
programa y correr paso a paso la simulacin. Adems aprender como realizar la conexin bsica del
microcontrolador para que funcione correctamente.
El programa funciona de la siguiente manera:
Al energizar el sistema, el led conectado en el pin RB0 encender por algunos milisegundos y despus se
apagar y durar el mismo tiempo apagado que encendido. Este ciclo se repetir indefinidamente. Al
presionar el pushbotton conectado al pin MCLR el microcontrolador se reinicia, es decir volver a comenzar
desde el principio.
Esta prctica se correlaciona con el Tema 2.1 de la Unidad 2.
Material y Equipo utilizado:
1 Microcontrolador PIC16F874
1 Cristal 4 Mhz
2 Capacitores de 22pf o 15pf
2 Leds
1 Resistencia de 10 Kohms
2 Resistencia de 220 ohms
1 Push Button
1 Fuente de +5 VDC (Opcional: 1 Pila Cuadrada de +9Vdc, 1 Reg. 7805)
------------------------------------1 Software de MPLAB
1 Grabador de Pics
Metodologa:
1- Utilice el software MPLAB para editar el programa intermitencia.asm que se muestra mas
adelante.
2- Enamble, Simule y entienda el funcionamiento del programa.
3- Grabe el archivo (.HEX obtenido al ensamblar) en el PIC
NOTA: En este primer ejemplo se utiliza la librera para el PIC 16F874 es necesario poner entonces
las siguientes directivas:
LIST P=PIC16F874
#include p16f874.inc
Pero si usted esta utilizando otro microcontrolador ejemplo el PIC 18F4455 entonces la librera
cambiaria as:
LIST P=PIC18F4455
#include p18f4455.inc
Si su programador no cuenta con la opcin de poner la palabra de configuracin , entonces es
necesario agregar la configuracin por software con la directiva (__config) de la siguiente forma:
LIST P=PIC16F874
#include p16f874.inc
__config _XT_OSC & _PWRTE_OFF & _WDT_OFF & _CP_OFF & _LVP_OFF & _WRT_ENABLE_OFF
20
CUENTA1
EQU
20H
CUENTA2
EQU
21H
F
w
EQU
EQU
ORG 00H
BSF STATUS,5
BCF TRISB,0
BCF STATUS,5
INICIO
BSF PORTB,0
1
0
21
CALL DELAY
BCF PORTB,0
CALL DELAY
GOTO INICIO
;=======================
;= DELAY: Subrutina de retardo
=
;= Modifica los siguientes registros: =
;= CUENTA1
=
;= CUENTA2
=
;=======================
;(Conviene hacerse un pequeo resumen de lo que
;hace cada subrutina, puede sernos muy til para
;usarla en otros programas)
;Subrurtina hecha con 2 lazos anidados
DELAY MOVLW
0ffH
MOVWF CUENTA1
ACA1 MOVLW 0FFH
MOVWF CUENTA2
ACA
DECFSZ CUENTA2,F
GOTO ACA
DECFSZ CUENTA1,F
GOTO ACA1
RETURN
;=
=
;= FIN DE LA SUBRUTINA DELAY =
;===========================
END
22
Diagrama de conexin:
OUT
+ 5Vdc
Pila
9 Vdc
IN
GND
U2
7805
+5vdc
13
14
sw1
22pf
Y1
4MHZ
C2
+5vdc
22pf
10
R2
D2
2
3
4
5
6
7
8
9
MCLR
OSC1
OSC2
RB7
RB6
RB5
RB4
RB3
RB2
RB1
RB0
RA0/AN0
RA1/AN1
RA2/AN2
RA3/AN3
RA4
RA5/AN4
RE0/AN5
RE1/AN6
RE2/AN7
RC0
RC1
RC2
RC3
RC4
RC5
RC6
RC7
RD7
RD6
RD5
RD4
RD3
RD2
RD1
RD0
40
39
38
37
36
35
34
33
R1
D1
220
LED
30
29
28
27
22
21
20
19
VSS
220
15
16
17
18
23
24
25
26
VDD
11,32
R1
10k
S1
C1
+5vdc
12,31
U1
PIC16F874
Sugerencias Didcticas:
1.- Por ser el primer programa se le sugiere al maestro de ensamblar y correr el programa de prueba junto con
el alumno en la sala de computo, e ir explicando los pasos requeridos en el MPLAB para editar un
programa, realizar un proyecto(projet), ensamblar(MPASM) y simular (MPLABSIM). Aproveche para
ensear al alumno el ambiente del MPLAB as como algunas opciones del MPLABSIM.
2.- Formar equipos de trabajo.
3.- Estimular al alumno al desarrollo de su pensamiento lgico y creativo.
4.- Propiciar la investigacin.
5.- Estimular la participacin en las prcticas.
Reporte del Alumno (Resultados):
1.- El diagrama de flujo.
2.- El diagrama de conexin.
3.- El programa fuente obtenido.
4.- Conclusiones del Equipo.
23
Bibliografa Preliminar:
[1] Microchip Technology Inc., PIC16F873/874/876/877 Data Sheet, 2003
[2] Microchip Technology Inc., PIC18F2455/2550/4455/4550 Data Sheet, 2009
[3] Tpicos del Help en el MPLAB(MPLAB-IDE, MPLAB- Editor, MPLAB-SIM)
[4] E. Martn Cuenca. Microcontroladores PIC. Diseo prctico de aplicaciones Ed. Mc. Graw Hill
[5] Apuntes del Maestro.
[6] http://www.microchip.com
24