Microcontroladores
hmafiol13 de Octubre de 2013
957 Palabras (4 Páginas)247 Visitas
RESUMEN.
La practica realizada consite en el estudio practicoo experimentacion con algunos de los registros internos de PIC 16F84 necesaiospara la programacion de los puertos A y B como entrada y salida respectivamente, logrando esto con la utilizacion de instrucciones basicas de carga y de bit del lengujede programacion asembler.
INTRODUCCION.
El microcontrolador se comunica con el mundo exterior atravez de los puertos. Estos estan constituidos por lineas digitales de entrada/salida que trabajan entre 0 (nivel ligico 0) y 5V(nivel logico 1). Los puertos se pueden configurar como entradas para configurar datos o como salidas para goberna dispositivos externos.
El PIC16F84 tiene dos puertos:
El puerto A con 5 lineas, pines RA0 a RA4.
El puerto B con 8n lineas, pines RB0 a RB7.
Cada linea puede ser configrada como entrada o como salida, independientemente unas de otras según se programe.
Registros internos del PIC16F84 relacionados con la configuracion de los puertos.
PORTA: ubicado en la osiscion 05h del banco 0, es el registro buffer del puerto A de entrada/salida de 5 bits (pines RA4 a RA0). El puerto A puede leerse o escribirce como si se tratara de un registo cualquiera.
PORTB: ubicado en la posicion 06hdel banco 0, es el registro buffer del puerto B de entrada/salida de 8 bits (pines RB7 a RB0). El puerto B puede leerse o escribirce como si se tratara de un registo cualquiera.
TRISA: ubicado en la posiscion 85h del banco 1, es el registro de configuracion de las linea del puero A. un 0 e el bit correspondente al pin lo configura como salida, mientras que un 1 lo hace como entrada.
TRISB: ubicado en la posiscion 86h del banco 1, es el registro de configuracion de las linea del puero B. un 0 e el bit correspondente al pin lo configura como salida, mientras que un 1 lo hace como entrada.
Registro de trabajo w: es el registro principal y participa en la mayoria de las intrucciones. Se localiza dentro de la CPU del PIC16F84.
Registro de estado STATUS: ocupa la posiscion 03h del banco 0 o la 83h del banco 1. Los bits de este registro indican el estado de la ultima operación aritmetica o logica realizada, la causa de reset y los bits de selección de banco para la memoria de datos como el RP0 y el RP1 (Si RP0 = 0,se accede al banco 0 y si RP0 = 1, se accede al banco 1).
Estructura de un programa en asembler.
Igualdad
PORTA equ 05
Origen
ORG O
Normal
Inicio bsf STATUS,RP0
⋮
Final
END
Organización del codigo fuente
El código fuente está compuesto por una sucesión de líneas de programa. Cada línea de programa debe estar compuesta por cuatro campos o columnas separadas por uno o más espacios o tabulaciones. Estos campos son:
Etiquetas: Estas son expresiones alfanuméricas escogidas por el usuario, su principal función es identificar a una determinada instrucción del programa, asignando a esa etiqueta el valor de la dirección de memoria correspondiente a dicha instrucción.
Código de operación: Por lo general es la segunda columna, especifica la tarea a realizar por el microcontrolador. Suele ser una instrucción del microcontrolador que es directamente traducida al código de máquinas por el ensamblador. Ejemplo “sleep”.
Operandos: Suele ser la tercera columna. Contiene los operandos para el campo de instrucciones. Por ejemplo “movwf PORTB”, donde “PORTB” es el operando. Este campo puede tener uno o más operandos separados por comas. Dependiendo de la instrucción pueden ser números o etiquetas que representan constantes.
Comentarios: Es la última columna. Son elementos indispensables que ayudan al programador a documentar su programa, aclarar el
...