Contenido Introducción. ¿Qué es un
PIC16F84?. Componentes del PIC16F84. Características del
PIC16F84 Diagrama del PIC16F84. Descripción de la
problemática. Pasos recomendables para el desarrollo de un
proyecto. Algunas Instrucciones. Ejemplo. Conclusión.
Contacto
Introducción A través de esta presentación
se explicarán los puntos mas relevantes sobre el lenguaje
ensamblador en PIC16F84. Los objetivos de ésta
presentación son: conocer y comprender las posibles
utilidades que se pueden lograr con el lenguaje sobre PIC16F84,
además de plantear una solución en torno a la
complejidad de este tipo de aplicaciones.
Para comenzar a interiorizarnos necesitamos saber,
¿Qué es un PIC16F84? Un PIC16F84 es un chip
microcontrolador. Este microcontrolador es un circuito
programable que contiene elementos necesarios para controlar un
sistema. PIC = Peripheral Interfaces Controller (Controlador de
Interfaz Periférico).
Los componentes mas importantes que posee el PIC16F84 son: –
Microprocesador. – Memoria RAM ( para guardar variables ) –
Memoria EEPROM ( para guardar el programa ) – Timer ( Contador de
8 bits )
Algunas características del PIC16F84: – 1 Kilobyte de
memoria EEPROM para el programa a desarrollar. – 68 bytes de
memoria RAM. – 64 bytes de memoria EEPROM para la
utilización de datos. – Hasta 35 instrucciones como
máximo. – Posee 18 pines de entrada/salida.
Diagrama del PIC16F84. Nos muestra como están organizados
los 18 pines de entrada y salida.
Descripción de la problemática. Según los
antecentes anteriormente entregados, sabemos que el lenguaje
ensamblador es un lenguaje complejo para ser utilizado, por ende
se requiere una estructuración para un desarrollo adecuado
del programa. Ahora bien, ¿Cómo se lleva a cabo
esto?
Pasos recomendables para el desarrollo de un proyecto:
Algunas Instrucciones del microchip:
Ejemplo: ;Programa para robot que consiste en seguir por la
derecha una línea blanca sobre un fondo negro ;Consta de
dos detectores, el izquierdo (entrada por ; RA0) sobre la
línea blanca su estado "normal" es 1 ;el detector derecho
(entrada por RA1) sobre el ;fondo negro, su estado "normal" es 0
;El motor izquierdo tiene salida por PortB0 ;El motor derecho
tiene salida por PortB1 ;—–COMIENZO DEL PROGRAMA—- List
p=16F84 ;Tipo de procesador include "P16F84.INC"
;Definición de registros ;internos org 0x00 ;Vector de
reset goto Inicio org 0x05 ;Salva el vector de
interrupción
Inicio clrf PORTB ;Borra los lacht de salida bsf STATUS,RP0
;Selecciona el banco 1 clrf TRISB ;puerta B salida movlw
b'000011111' movwf TRISA ;puerta A entrada bcf STATUS, RP0
;Selecciona el banco 0 bsf PORTB,0 ;conecta motor izquierdo bsf
PORTB,1 ;Conecta motor derecho Bucle1 clrwdt ;Refresca el wdt
btfss PORTA,0 ;¿Va el sensor izquierdo ;sobre la
línea blanca? Goto Bucle2 ;Si se ha salido de la
línea ir a ;Bucle2 bsf PORTB,0 ;Conecta el motor izquierdo
btfsc PORTA,1 ;RA1=0??, ¿detecta negro? ;(no detecta
blanco) goto Bucle3 ;No ha detectado negro bsf PORTB,1 ;Conecta
motor derecho
goto Bucle1 ;Detecta blanco y negro, ;conectados ambos motores
Bucle2 clrwdt ;Refresca el wdt bcf PORTB,0 ;desconecta (pone a
cero) ;el motor izquierdo goto Bucle1 ;Vuelve al bucle principal
Bucle3 clrwdt ;Refresca el wdt bcf PORTB,1 ;Desconecta (pone a
cero) ;el motor derecho goto Bucle1 ;Vuelve al bucle principal
Stop nop nop end
Conclusiones En conclusión podemos decir que a partir del
conocimiento del lenguaje ensamblador sobre PIC16F84 es posible
su utilización como base para la comprensión
posterior del lenguaje de PICs mas modernas, ocupando una
estructuración adecuada para el desarrollo del
programa.
Conclusiones Los microchips PIC todavía son vendidos en
algunas versiones para soporte de aplicaciones antiguas o grandes
trabajos. El PIC16F84 es considerado obsoleto a causa de la
evolución de los mismos. Podemos encontrar PICs mucho mas
rápidos que el tratado, sin embargo aun es considerado
debido a que su programación no difiere de los PICs mas
modernos.
Más Información y Referencias
http://members.fortunecity.es/electronico/tutoriales/tutopic16f84.html
http://www.unicrom.com/Tut_PICs3.asp
http://perso.wanadoo.es/pictob/ensamblador.htm#indice_de_contenidos